提示词
一、概念
提示词是一种自然语言指令,它为大语言模型(LLM)提供任务指导。
搭建智能体的第一步就是编写提示词,为智能体设定身份和目标。
智能体会根据大语言模型对人物设定和回复逻辑的理解,来响应用户问题。
因此提示词编写得越清晰明确,智能体的回复也会越符合预期。
二、功能特性
- AI 生成:你可以通过自然语言告诉 AI 你希望编写或优化的提示词,大语言模型会根据你的描述,自动生成提示词;你也可以根据调试结果,告诉 AI 提示词哪里不符合预期以及你的预期效果,大语言模型会自动帮你完成优化。
- 高效编写:支持 Jinja 和 Markdown 语法,以及编辑块和快速引用技能等功能,帮助你更高效地编写提示词,从而提高大模型的输出质量。
- 模版复用:扣子提供了各种业务场景的提示词模版,你可以直接使用这些模版,也可以将其修改为更适合自己业务的提示词。
- **资源管理:**你可以在资源库中创建提示词,供工作空间内的其他成员引用。通过更新和丰富提示词资源库,可以不断提高提示词的编写效率。
三、提示词类型
提示词包括系统提示词和用户提示词,两者区别如下:
- 系统提示词:在搭建智能体时,设置的人设与回复逻辑就是系统提示词,它是开发者为大语言模型设定的初始参数和行为准则,在整个会话中持续影响大模型的响应模式。通过编写系统提示词,可以为大模型设定特定的角色定位和回复逻辑。
- 用户提示词:在与智能体对话时,用户的输入就是用户提示词,它是用户直接向大语言模型提出的具体指令或问题,指导模型执行特定的任务或提供特定的信息。用户提示词的设置应简洁明了,以便模型能够准确捕捉用户的需求。
假设我们需要构建一个友好且专业的健康咨询助手,以下是设置系统提示词和用户提示词的示例:
- 系统提示词:你是一个友好且专业的健康咨询助手,专注于为用户提供基于科学和医学知识的健康建议。在回答用户的问题时,你的回答应该既专业又易于理解,同时保持语言的温和和鼓励性。请确保所有建议都是基于最新的健康指南,并避免提供具体的医疗诊断。
- 用户提示词:我最近总是感到疲劳,这可能是什么原因呢?。
注意:
提示词不支持多人协作。
提示词的所有者可以编辑和删除自己创建的提示词,工作空间所有者和管理员可以编辑和删除工作空间内其他成员创建的提示词,但工作空间内的普通成员没有此权限。
总结来说,作为普通成员,你出来对自己创建的提示词进行增删改查,别人的你只能复制,不能删除或者修改。
四、编写方式1—直接编写提示词
4.1 直接编写入口
你可以根据业务需要编写提示词,提示词编写得越清晰明确,智能体的回复也会越符合预期。
- 登录扣子开发平台。
- 在左侧导航栏中选择工作空间,并在页面顶部空间列表中选择目标工作空间。
- 在所选空间中,单击目标智能体或创建一个新智能体。
- 在人设与回复逻辑面板中编写提示词。

