30款热门AI模型一站整合DeepSeek/GLM/Qwen 随心用限时 5 折。 点击领海量免费额度在构建基于大语言模型的智能应用时我们常常希望AI能够自主完成复杂的任务流。然而现实情况是许多业务流程并非全自动其中某些关键决策或数据验证环节必须由人类专家来把关。Dify作为领先的LLM应用开发平台其工作流功能在1.15版本中对“人工介入”这一核心需求提供了强大且灵活的支持。本文将深入剖析Dify 1.15中人工介入的实现机制从概念到实战手把手教你如何在自动化流程中嵌入人工审批、数据修正等关键节点打造真正人机协同的智能应用。1. 理解Dify工作流中的人工介入在深入代码和配置之前我们首先要厘清“人工介入”在Dify工作流中的定位和价值。它远不止是一个简单的“暂停等待”功能。1.1 什么是人工介入节点人工介入节点是Dify工作流中的一个特殊功能节点。当流程执行到该节点时会自动暂停并生成一个任务等待指定的人员或角色进行处理如审批、填写信息、修正数据。处理完成后工作流才会携带处理结果继续向下执行。你可以将其理解为一个“决策门”或“质检站”。例如内容审核流程AI生成一篇营销文案后需由运营经理审核通过才能发布。数据补全流程AI从非结构化文本中提取了客户信息但电话号码格式可疑需由客服人工确认。复杂任务分发AI将用户的一个复杂请求拆解成多个子任务并分配给不同的人工执行者。1.2 为什么需要人工介入纯粹的全自动AI流程面临诸多挑战责任与合规性金融、医疗、法律等领域的决策必须有人类负责。AI的局限性大模型在事实准确性、复杂逻辑判断、创造性审美等方面仍可能出错。流程灵活性业务规则时常变化需要人类根据实际情况进行灵活调整。数据质量保障在数据入库或进入下一环节前进行人工校验确保数据质量。Dify的人工介入功能正是为了在发挥AI自动化效率优势的同时嵌入人类的判断力和责任感形成“AI处理常规人类专注关键”的高效协作模式。1.3 Dify 1.15 中人工介入的新特性相较于早期版本Dify 1.15 在人工介入方面进行了多项增强使其更适用于企业级场景更细粒度的任务分配可以按用户ID、邮箱或系统角色如admin,operator进行分配。丰富的表单组件支持文本输入、下拉选择、文件上传等多种交互方式方便人工填写结构化信息。任务通知与提醒集成邮件、钉钉、飞书等通知渠道确保任务被及时处理。任务历史与审计完整记录何人、何时、如何处理了任务满足审计要求。2. 环境准备与项目说明在开始实战前请确保你已拥有一个可用的Dify环境。我们将基于一个“AI生成技术文章草稿 - 人工审核 - 发布”的简化场景进行演示。2.1 环境要求Dify 版本1.15.0 或更高版本。本教程基于 1.15.x 版本编写核心概念适用于后续版本。部署方式云服务版或本地部署版均可。本地部署需确保网络通畅能正常访问Dify服务。浏览器推荐使用 Chrome 或 Edge 最新版。权限要求你需要拥有在Dify中创建应用和工作流的权限。2.2 场景与目标我们将构建一个工作流模拟技术博客运营场景触发用户输入一个技术主题如“Python装饰器”。AI生成调用LLM如GPT-4生成一篇技术文章草稿。人工介入生成的任务分配给“技术编辑”角色进行审核。编辑可以“通过”、“驳回”或“修改内容”。分支处理若“通过”工作流继续调用一个模拟的“发布API”。若“驳回”工作流结束并通知申请人。若“修改”编辑提交修改意见工作流将意见反馈给初始用户。结果返回将最终结果发布成功、被驳回或需修改返回给用户。3. 核心节点拆解人工介入配置详解人工介入节点的配置是核心。我们进入Dify工作流编辑器添加一个“人工介入”节点其配置面板包含以下几个关键部分3.1 基础信息配置节点标题如“技术文章审核”。用于在工作流中标识此节点。变量名用于在工作流上下文中引用此节点输出结果的变量名如review_result。3.2 任务分配配置这是决定“谁来做”的关键。# 配置逻辑示意非实际代码 分配方式 - 指定用户直接输入已在Dify系统中注册的用户邮箱。 - 指定角色选择系统预定义的角色如 admin。适合按岗位分工。 - 变量指定通过上一个节点输出的变量如 assignee_email来动态分配。最佳实践对于固定岗位的审核使用“指定角色”对于需要根据上下文如文章分类分配不同审核人的场景使用“变量指定”由前序的LLM节点或代码节点来判断并输出审核人信息。3.3 任务指令与表单设计这是决定“做什么”和“怎么做”的部分。任务指令清晰描述任务要求。例如“请审核以下AI生成的技术文章草稿检查其技术准确性、逻辑清晰度和语言流畅性。你可以选择通过、驳回或直接修改内容。”表单设计通过添加“输入项”来构建交互界面。单行文本用于填写标题、关键词等。多行文本用于填写详细的修改意见或直接重写内容。单选/下拉选择用于做出决策如“审核结果通过、驳回、需修改”。文件上传允许审核人上传参考文档或修改后的版本。一个典型的审核表单配置如下在Dify界面中操作添加一个“单选”项变量名设为decision选项为通过、驳回、修改。添加一个“多行文本”项变量名设为modification_feedback标题为“修改意见”并设置其“显示条件”为当decision等于修改时才显示。这实现了动态表单。3.4 输出变量映射人工处理完成后其填写表单的数据需要被工作流后续节点使用。系统会自动将表单中每个“输入项”的变量名及其值封装成一个对象赋值给该节点配置的变量名如review_result。后续节点可以通过{{review_result.decision}}、{{review_result.modification_feedback}}来引用具体的值。4. 完整实战构建文章审核与发布工作流现在我们将上述知识整合创建一个完整可运行的工作流。4.1 创建新应用与工作流登录Dify点击“创建新应用”选择“工作流”类型命名为“技术文章审核发布平台”。进入工作流画布你会看到默认的“开始”和“结束”节点。4.2 构建流程主干我们从左至右拖动节点进行构建。第一步添加“文本输入”节点用户请求在“开始”节点后添加“文本输入”节点。变量名设为user_query标题为“文章主题”。在节点的“预览”区域我们可以输入一个默认值用于测试如“请解释Python中的闭包概念”。第二步添加“LLM”节点生成草稿拖入一个“大语言模型”节点连接在上一步之后。选择你已配置好的模型如 GPT-4。在“提示词”区域编写如下内容你是一位资深技术博主。请根据用户提供的主题撰写一篇结构清晰、解释透彻的技术短文。 要求 1. 包含概述、核心概念、简单示例和总结。 2. 字数在500字左右。 3. 使用中文。 主题{{user_query}}将输出变量名设为draft_content。第三步添加“人工介入”节点核心审核拖入节点添加“人工介入”节点连接在LLM节点之后。基础配置节点标题设为“编辑审核”变量名设为review。任务分配在“分配方式”中根据你的实际情况选择。例如选择“指定用户”并填入你的Dify注册邮箱。这样任务就会出现在你的“待办”列表中。设计表单点击“添加输入项”选择“标题”变量名article_title标题为“文章标题”你可以将默认值设置为{{draft_content}}的前50个字符需用代码节点处理此处简化先手动填写。点击“添加输入项”选择“多行文本”变量名draft_display标题为“AI生成草稿”默认值设置为{{draft_content}}并勾选“只读”。这样审核人可以看到原文但无法直接修改。点击“添加输入项”选择“单选”变量名decision标题为“审核结论”选项为通过、驳回、需修改。点击“添加输入项”选择“多行文本”变量名feedback标题为“修改意见或驳回原因”。在“显示条件”中设置条件为当decision等于需修改或驳回时显示。任务指令在“指令”框中输入“请审阅AI生成的技术文章草稿从技术准确性、可读性、结构完整性三个方面进行评估并给出结论。”第四步添加“条件判断”节点流程分支拖入“条件判断”节点连接在“人工介入”节点之后。我们需要根据review.decision的值来分支。点击“添加条件分支”配置如下分支1条件设置为review.decision等于通过。分支2条件设置为review.decision等于驳回。分支3条件设置为review.decision等于需修改。注意Dify界面中你需要通过变量选择器选择review对象的decision字段。第五步添加各分支处理节点“通过”分支连接一个“HTTP请求”节点模拟发布。配置一个POST请求到模拟API如https://httpbin.org/post在Body中传入title和content。“驳回”分支连接一个“回复”节点。配置回复内容如很遗憾您的文章草稿被驳回。原因{{review.feedback}}。“需修改”分支连接一个“回复”节点。配置回复内容如您的文章需要修改。编辑意见{{review.feedback}}。请根据意见调整后重新提交。。第六步连接“结束”节点将“HTTP请求”节点、“驳回回复”节点、“需修改回复”节点的输出都连接到“结束”节点。Dify工作流支持多个输入连接到结束节点。完成后的工作流视觉上应类似开始 - 文本输入 - LLM - 人工介入 - 条件判断 - (三个分支分别处理) - 结束。4.3 运行与测试工作流点击画布右上角的“保存”按钮。点击“发布”按钮将工作流发布为一个可访问的应用。在应用详情页找到“对话”或“测试”窗口。在输入框输入主题如“讲解一下HTTP和HTTPS的区别”点击发送。关键步骤此时工作流会在“人工介入”节点暂停。你需要切换到Dify平台顶部的“待办”菜单或任务中心里面会出现一条待处理的任务。点击该任务你会看到我们设计的表单以及AI生成的草稿。尝试选择“需修改”并在反馈框中输入“请补充HTTPS握手过程的简要说明”。点击“提交”。工作流会自动继续执行走到“需修改”分支并将你的反馈返回给测试窗口。至此一个完整的人机协作流程就跑通了。你可以在“待办”中体验不同选择通过、驳回带来的不同流程路径。5. 常见问题与排查思路在实际使用人工介入功能时你可能会遇到以下典型问题。问题现象可能原因排查与解决思路工作流一直“运行中”不继续。1. 人工介入节点任务未被处理。2. 任务分配的用户未正确登录或不存在。3. 通知未送达处理人不知情。1. 检查“待办”列表是否有任务。2. 确认分配的用户邮箱/角色无误且该用户已登录Dify。3. 检查系统配置确保邮件或集成通知可用。后续节点无法读取review.decision的值。1. 变量名引用错误大小写、拼写。2. 在人工介入节点未正确设置输出变量名。3. 表单内单选项的变量名不是decision。1. 使用变量选择器点选避免手动输入错误。2. 检查人工介入节点的“变量名”设置。3. 检查表单内单选输入项的变量名配置。表单的“显示条件”不生效。1. 条件逻辑写错如和等于混用。2. 依赖的字段变量名错误。3. 条件中比较的值类型不匹配字符串与数字。1. 在Dify界面内使用条件构建器而非手动输入。2. 仔细核对依赖字段的变量名。3. 确保比较的值用引号包裹如果是字符串。任务分配给了角色但该角色成员没看到任务。1. 用户不属于该角色。2. 系统角色权限配置未包含处理工作流任务的权限。1. 在Dify后台“成员与权限”中检查用户角色分配。2. 检查该角色是否拥有对应应用或工作流的操作权限。人工介入节点配置时无法选择前序节点的变量作为默认值。1. 前序节点变量未正确输出。2. 在配置人工介入时前序节点可能因连接问题未执行。1. 先独立测试前序节点如LLM节点确保其能正常输出变量。2. 检查工作流连线是否正确确保数据流畅通。6. 最佳实践与工程化建议将人工介入节点用于生产环境时遵循以下实践能提升可靠性、安全性和用户体验。6.1 任务分配策略避免单点故障不要只指定一个用户。使用“角色”分配或将多个用户邮箱用分号隔开如果支持实现任务共享或轮询。动态分配对于更复杂的场景如根据文章技术领域分配不同专家可以在人工介入节点前添加一个“代码节点”或“工具调用”节点根据文章内容分析出领域如“前端”、“后端”、“算法”并输出对应的审核人角色或邮箱变量再传递给人工介入节点。6.2 表单设计与用户体验指令清晰在“任务指令”中明确审核标准、期望完成时间和注意事项。提供上下文利用“只读”文本框将前序流程的关键信息如用户原始需求、AI生成时的附加要求展示给处理人辅助其决策。结构化输入尽量使用单选、下拉、日期选择器等组件减少审核人的自由文本输入这既能降低其工作量也便于后续流程对结果进行自动化处理例如根据下拉选择的值走不同分支。6.3 超时与异常处理设置任务超时在人工介入节点的高级设置中如果版本支持配置任务超时时间如24小时。超时后可以触发一个预定义的默认操作如自动驳回、或转派给其他人防止流程无限期阻塞。设计备选流程在条件判断节点除了处理“通过”、“驳回”等还可以增加一个“默认”或“超时”分支用于处理未在预期内的决策值或超时情况保障流程的健壮性。6.4 安全与权限最小权限原则为处理任务的成员分配刚好够用的角色权限避免其看到或操作不相关的应用和数据。审计日志Dify会记录任务的处理人、时间和操作结果。定期审查这些日志可用于流程优化、权责划分和合规审计。敏感信息脱敏如果流程中涉及手机号、身份证号等敏感信息在展示给人工审核前考虑使用代码节点进行部分脱敏如显示为“138****1234”保护用户隐私。6.5 与外部系统集成人工介入的完成不仅可以驱动Dify内部的工作流还可以触发外部操作。通过HTTP请求节点在人工“通过”后可以调用公司的CMS发布接口、工单系统完结接口或消息推送服务。结合Webhook当任务被创建或完成时可以配置Webhook通知外部系统实现更广泛的业务集成。通过本文的详细拆解你应该已经掌握了在Dify 1.15工作流中设计和实施人工介入功能的完整方法。从简单的审批到复杂的动态表单和分支流程这个功能为构建可靠、可控、人机协同的AI应用提供了坚实的基础。接下来你可以在自己的业务场景中尝试设计更复杂的介入点例如多级审批、并行会签等充分发挥Dify工作流在自动化与人性化结合方面的强大潜力。 30款热门AI模型一站整合DeepSeek/GLM/Qwen 随心用限时 5 折。 点击领海量免费额度