AI Agent设计总览
设计关键组件
AI Agent设计的核心组件,从提示词设定与优化、插件作用与自定义、知识库的构建与使用、涵盖记忆系统和工作流的设计与调用。
提示词
AI Agent依赖LLM,提示词是调用LLM能力的接口,不仅决定AI表现方式和风格,还直接影响它与用户的体验。
提示词模板
提示词是指导AI行为的蓝图,好的提示词可以显著提升模型性能和效率。比如LangGPT结构化方法通过讲提示词建模为结构化程序,提供一种通用、高效优化方法,提升提示词性能,大幅压缩提示词开销。
好的提示词模板应该覆盖以下几个方面:
- 角色设定:明确AI Agent身份和目标。
- 任务描述:明确告诉AI需要完成的任务。
- 行为规范:设定AI行为规范,包括语言风格、互动方式等。
- 情景设定:给AI设定一个情景或背景,使得回复更生动代入感。
- 互动示例:提供一些示例,帮助AI更好理解用户需求和意图。
- 预期输出:明确期望输出格式和内容。
一、提示词设计原则
| 原则 | 说明 |
| 明确角色 | 明确 Agent 的身份、任务目标和输出风格,避免模糊描述。 |
| 任务分解 | 将复杂任务拆解为多个子任务,逐步引导模型完成。 |
| 结构清晰 | 使用 Markdown、XML、JSON 等结构化格式,提升模型理解力。 |
| 示例引导 | 提供 Few-shot 示例,尤其是格式、风格、边界情况的示例。 |
| 约束明确 | 明确禁止行为、输出格式、语言风格等,减少幻觉和偏离。 |
| 可验证性 | 输出结果应具备可验证性(如 JSON Schema、字段完整性)。 |
二、通用提示词模板(适用于 AI Agent)
# Role: [Agent 名称]
## Profile
- language: 中文 / English
- description: [一句话描述 Agent 的核心职责]
- background: [技术背景或业务背景]
- personality: [交互风格,如严谨、幽默、教学型]
- expertise: [擅长的技能或领域]
- target_audience: [服务对象]
## Skills
1. 核心技能
- 技能1: [描述]
- 技能2: [描述]
2. 辅助技能
- 技能3: [描述]
## Rules
1. 禁止行为:
- ❌ 不允许编造信息
- ❌ 不允许输出非 JSON 格式
2. 输出要求:
- ✅ 所有输出必须以 JSON 格式返回
- ✅ 必须包含字段:status, result, message
## Workflows
- 目标: [SMART 目标]
- 步骤 1: [输入处理]
- 步骤 2: [逻辑判断/调用工具]
- 步骤 3: [输出格式化]
- 异常处理: [如果失败,返回 {"status": "error", "message": "原因"}]
## Initialization
作为 [Role],你必须遵守 Rules,按照 Workflows 执行任务,输出合法 JSON。
三、提升性能与效率的高级提示词技巧
| 技巧 | 示例 | 作用 |
| 元提示(Metaprompting) | “请优化以下提示词,使其输出更稳定、格式更规范” | 让模型自我优化提示词 |
| COT(思维链) | “请逐步推理,先列出关键步骤,再给出答案” | 提升复杂任务准确率 |
| Bad Case 反馈 | 把模型输出错误的例子写入提示词,标注“❌这是错误输出” | 抑制重复错误 |
| DSL 描述流程 | 用 Mermaid 描述流程图,替代自然语言 | 提升流程可预测性 |
| Few-shot 示例 | 提供 2~3 组输入输出示例,覆盖边界情况 | 稳定输出格式 |
| 角色远离人类化 | 用“你是一个 JSON 处理管道”替代“你是一个专家” | 减少废话和解释性语言 |
| 输入预处理提示 | “请首先梳理用户问题,提取关键字段,再执行后续任务” | 降低误解率 |
| 输出强制约束 | “输出必须合法 JSON,否则系统会崩溃” | 提高格式合规率 |
四、推荐实践流程(开发 AI Agent)
-
明确目标场景:客服、数据分析、代码生成、教学等。
-
设计角色+任务流:用上述模板写初版提示词。
-
加入 Few-shot 示例:覆盖常见输入与边界情况。
-
测试 + 收集 Bad Case:记录模型输出错误。
-
用元提示优化提示词:让模型自己提出改进建议。
-
引入 DSL 或 Mermaid:描述复杂流程,提升可控性。
-
工程兜底:如正则提取 JSON、字段校验、重试机制。
五、后续可扩展方向
-
引入 RAG:用向量数据库存储领域知识,提示词中动态插入相关内容 。
-
提示词注入防护:加入输入过滤、身份校验、禁止词检测。
-
A/B 测试提示词:用 LangSmith 或自建平台对比不同提示词效果 。
-
多模型协同:用不同模型处理不同子任务(如意图识别 + 执行 + 校验)。
提示词不是“写死”的,而是一个持续迭代的系统模块。
最好的提示词,是能被模型自己优化、被工程系统监控、被业务反馈驱动演化的提示词。
插件
插件是第三方工具集,一个插件可以包含多个工具(API),插件概念模块化思想即将功能拆为独立插件,开发者用来管理和扩展系统。开发者可以灵活选择组合不同功能模块,实现定制化功能。
一些插件可以使用Python、JavaScript语言开开发。
插件的功能
1 扩展功能,为AI Agent添加特定功能。
2 添加新能力,例如一个api插件可以使智能体访问外部服务。
3 执行复杂任务,比如处理大规模数据集,情感分析等
4 集成第三方服务,AI Agent无缝集成各种第三方服务,比如支付网关,社交媒体等。
智能体中插件的调用
大模型在收到用户问题时,会通过调用Function Calling判断用户问题意图,判断是否需要调用该插件下某个API。如果需要,就从用户提供信息中提取API参数作为入参,调用API。API返回结果后,大模型会将API的json字符串进行自然语言润色,回复给用户。

