首页 服务 博客 AI简讯 案例 关于 联系 EN

三大工程在 Coze 中的应用(上篇):提示词工程与上下文工程

2026-05-07 · 4 次阅读

三大工程在 Coze 中的应用(上篇):提示词工程与上下文工程

前言

在 AI 应用开发领域,有一个越来越被广泛讨论的框架——"三大工程":提示词工程(Prompt Engineering)、上下文工程(Context Engineering)和 Harness 工程(工具/技能编排)。这三个概念共同构成了构建高质量 AI 应用的方法论基础。

本文聚焦前两个。提示词工程解决的是"如何让模型理解任务",上下文工程解决的是"如何让模型记住该记住的"。

提示词工程:写好智能体的第一行代码

什么是提示词工程

在 Coze 中,搭建智能体的第一步就是编写提示词。提示词是开发者为 LLM 设定的初始参数和行为准则,在整个会话中持续影响模型的响应模式。

提示词编写得好坏,直接决定了智能体的能力上限。一个结构清晰、逻辑严谨的提示词,比一个随意写写的提示词,输出质量可能有数量级的差距。这就是提示词工程存在的意义——它不是简单的"写一段话",而是一套系统的方法论。

Coze 中的提示词体系

Coze 的提示词分为两个层次:

系统提示词:开发者在搭建智能体时设置的人设与回复逻辑。它在整个会话中持续生效,定义了智能体的身份、任务、回复风格和约束条件。

用户提示词:用户与智能体对话时的每一次输入。用户提示词的设置应简洁明了。

结构化提示词——比"写一段话"好得多

Coze 官方推荐使用结构化格式编写提示词,使用 Markdown 语法让提示词可读性更强、更便于迭代。一个标准的提示词结构包含四个模块:

# 角色
你是一位[身份],具备[能力描述]。

## 技能
### 技能 1:[技能名称]
1. [具体步骤]
2. [具体步骤]

### 技能 2:[技能名称]
1. [具体步骤]
2. [具体步骤]

## 限制
-[限制条件1]
-[限制条件2]

## 回复格式
请参考如下格式回复:
**标题**
- 摘要:
- 时间:

这是一个经过实践证明有效的结构。角色定义身份,技能描述流程,限制划定边界,格式约束输出。

提示词模板和资源复用

Coze 提供了完整的提示词管理生态:

提示词模板:系统根据不同业务场景提供了多套提示词模板。你可以直接使用,也可以在模板基础上修改。模板中的高亮部分提示你需要修改的内容,非常贴心。

提示词资源库:提示词可以作为资源保存在资源库中,供工作空间内的其他成员引用。这意味着团队可以构建自己的提示词资产库,沉淀好的提示词经验。

编辑块:这是 Coze 的一个特色功能。你可以在提示词中嵌入"编辑块",当其他人引用这个提示词时,可以在编辑块中输入自己的内容。这是一种类似"模板变量"的机制,让提示词的复用更加灵活。

AI 辅助优化

Coze 内置了 AI 优化提示词功能。你只需用自然语言描述你想要的效果,大模型就会自动生成结构化的提示词。调试后,你还可以"根据调试结果优化"——告诉 AI 哪里不符合预期,它会自动帮你调整。

背后的逻辑值得关注:提示词优化本身也是一个 AI 任务。你描述的"我想要更专业的语气"、"我希望它回答得更简洁"这类反馈,LLM 理解后会在提示词结构调整、措辞优化等方面做出相应调整。这形成了一个"写提示词 → 测试 → 反馈 → 自动优化"的闭环,大幅减少了人工调优的工作量。

提示词的 Jinja 语法

对于进阶用户,Coze 支持 Jinja 模板语法。这意味着你可以在提示词中使用变量、条件判断、循环等编程逻辑:

{% if include_hint %}
Here is a hint: {{hint_variable}}.
{% endif %}
The main question is {{question_variable}}.