4.2 直接编写方法
1)编写建议
- 明确目标和任务:在编写提示词之前,首先要明确智能体或大模型节点的目标和任务,这涉及到对智能体预期行为的深入理解。
- **简洁而具体:**提示词应该简洁而具体,直接指向智能体或大模型节点需要执行的任务。
- **使用上下文:**在提示词中包含相关的上下文信息,可以帮助智能体或大模型节点更好地理解任务的背景和需求。
- 避免歧义:确保提示词中的语言清晰无歧义,模糊的指令可能导致智能体或大模型节点产生错误的理解,从而影响其性能。
- 反馈和迭代:编写提示词是一个迭代的过程,根据智能体或大模型节点的反馈不断调整和优化提示词,以提高其效果。
- 利用示例:提供示例输入和预期输出,可以帮助智能体或大模型节点学习如何正确响应。
- 考虑多样性:在编写提示词时,需要考虑不同用户的表达方式,智能体或大模型节点应该能够处理多种不同的输入方式。
- 测试和验证:在发布智能体或工作流之前,进行充分的测试和验证,以确保提示词在各种情况下都能正常工作,包括测试对异常输入的处理能力。
- 遵守伦理和法律标准:在编写提示词时,确保智能体或大模型节点的行为符合伦理和法律标准,包括保护用户隐私、避免歧视性语言和行为。
2)编写实例
以下是一个提示词示例,包含人物设定、功能和流程、约束与限制和回复格式。
| 内容模块 | 说明 | 示例 |
|---|---|---|
| 人物设定 | 描述所扮演的角色、职责和回复风格。 | ## 人设 你是一个新闻播报员,可以用非常生动的风格讲解科技新闻。 |
| 功能和流程 | 描述智能体的功能和工作流程,约定智能体在不同的场景下如何回答用户问题。 尽管智能体会根据提示内容自动选择工具。但仍建议通过自然语言强调在何种场景下、调用哪个工具来提升对智能体的约束力,选择更符合预期的工具以保证回复的准确性。 如果智能体设置了变量并开启了提示词访问,你也可以在人设与提示词中,指定变量的具体使用场景,例如称呼你的用户为{{name}}。 | ## 技能 当用户询问最新的科技新闻时,先调用“getToutiaoNews” 搜索最新科技新闻,再调用“LinkReaderPlugin”访问新闻地址,最终整理最重要的 3 条新闻回复用户。 |
| 约束与限制 | 如果你想限制回复范围,请直接告诉智能体什么应该回答、什么不应该回答。 | ## 限制 拒绝回答与新闻无关的话题;如果并没有搜索到新闻结果,请告诉用户你没有查到新闻,而不应该编造内容。 |
| 回复格式 | 你也可以为智能体提供回复格式的示例。智能体会模仿提供的回复格式回复用户。 | 请参考如下格式回复: **新闻标题** - 新闻摘要:30 个字左右的新闻摘要 - 新闻时间:yyyy-mm-dd |
3)提示词语法
扣子支持 Jinja 和 Markdown 语法编写提示词,通过使用模板和标记语言,你可以更灵活和高效的编写提示词。
在搭建智能体或配置工作流中的大模型节点时,首要步骤就是编写提示词,明确设定智能体和大模型节点的身份和目标。大语言模型会根据对提示词的理解,来响应用户问题。
4.3 编写建议
清晰明确的提示词可以有效提高大模型的输出质量,降低错误率,并满足特定场景的需求。建议你在编写提示词前,先了解提示词的编写技巧。
- 明确目标和任务:在编写提示词之前,首先要明确智能体或大模型节点的目标和任务,这涉及到对智能体预期行为的深入理解。
- **简洁而具体:**提示词应该简洁而具体,直接指向智能体或大模型节点需要执行的任务。
- **使用上下文:**在提示词中包含相关的上下文信息,可以帮助智能体或大模型节点更好地理解任务的背景和需求。
- 避免歧义:确保提示词中的语言清晰无歧义,模糊的指令可能导致智能体或大模型节点产生错误的理解,从而影响其性能。
- 反馈和迭代:编写提示词是一个迭代的过程,根据智能体或大模型节点的反馈不断调整和优化提示词,以提高其效果。
- 利用示例:提供示例输入和预期输出,可以帮助智能体或大模型节点学习如何正确响应。
- 考虑多样性:在编写提示词时,需要考虑不同用户的表达方式,智能体或大模型节点应该能够处理多种不同的输入方式。
- 测试和验证:在发布智能体或工作流之前,进行充分的测试和验证,以确保提示词在各种情况下都能正常工作,包括测试对异常输入的处理能力。
- 遵守伦理和法律标准:在编写提示词时,确保智能体或大模型节点的行为符合伦理和法律标准,包括保护用户隐私、避免歧视性语言和行为。
以下是一个提示词示例,包含人物设定、功能和流程、约束与限制和回复格式。
| 内容模块 | 说明 | 示例 |
|---|---|---|
| 人物设定 | 描述所扮演的角色、职责和回复风格。 | ## 人设 你是一个新闻播报员,可以用非常生动的风格讲解科技新闻。 |
| 功能和流程 | 描述智能体的功能和工作流程,约定智能体在不同的场景下如何回答用户问题。 尽管智能体会根据提示内容自动选择工具。但仍建议通过自然语言强调在何种场景下、调用哪个工具来提升对智能体的约束力,选择更符合预期的工具以保证回复的准确性。 如果智能体设置了变量并开启了提示词访问,你也可以在人设与提示词中,指定变量的具体使用场景,例如称呼你的用户为{{name}}。 | ## 技能 当用户询问最新的科技新闻时,先调用“getToutiaoNews” 搜索最新科技新闻,再调用“LinkReaderPlugin”访问新闻地址,最终整理最重要的 3 条新闻回复用户。 |
| 约束与限制 | 如果你想限制回复范围,请直接告诉智能体什么应该回答、什么不应该回答。 | ## 限制 拒绝回答与新闻无关的话题;如果并没有搜索到新闻结果,请告诉用户你没有查到新闻,而不应该编造内容。 |
| 回复格式 | 你也可以为智能体提供回复格式的示例。智能体会模仿提供的回复格式回复用户。 | 请参考如下格式回复: 新闻标题 – 新闻摘要:30 个字左右的新闻摘要 – 新闻时间:yyyy-mm-dd |
4.4 提示词语法
扣子支持 Jinja 和 Markdown 语法编写提示词,通过使用模板和标记语言,你可以更灵活和高效的编写提示词。
Jinja 是一种模板引擎,允许开发者使用简单的标记语言来插入动态内容到静态模板中。更多用法请参考 jinja 官网。
- 编写提示词:The question is {{question_variable}}. Please answer it carefully.
- 实际输入:假设question_variable为What is the capital of France?,则生成的 Prompt 为The question is What is the capital of France?. Please answer it carefully.
我们在开发过程中,Markdown语言更加容易编写和理解,所以接下来介绍Markdown语言。
1)Markdown语言
Markdown 是一种轻量级的标记语言,对于功能相对复杂的场景,推荐使用结构化格式来编写提示词,结构化提示使用 Markdown 语法,可读性更强、更便于迭代。
# 角色
你是一位资深且专业的数据分析专家,能够熟练运用 analyze 工具进行全面的数据处理与分析,以清晰易懂的方式向用户阐释数据特性及复杂的分析结果,无论是简单的数据还是复杂的数据集,都能高效应对。
## 技能
### 技能 1: 提取数据
1. 当用户提供一个数据源时,首先尝试使用 analyze 工具的 extract 数据功能进行提取。
2. 若数据源无法直接提取,判断是否需要使用特定编程语言写脚本提取数据。若需要,详细解释所使用的逻辑和方法,不能仅仅给出代码。
===回复示例===
数据源情况:<描述数据源的特点及问题>。提取方法:<说明使用的工具或编程语言以及具体的提取逻辑>。
===示例结束===
### 技能 2: 处理数据
1. 使用 analyze 工具的 data cleaning 功能进行数据清洗,包括妥善处理缺失值、异常值和重复值等。
2. 通过数据转换、数据规范化等方式对数据进行预处理,确保数据适合进一步的分析,并说明处理的理由和方法。
===回复示例===
数据问题:<列举数据中存在的问题>。处理方法:<说明具体的数据处理步骤和使用的工具或技术>。
===示例结束===
### 技能 3: 分析数据
1. 根据用户需求,使用 analyze 工具进行描述性统计分析、关联性分析或预测性分析等。
2. 通过数据可视化方法,如柱状图、散点图、箱线图等,辅助展示分析结果,并详细解释分析结果的含义,不能仅仅给出数字或图表。
===回复示例===
分析需求:<描述用户的分析需求>。分析结果:<展示分析结果的图表或数字,并详细解释其含义>。
===示例结束===
## 限制:
- 只讨论与数据分析有关的内容,拒绝回答与数据分析无关的话题。
- 所输出的内容必须按照给定的格式进行组织,不能偏离框架要求。
- 对于分析结果,需要详细解释其含义,不能仅仅给出数字或图表。
- 在使用特定编程语言提取数据时,必须解释所使用的逻辑和方法,不能仅仅给出代码。
4.5 其他编写能力
1)提示词编辑块
支持在编写提示词时添加编辑块,设置预设文本和空白引导,以便于团队成员引用提示词时可以根据提示文案,定制化修改提示词。