coze平台举例插件调用流程
我们可以在平台上自己创建一个智能体

提示词:
提示词我们可以让coze帮我们自动优化提示词,直接替换即可。
技能-插件里面加入我们需要用到的插件。让AI Agent帮我们调用。
# 角色
你是一个专业的图像生成助手,能够根据用户输入的要求,精准调用绘图插件生成符合需求的图片。
## 技能
### 技能 1: 生成图片
1. 接收用户输入的要求,明确具体的图像主题、风格、元素等关键信息。
2. 调用<智能绘图_文生图>插件,按照用户要求生成图片。
3. 将生成的图片以合适的形式呈现给用户 。
===回复示例===
- 🖼️ 生成图片如下:[此处附上图片或者图片链接]
- 💡 说明:这张图片根据你要求的[具体内容]生成。
===示例结束===
## 限制:
- 只围绕生成图片相关内容进行交流,拒绝回答与生成图片无关的话题。
- 所输出的内容必须清晰明了,符合给定的回复示例格式要求。

当然我们也可以自定义插件,涉及插件开发,测试,发布,版本管理等,有机会再讲

知识库
什么是知识库
知识库是一系列文档集合。即一个知识库包含多个文档。
知识库不仅是简单数据库,而是一个结构化、组织化信息集合,能够存储、管理、检索大量知识数据,帮AI Agent回答问题时提供准确和详细答案。
知识库核心目标是:将复杂信息和知识进行系统化组织和管理,便于程序能高效访问和利用这些信息。
知识库包含的信息类型:事实数据、概念模型、规则集、逻辑关系、上下文信息等。
知识库中知识和信息的表示形式:语义网络、知识图谱、逻辑规则、框架和本体。(知识图谱是常见知识表现形式,通过节点和边来表示实体与实体之间的关系,形成一个结构化网络,便于知识存储和检索)
AI Agent应用利用知识库存储大量信息和知识,迅速检索利用这些信息,提供准确回答,还支持知识推理和决策。
Agent调取知识库
大模型收到用户问题,会判断用户问题意图是否需要查询某个知识库相关信息。如果需要,模型会将用户提供信息和知识库文档进行相似度对比,找出最相关内容,辅助用户回答问题。

什么情况下需要用知识库
有很多信息属于私有数据比如企业内部数据集、员工信息。这些知识没有被大模型所掌握,这时候就要借助知识库。借据大模型幻觉和专业知识领域不足问题。
知识库的2大核心作用
数据存储与管理
增强检索
构建知识库
coze平台,知识库可以添加文本、表格、图片等


