基于Dify平台的聊天助手智能体开发
构建应用
在 Dify 中,一个“应用”是指基于 GPT 等大语言模型构建的实际场景应用。通过创建应用,你可以将智能 AI 技术应用于特定的需求。它既包含了开发 AI 应用的工程范式,也包含了具体的交付物。简而言之,一个应用为开发者交付了:
- 封装友好的 API,可由后端或前端应用直接调用,通过 Token 鉴权
- 开箱即用、美观且托管的 WebApp,你可以 WebApp 的模板进行二次开发
- 一套包含提示词工程、上下文管理、日志分析和标注的易用界面
你可以任选其中之一或全部,来支撑你的 AI 应用开发。
应用类型Dify 中提供了五种应用类型:
- 聊天助手:基于 LLM 构建对话式交互的助手
- 文本生成应用:面向文本生成类任务的助手,例如撰写故事、文本分类、翻译等
- Agent:能够分解任务、推理思考、调用工具的对话式智能助手
- 对话流:适用于定义等复杂流程的多轮对话场景,具有记忆功能的应用编排方式
- 工作流:适用于自动化、批处理等单轮生成类任务的场景的应用编排方式
文本生成应用与聊天助手的区别见下表:
| 文本生成应用 | 聊天助手 | |
|---|---|---|
| WebApp 界面 | 表单+结果式 | 聊天式 |
| WebAPI 端点 | completion-messages | chat-messages |
| 交互方式 | 一问一答 | 多轮对话 |
| 流式结果返回 | 支持 | 支持 |
| 上下文保存 | 当次 | 持续 |
| 用户输入表单 | 支持 | 支持 |
| 知识库与插件 | 支持 | 支持 |
| AI 开场白 | 不支持 | 支持 |
| 情景举例 | 翻译、判断、索引 | 聊天 |
聊天助手
Copy page
对话型应用采用一问一答模式与用户持续对话。
适用场景对话型应用可以用在客户服务、在线教育、医疗保健、金融服务等领域。这些应用可以帮助组织提高工作效率、减少人工成本和提供更好的用户体验。
如何编排对话型应用的编排支持:对话前提示词,变量,上下文,开场白和下一步问题建议。下面以做一个 面试官 的应用为例来介绍编排对话型应用。
创建应用在首页点击 “创建应用” 按钮创建应用。填上应用名称,应用类型选择聊天助手。

编排应用创建应用后会自动跳转到应用概览页。点击左侧菜单 编排 来编排应用。

填写提示词: 提示词用于约束 AI 给出专业的回复,让回应更加精确。你可以借助内置的提示生成器,编写合适的提示词。提示词内支持插入表单变量,例如 {{input}}。提示词中的变量的值会替换成用户填写的值。示例:
- 输入提示指令,要求给出一段面试场景的提示词。
- 右侧内容框将自动生成提示词。
- 你可以在提示词内插入自定义变量。

为了更好的用户体验,可以加上对话开场白:你好,{{name}}。我是你的面试官,Bob。你准备好了吗?。点击页面底部的 “添加功能” 按钮,打开 “对话开场白” 的功能:

编辑开场白时,还可以添加数个开场问题:

添加上下文如果想要让 AI 的对话范围局限在知识库内,例如企业内的客服话术规范,可以在“上下文”内引用知识库。

添加文件上传部分多模态 LLM 已原生支持处理文件,例如 Claude 3.5 Sonnet 或 Gemini 1.5 Pro。你可以在 LLM 的官方网站了解文件上传能力的支持情况。选择具备读取文件的 LLM,开启 “文档” 功能。无需复杂配置即可让当前 Chatbot 具备文件识别能力。

调试在右侧填写用户输入项,输入内容进行调试。

若 LLM 给出的回答结果不理想,你可以调整提示词或切换不同底层模型进行效果对比。如需更进一步,同时查看不同模型对于同一个问题的回答情况,请参考多模型调试。
发布应用调试好应用后,点击右上角的 “发布” 按钮生成独立的 AI 应用。除了通过公开 URL 体验该应用,你也进行基于 APIs 的二次开发、嵌入至网站内等操作。详情请参考发布。如果想定制已发布的应用,可以 Fork 我们的开源的 WebApp 的模板。基于模板改成符合你的情景与风格需求的应用。
具体参见官方手册:Dify手册
更多推荐

所有评论(0)