在页面右上角,单击新建提示库。

- 在提示词的编辑框中,输入提示词,并选中要添加编辑块的文本,也可以将光标定位在需插入编辑块的位置,然后单击编辑块图标。

设置空白引导和预设文本。
- 空白引导:必填,编辑块内容为空时的提示文案。
- 预设文本:非必填,提示词中实际显示的文本内容。

2)快捷插入技能
在提示词的编辑框中输入{},可以引用已经配置到智能体或工作流的技能,例如插件工具、工作流、图像流以及知识库,实现提示词的高效编写。
注意:在智能体或工作流大模型节点编写提示词时,支持通过输入{}来引用已经配置到智能体或工作流的技能,而在资源库中编写提示词时没有此功能。
- 预先在编排-技能插件中添加需要的插件;
- 在提示词的编辑框中,输入{}。
- 在弹出的的资源列表中,找到目标技能,然后单击添加。

添加成功后,技能会显示在提示词中。

五、编写方式2—使用提示词模版
扣子根据不同的业务场景提供了多套提示词模版,你可以直接使用模版,或参考模版编写提示词。
- 在人设与回复逻辑面板中,单击提示词库图标。

- 在推荐页签下,选择系统推荐的提示词模版,然后单击插入提示词。

单击插入提示词后,系统会将选择的提示词自动填充到提示词的编辑框中,你可以基于自己的业务场景修改提示词。修改提示词时,你需要重点关注提示词中的高亮部分。
-
添加文本:你可以根据高亮部分的文字引导,添加文本内容。
-
添加技能:如果提示词中引用了技能,你需要添加或替换为当前智能体或工作流中已经配置的技能,以确保技能可用。
六、编写方式3—引用提示词资源
提示词可以作为资源保存在资源库中,供工作空间内的其他成员引用。引用提示词资源前,请确保资源库中已经创建了提示词,跟上面直接编写提示词对应起来。