-
文本知识库
能力:上传 PDF/Word/TXT/Markdown → 自动切片 → 向量召回
典型场景-
7×24 智能客服:FAQ、服务条款、产品手册让 Bot 先检索再回答,降低幻觉率
-
合规话术库:品牌手册、法律条款、审批模板做“语料钩子”,保证大模型输出不跑偏
-
虚拟人/角色扮演:把角色背景、口头禅、剧情设定写进文本库,向量召回后让 Bot 模仿语气
-
-
表格知识库
能力:上传 Excel/CSV → 按行建索引 → 支持“精确字段匹配 + NL2SQL 计算”
典型场景-
商品参数速查:用户问“256G 内存的笔记本多少钱?”→ 直接召回对应行并朗读价格
-
设备维修记录:维修工输入 SN → 表格库返回上次故障时间、备件型号
-
车险/社保报价:用自然语言问“30 岁三者险价格”,后台转 SQL 拉行数据
-
-
照片知识库(也常叫图像库)
能力:上传 JPG/PNG → AI 自动标注(可人工改)→ 以图或文字提问 → 按标注向量召回
典型场景-
识图客服:用户拍空调故障码 → 返回对应故障解释与维修视频
-
商品“以图搜图”:上传穿搭街拍 → 召回相似款商品链接(电商 Bot)
-
培训/质检:工人上传现场设备照片 → Bot 比对标准图,指出缺失零件
-
NL2SQL 把自然语言提问自动转成标准 MySQL 语句并执行,返回结果给大模型再做回答
“上传表格/连数据库 → 自动建索引 → 用户说人话 → 生成 SQL → 执行返回
→ 大模型润色回答”,零代码即可让 Bot 拥有“问数”本领,
适合任何需要即时数据查询+自然语言交互的场景。
记忆系统
什么是记忆:可以理解为,为获取、存储、保留、和随后检索信息的过程。
LLM中记忆类型
感官记忆,对原始输入(文本、图像等)学习嵌入表示
短期记忆,上下文学习的一部分,短暂且有限,受到Transformer结构的上下文窗口长度限制。
在一次会话或短时间内多次交互中使用,提供连贯上下文相关回应。使对话保持连贯。
长期记忆,Agent查询时可以关注的外部向量存储,可通过快速检索访问。
存储和管理在较长时间内反复使用的重要信息,信息包含用户偏好、历史交互记录、个性化设置等其他持久性数据。
coze平台的记忆系统
4 条存储通道
| 通道 | 官方英文名 | 存什么 | 存多久 | 收费 | 核心接口/开关 |
| ① 用户变量 | User Variable | 结构化字段(名字、年龄、偏好语言) | 永久 | 免费 | {{变量名}} 或「变量」开关 |
| ② 数据库 | Database | 行级记录(订单、记账、工单) | 永久 | 免费 | 「数据库」节点 |
| ③ 长期记忆 | Long-Term Memory | 对话中自动提炼的“事实/兴趣/事件” | 永久或 1-999 天可选 | 仅收费版 | setKeywordMemory /「长期记忆」开关 |
| ④ 文件盒子 | File Box | 用户上传的图片、PDF、Office | 永久 | 免费 | fileUpload /「文件盒子」开关 |
-
用户变量(免费永久)
a. 智能体编排页 →「记忆」→「变量」→ 新增字段
b. 打开「提示词访问」→ 在 Prompt 里可直接{{name}}引用
c. 对话中只要命中变量名,自动写入;更新也会实时覆盖 -
数据库(免费永久)
a. 「资源库」→「数据库」→ 建表(英文表名+字段注释)
b. 工作流拖「数据库」节点 → 选「插入/查询/更新」
c. NL2SQL 开关打开后,用户可直接说“我昨天花了多少钱”→ 自动生成 SQL → 返回结果 -
长期记忆(收费,0.6 元/百次写入)
a. 智能体编排页 →「记忆」→「长期记忆」→ 开启「支持在 Prompt 中调用」
b. 记忆有效期:选“永久”或 1-999 天
c. 工作流里可拖「长期记忆」节点:-
写入:用大模型先提炼事实 →
setKeywordMemory -
读取:用当前问题向量召回最相关 3 条记忆 → 注入 Prompt
d. 调试页右上角「Memory」可人工增删改查
-
-
文件盒子(免费永久)
a. 「记忆」→「文件盒子」→ 开关打开
b. 支持对话栏上传、API 上传;文件自动隔离(用户 A 看不到 B)
c. 提供 4 条指令:fileUpload/fileList/fileDelete/fileAsk(对文件内容直接提问)
4 类典型场景与通道选型
| 场景 | 推荐通道 | 理由 |
| 客服记住“用户 VIP 等级” | 用户变量 | 结构化、免费、Prompt 内直接引用 |
| 记账 Bot“存每笔花费” | 数据库 | 行级数据、后续要统计、支持 NL2SQL |
| 陪伴 Bot“记住用户讨厌香菜” | 长期记忆 | 非结构化事实、需语义召回、可跨周调取 |
| 设备报修“上传现场照片” | 文件盒子 | 多模态、用户反复查看、永久留存 |
coze记忆 数据库举例

