Dify application type
目前有五种:(聊天助手、Agent、文本生成应用、Chatflow、工作流)。在创建应用的时候,我们应该要怎么选择呢?
1. Chat 聊天助手
定位:基于大语言模型(LLM)的对话式交互助手,擅长处理多轮对话,支持记忆用户历史输入。
特点:
提供自然的对话体验,可主动引导对话(如设置开场白)。
适合需要持续交互的场景,但逻辑相对简单。
场景示例:
客服机器人:处理投诉、回答用户问题(如"帮我查最新订单状态")。
教育助手:辅导学生作业、解答知识点,如"解释一下牛顿第二定律"。
2. Agent
定位:具备任务分解、工具调用和推理能力的智能体,能处理复杂目标。
特点:
可调用外部工具(如API、数据库)完成多步骤任务。
适合需要逻辑推理和动态决策的场景。
场景示例:
订餐助手:分解用户需求(如“订一家附近评分4.5分以上的川菜馆”),调用地图API筛选餐厅,完成预订。
数据分析助手:根据用户指令,自动调用数据工具生成图表并总结结论。
3. 文本生成应用
定位:专注于生成结构化文本内容(如文章、邮件、代码)。
特点:
强调输出内容的格式化和可控性。
适合需要批量生成或定制化内容的场景。
场景示例:
营销文案生成:根据产品关键词自动生成多版本广告文案。
报告生成:输入数据后生成包含图表和分析的完整报告。
4. Chatflow
定位:面向复杂对话流程设计的对话式工作流,支持动态编排和记忆功能。
特点:
可设计多分支对话逻辑(如条件判断、循环)。
适合需要精细控制对话流程的场景。
场景示例:
医疗问诊助手:通过多轮提问逐步收集患者症状,最终给出初步建议。
智能导购:根据用户偏好动态推荐商品,并处理个性化需求。
5. 工作流(Workflow)
定位:非对话式自动化流程,用于处理批量任务或后台操作。
特点:
无用户交互,专注于数据处理、任务调度。
支持定时触发或API调用启动。
场景示例:
数据清洗:定时从数据库提取数据,清洗后生成报表。
招聘流程:简历解析→AI面试→用人部门评估→offer发放。
如何选择?
需要简单对话交互,无需复杂逻辑→ 选聊天助手
需结合工具完成多步骤任务→ 选Agent
仅需生成标准化内容→ 选文本生成
有明确步骤,需要分步骤引导用户→ 选Chatflow
涉及多系统/人工介入?→ 选工作流
举个栗子:
某银行信用卡部门需求:
在线办卡引导 → Chatflow (分步收集资料)
额度自动审批 → 智能体(调用征信系统)
电子协议生成 → 文本生成应用
后续客服咨询 → 聊天助手
异常处理流程 → 工作流(转人工审核)