七、编写方式4—AI 生成提示词
你可以通过自然语言告诉 AI 你希望编写或优化的提示词,大语言模型会根据你的描述,自动生成提示词;
你也可以根据调试结果,告诉大语言模型提示词哪里不符合预期以及你的预期效果,大语言模型会自动帮你完成优化。
- 在人设与回复逻辑面板的右上角,单击优化。

- 输入你希望编写或优化的提示词,单击发送图标,AI 会根据你的描述自动生成提示词。

- 单击替换,AI 生成的提示词会自动填充到提示词编辑框中。
你也可以对 AI 生成的提示词执行以下操作:
- 退出:关闭 AI 生成的页面。
- 复制:复制 AI 生成的提示词。
- 重新生成:如果你对 AI 生成的提示词不满意或想要尝试不同的结果,可以单击重新生成图标,AI 会再次根据你的输入生成新提示词。
- 点赞:如果 AI 生成的提示词符合你的期望或对你有帮助,可以单击点赞图标,来给予正面反馈。
- 点踩:如果 AI 生成的提示词不满足你的需求,可以单击点踩图标,然后选择不满意的原因,帮助 AI 学习并改进未来的输出。

如果你的智能体已完成调试,你可以单击根据调试结果优化,然后输入哪里不符合预期以及你的预期效果,大语言模型会自动帮你完成优化。


八、调试提示词
- 提示词对比调试:输入两版提示词,对比大模型回复结果的差异。
- 模型对比调试:基于同一提示词,对比不同大模型或同模型不同配置下的回复结果差异。
1)使用限制
- 仅单 Agent (LLM 模式)支持提示词对比调试、模型对比调试功能。
- 在模型对比调试场景下,暂不支持配置模型参数中的携带上下文轮数参数。
2)提示词对比调试
提示词对比调试功能支持输入两版提示词,对比大模型回复效果的差异。
在智能体编排页面的人设与回复逻辑区域,单击提示词对比调试,即可进入对比调试页面。

开发者在默认提示词、对比提示词区域输入提示词或从提示词库中选择提示词后,再选择一个大模型进行对话。
3)模型对比调试
模型对比调试功能支持基于同一提示词,对比不同模型或同模型不同配置下的回复结果差异。
在智能体编排页面的模型选择框中,单击模型对比调试,即可进入对比调试页面。

