本文档由 AI 自动翻译。如有任何不准确之处,请参考 英文原版。
新 Agent 目前处于 Beta 阶段。它在 Docker Compose 部署中默认启用,运行时也已随部署打包。生产环境使用前,将
DIFY_AGENT_SERVER_SECRET_KEY 和 DIFY_AGENT_API_TOKEN 替换为你自己的随机值。创建 Agent
在 Agents 页面点击 创建 > 创建空白应用,为 Agent 取名,也可选填角色(如「研究助理」)和描述。其余一切都在 配置 中完成。 若要用他人分享的 DSL 文件创建 Agent,改选 导入 DSL 文件 即可。DSL 文件不包含 Skill 和文件。创建和管理 Agent 需要「编辑」及以上角色。
配置能力
可逐项手动设置能力,也可进入 构建模式,通过对话描述需求来构建。 你在 配置 中设置的一切都会保存为 Agent 的能力,供之后的每个任务使用。另外,Agent 在自己的沙箱中工作,过程中随时运行命令、处理文件。 Agent 的能力只能在这里修改:即使终端用户要求已发布的 Agent 更改自己的提示词、Skill 或工具,它也不会照做。模型
选择 Agent 运行的对话模型。优先选推理能力强、原生支持工具调用的模型,因为 Agent 要自行判断何时行动、哪个工具合适、如何解读结果。Agent 表现好不好,很大程度取决于模型,尽量选较新的模型。旧模型可能用不好沙箱:常见的表现是 Agent 始终不去运行命令或安装工具,即使任务需要也不动手。
提示词
在提示词中设定 Agent 的角色和工作方式。具体说明它应如何推理、何时借助工具和知识,以及要避免什么。 以下几点值得写进去:- 角色与目标:Agent 以什么身份行动,要达成什么。
- 工作方法:处理典型任务时期望的步骤或顺序。
- 工具与文件的使用:点名说明各自何时使用。
- 输出:期望的格式、长度或语气。
-
在提示词中引用:输入
/引用,Agent 会在你指定的位置直接用上它。适合某个步骤依赖特定资源的场景。 - 只添加不引用:把它加到对应区域,何时使用由 Agent 自行决定。适合你更愿意相信 Agent 的判断、不想事事写死的场景。
Skill
Skill 是你为 Agent 打包的一套完整流程:把某项专门任务所需的指令、参考材料和脚本捆绑在一起,定义一次即可反复使用。 提示词设定的是 Agent 的整体角色,而 Skill 是它只在特定任务需要时才取用的作业指南,就像交给能干员工的一份 SOP。Agent 自带通用能力,Skill 则为这项工作提供你规定的确切步骤、材料和工具,让产出符合你的预期。 例如,一个marketing-copy Skill 可打包你的风格指南、品牌素材和检查清单,省得每次重新解释。
Skill 包只能是 .zip 或 .skill 文件,不超过 50 MB,且包内要有 SKILL.md。关于包格式和构建方法,参见 Agent Skills。你也可在 构建模式 中让 Agent 替你创建 Skill。
文件
文件是 Agent 工作时可查阅的参考文档,如规格说明、模板或指南。与 Skill 不同,文件只是供阅读的材料,不是可执行的流程。 文件适合少量需要 Agent 完整阅读、严格遵循的文档;要让它在大量资料中检索,应改为连接 知识库。 大小上限按文件类型区分,均为默认值,可在 环境变量 中调整:在这里添加的文件会保存为 Agent 能力的一部分;Agent 在沙箱中创建的文件则会在任务结束后清除。
工具
为 Agent 添加 Dify 工具,让它能在聊天之外采取行动:包括工作空间中的插件、自定义 API、工作流和 MCP 服务器。部分工具需先认证才能使用。知识检索
连接 Agent 工作时可搜索的 知识库。 检索只取回与查询相关的内容,因此适合远超 文件 容量的大量资料。知识库还是工作空间级资产:可供其他应用共用,也可与其数据来源保持同步。 为每个知识库设置查询方式:- Agent 决定:Agent 根据对话自行编写搜索查询。 适合问题多变、希望由它判断该查什么的场景,比如用户问什么就查什么的文档助手。
- 自定义查询:固定一条每次都执行的查询。 适合某个来源始终按同一方式搜索的场景,比如不管用户怎么问,退货助手都固定检索退货政策。
-
Rerank:用重排序模型按相关性重新排序,或用 权重设置 在语义与关键词匹配之间分配权重。
仅当所有已连接的知识库都采用高质量索引、共用同一个嵌入模型且均非外部知识库时,才会显示权重设置。只要其中一个为经济索引、外部知识库或使用不同的嵌入模型,该选项就不会出现。
- Top K:重排序后最多保留的结果数量。
- Score 阈值:结果入选所需的最低相似度。阈值越高越严格,越低覆盖越广。
高级设置
环境变量 是 Agent 运行时可读取的键值对,例如工具需要的端点或 API 密钥。 它们存放在 Agent 的沙箱中,因此你可借助它们把密钥交给命令行工具或 Skill,而不必写进提示词。将值标记为 Secret 可保持掩码显示;也可导入.env 文件,一次添加多个。
你也可在 构建模式 中让 Agent 代为设置。
通过对话构建
除了逐项手动设置,你也可通过描述 Agent 该做什么来构建它:对话过程中,它会自行配置好 Skill、文件和环境变量。 例如,你可以这样开场:放弃 只会还原配置。Agent 已在沙箱中执行的操作(如安装的程序)无法撤销。
构建笔记
工作过程中,Agent 会把配置内容记录在「构建笔记」里,即一个build_note.md 文件,在你首次点击 应用 后出现在 文件 中。
与 Agent 的工作文件不同,这份笔记会随配置一起保存。每次新对话开始时,Agent 都会重新读取笔记,将它与你的 提示词 组合成自己的指令。
应用之后,打开构建笔记,看看 Agent 记录了什么:
- 内容符合预期,就无需再动。
-
要修改笔记内容,可回到构建模式让 Agent 修订。
Agent 只维护自动生成的构建笔记:下载后再上传的副本只是普通文件,下次构建对话会另外生成一份新笔记。
- 有遗漏的话,补充到 提示词 中。
- 想让 Agent 从头重新记录,可在 文件 中删除这份笔记。
发布
编辑内容会自动保存为草稿。Agent 就绪后,发布即可让该版本上线。可随时打开版本历史,回看或恢复早期版本。恢复版本只会回滚 Agent 的配置。沙箱环境没有版本记录:安装的工具等环境更改会保持原样。
Agent 的 API 仅支持流式返回。只有工作空间所有者和管理员可开启或关闭 API 访问。