这种动态提示词的能力非常强大。比如一个健康咨询智能体,可以根据用户输入的"关注疾病类型"动态调整回复的专业程度。

提示词对比调试

Coze 提供了一个很实用的调试工具——提示词对比调试。你可以输入两版不同的提示词,在相同的输入下直观对比大模型的回复差异。这对提示词的迭代优化非常有帮助。

同样还有模型对比调试——基于同一提示词,对比不同模型或同模型不同配置下的回复效果。

提示词编辑块与团队协作

Coze 的提示词编辑块功能允许多个开发者在同一个提示词中嵌入可编辑的占位区域。每个人引用提示词时,可以在编辑块中输入自己的内容,而不影响其他部分。这种"模板参数化"的能力让团队协作更加顺畅——主架构师确定提示词的整体结构和策略,团队成员只需要填写与自己业务相关的部分。

提示词还可以保存为资源库中的共享资产,工作空间内的所有成员都可以引用和复用。这意味着团队可以逐步积累自己的提示词库,形成"最佳实践沉淀 → 标准化复用 → 反馈优化"的正循环。

提示词编写的核心原则

综合 Coze 的实践经验和行业通用做法,编写高质量提示词的核心原则包括:

  1. 明确目标和任务:首先理清智能体要做什么
  2. 简洁而具体:指向具体的任务,避免泛泛而谈
  3. 使用上下文:包含相关的背景信息
  4. 避免歧义:模糊的指令会导致不可预期的输出
  5. 提供示例:示例输入和预期输出是引导模型最好的方式
  6. 迭代优化:一次写不对很正常,根据调试结果不断调整
  7. 测试验证:发布前充分测试边界情况

上下文工程:让智能体记住该记住的

为什么需要上下文工程

大语言模型的对话上下文窗口是有限的。虽然像 GPT-4 这样的模型已经有 128K 甚至更多的上下文窗口,但把对话历史、用户信息、业务数据全部塞进提示词是不现实的——既浪费 token,也会稀释模型的注意力。

上下文工程要解决的问题就是:如何在有限的上下文窗口中,让智能体获取最相关的信息。

Coze 的变量系统

变量是 Coze 上下文工程中最基础的能力。变量用来存储动态变化的信息,让智能体能够根据不同的情况灵活调整。

用户变量用于保存每个用户的个人信息——语言偏好、称呼、历史偏好等。以 Key-Value 形式存储,在用户会话之间持久化。最多可创建 30 个。

举个例子:翻译大师智能体定义一个用户变量 name,用户在首次使用时输入希望被称呼的昵称。之后每次对话,智能体都会用这个昵称来称呼用户。这就是一个典型的上下文工程应用——将用户信息从对话历史中提取出来,结构化存储,按需使用。

系统变量由 Coze 内置管理,涵盖了用户信息、飞书集成、音视频等场景:

  • sys_uuid:用户唯一标识
  • sys_longitude/sys_latitude:用户实时位置(需授权)
  • sys_lark_chat_id:飞书群 ID
  • sys_voiceprint_name:声纹识别名称

这些变量在特定渠道中自动填充,开发者只需要在合适的位置引用即可。

长期记忆(记忆库)

变量适合存储简单的、结构化的信息(如用户昵称、偏好设置)。但对于更复杂、更丰富的个性化信息,Coze 提供了记忆库功能,实现类似人类大脑的长期记忆。

记录机制:智能体会自动识别对话中的个性化信息并记录——包括用户画像信息(年龄、性别、喜好)和用户记忆点信息(关键事件)。使用"记录到长期记忆""别忘了"等关键词可以强制记录。

召回机制:有两种方式——在 Prompt 中直接召回(模型自动识别需要回忆的时机),或者通过工作流中的长期记忆检索节点精确召回。

数据隔离:每个用户的记忆数据通过 UID 和渠道 ID 组合编码,确保同一记忆库中不同用户的数据完全隔离。