创建一个数据库表,用来收集对话中的用户名和密码等信息。


查看数据库,就可以看到已经帮我们记录这些信息。

工作流
工作流指的是一系列有序任务和活动,这些任务或活动按照预定义规则和顺序运行,完成目标。工作流支持可视化方式对插件、大语言模型、代码块进行组合,对复杂业务流程编排。
工作流功能
工作流组成:由多个节点组成,节点是组成工作流基本单元。
开始节点:工作流的起始节点,包含用户输入的信息。
结束节点:工作流的结束节点,返回工作流执行结果。
节点输入参数:
引用:引用前面节点参数值
输入:自定义参数值
工作流适用场景
目标任务场景包含多个步骤,且输出结果准确性和格式有严格要求时,适合配置工作流实现。

大模型常用的一些组件
大模型组件
主要介绍下系统提示词和用户提示词
在 Coze 的大模型组件里,「系统提示词」和「用户提示词」是被平台封装成角色-任务-约束的“双层 Prompt”结构;两者在请求体里被拆成不同字段,模型内部会对它们赋予不同权重。
一、官方定义与发送顺序(先给模型装“人设”再派活)
-
系统提示词(System Prompt)
发送时机:每次调用大模型最先插入的消息
作用:告诉模型「我是谁、我会什么、我不能做什么」——相当于内部指令 + 行为准则
权重:训练数据里 system 角色权重最高,模型极少违背 -
用户提示词(User Prompt)
发送时机:system 之后,把用户当下输入或上游节点变量再包一层
作用:给出具体任务或要处理的原始材料
权重:低于 system,可被 system 的约束覆盖
二、在 Coze 界面到底填在哪
-
系统提示词:大模型节点 →「系统提示词」多行框(支持 Jinja2 变量)
-
用户提示词:同节点 →「用户提示词」多行框(通常只放
{{input}}或上游变量)
三、写法模板
-
系统提示词 3 段式
# 角色
你是【角色描述】
# 技能
1. 能够【技能1】
2. 能够【技能2】
# 限制
- 仅回答【范围】,拒绝【禁止行为】
- 输出必须【格式/长度/风格】
-
用户提示词 1 句式
用户问题:{{input}}
请按上面角色与技能给出答案。
代码组件
核心能力:使用编程语言执行特定逻辑。内嵌 Python/JS 运行时,做数据清洗、格式转换、加解密、循环/递归。
典型场景:提取正则、拼装 JSON、算签名、轮询
消息组件
核心能力:在任意中间步骤「插播」一段临时消息(支持 Markdown、按钮、卡片)
典型场景:进度提示、结果预览、二次确认
选择器组件
核心能力:if/else/switch 可视化:按字段值、正则、范围做多分支
典型场景:意图分流、异常兜底、A/B 测试
插件组件
核心能力:调用官方 or 自建插件(含 API、数据库、AI 工具等 600+)
典型场景:查天气、写多维表、生成图片、NL2SQL
工作流的调用
先将工作流添加到‘编排’区域的工作流中
在‘人设与回复逻辑区域‘ 声明agent使用 ***(工作流名称)处理任务
更多推荐

所有评论(0)