不同套餐有不同的记忆容量限制:个人免费版 100 条,企业旗舰版可达 1000 万条。

环境变量

对于 AI 编程项目,Coze 提供了环境变量管理工具。环境变量用于存储 API 密钥、数据库密码、鉴权 Token 等敏感信息,将数据与代码分离,避免硬编码风险。

环境变量区分开发环境生产环境,数据完全隔离。开发阶段仅创建开发环境的变量,首次部署时同步到生产环境。

上下文工程的核心实践

结合 Coze 的能力,上下文工程的最佳实践可以总结为:

1. 分级存储

不同类型的信息应该使用不同的存储机制:

  • 临时对话上下文 → 大模型的自然上下文窗口
  • 用户偏好/个人信息 → 变量(Key-Value 持久化)
  • 丰富的个性化记忆 → 记忆库(长期记忆)
  • API Key/密码等敏感信息 → 环境变量

2. 按需召回

不是所有信息都需要在每一轮对话中传递给模型。应该遵循"按需召回"原则:

  • 变量的值应该只在需要时才在提示词中引用
  • 长期记忆应该在模型判断需要回忆时才召回(Prompt 模式),或者精确触发(工作流模式)
  • 知识库应该配置合适的搜索策略和召回数量,默认 5 条,如果场景复杂可以调整到 8-10 条

3. 查询改写

在多轮对话中,用户的 Query 往往依赖于上下文。开启查询改写功能后,系统会自动根据对话历史优化用户的 Query,提升检索效果。比如用户上一轮问"知识库检索节点怎么用",这一轮只说了"怎么用",查询改写会将其补全为"知识库检索节点怎么用?"

记忆与知识的界限

在实际开发中,一个常见的困惑是"什么数据放知识库,什么数据放记忆"。判断标准其实很简单:

知识库用于"产品/业务本身的静态信息",所有用户共享,由开发者维护,用户不可修改。例如产品手册、法律条文、常见问题。

记忆用于"用户相关的动态信息",每个用户独立,由用户在使用过程中产生,用户可查看和修改。例如用户昵称、消费偏好、对话历史。

以租房平台为例——房屋信息和周边小区数据放在知识库(所有用户共享),用户个人偏好(喜欢的户型、预算范围)放在记忆(用户独有)。

变量 vs 长期记忆

变量适合存储简单的键值对(如用户昵称、语言偏好),最多 30 个。长期记忆则更像人类的大脑,可以记录复杂丰富的个性化信息(如"用户小王上周提到他喜欢跑步")。

选择建议:如果需要精确控制数据的存取,用变量;如果需要智能体自动发现和记录个性化信息,用长期记忆。

环境变量的安全实践

在 AI 编程项目中,环境变量的安全使用至关重要。Coze 的环境变量区分开发环境和生产环境,从根本上杜绝了因开发调试导致的安全事故。一些关键实践:

  • 敏感信息绝不硬编码:API Key、数据库密码、Token 全部通过环境变量注入
  • 最小权限原则:每个环境变量只给最小的必要权限,不需要访问的变量不要配置
  • 定期轮换:生产环境中的密钥应定期轮换,Coze 的部署页面支持热更新环境变量

提示词工程与上下文工程的关系

两个工程相辅相成:

提示词工程解决的是"能力"问题——智能体知道要做什么、怎么做。 上下文工程解决的是"信息"问题——智能体知道要参考什么数据、记住什么信息。

如果把智能体比作一个员工,提示词工程决定了这个员工的岗位职责和工作流程,上下文工程决定了它的知识库和记事本。两者缺一不可。

在 Coze 上搭建高质量的智能体,本质就是做好这两件事:写好提示词,配好上下文。

下一篇我们将聚焦三大工程中的最后一块——Harness 工程,探讨如何通过工具、技能和工作流的编排,将 AI 的能力约束和释放到最佳状态。

#Coze
← 返回博客
💬 免费咨询