《LangChain 系列》Human-in-the-loop:什么时候必须让人工介入?
28 / 32 章
前面几章我们已经把 Agent、Tool、LangGraph 都讲完了。现在要补上最关键的一环:人工介入。 没有 HITL 的 Agent,很像没有刹车的自动驾驶。它能跑,也可能跑得很快,但真正上线会让人害怕。 企业里最危险的不是模型回答错
前面几章我们已经把 Agent、Tool、LangGraph 都讲完了。现在要补上最关键的一环:人工介入。
没有 HITL 的 Agent,很像没有刹车的自动驾驶。它能跑,也可能跑得很快,但真正上线会让人害怕。
企业里最危险的不是模型回答错一句话,而是模型真的去删数据、发邮件、改权限、执行 SQL、触发支付。
1. HITL 是什么?
Human-in-the-loop,直译是“人在环路中”。
放到 Agent 里,就是:模型想调用某个工具时,系统先暂停,把工具名、参数、风险展示给审批人。人做决定后,Agent 再继续。
HITL 不是让人替模型思考。HITL 是让人对高风险动作负责。 |
LangChain 的 HITL middleware 会在模型生成工具调用之后、工具真正执行之前介入。命中策略后,它会触发 interrupt,暂停执行,并等待 approve、edit、reject 或 respond 决策。
2. 哪些操作必须人工介入?
判断标准不用复杂:动作一旦执行,是否会改变真实世界。
只读查询通常可以自动。会产生副作用的动作,要分级。高风险副作用动作,必须人工审批。
金融、医疗、法务、客服、运维、权限系统,都是 HITL 的重点场景。模型可以给建议,但不能替组织承担责任。
3. 四种人工决策,不只是“同意/拒绝”
LangChain 的 HITL middleware 内置四种决策。它们对应四种执行结果。
approve:原样执行。适合低风险但仍需确认的动作。
edit:改参数后执行。适合收件人、路径、金额、SQL 条件需要人修正的动作。
reject:拒绝执行。适合危险动作、越权动作、信息不足的动作。
respond:人直接作为工具返回结果。适合 ask_user 这类“向用户询问”的工具。
不要用 respond 拒绝副作用工具。respond 会被模型理解成工具成功执行。拒绝删除、转账、发信,应使用 reject。 |
4. 源码级看 HITL:它拦在哪里?
关键位置只有一个:after_model。
模型先生成 AIMessage。AIMessage 里可能带 tool_calls。正常流程下一步会进入 ToolNode 执行工具。HITL middleware 在这中间插了一刀。
源码链路可以压缩成这样:
after_model 读取 state["messages"]。
从后往前找到最后一条 AIMessage。
检查这条 AIMessage 是否包含 tool_calls。
用 interrupt_on 判断哪些工具需要人工审批。
命中后构造 HITLRequest。里面有 action_requests 和 review_configs。
调用 interrupt(HITLRequest),图执行暂停。
人工审批后,用 Command(resume={decisions}) 恢复。
_process_decision 根据 approve/edit/reject/respond 改写 tool_calls 或追加 ToolMessage。
图继续执行。能执行的工具进入 ToolNode,被拒绝的工具不会继续。
5. HumanInTheLoopMiddleware 的核心逻辑
它不是一个 UI 组件。它是 Agent 执行环路里的一个中间件。
初始化时,你会给它一张策略表:哪个工具要拦,允许哪些决策,是否有条件拦截。
源码里最核心的字段是 interrupt_on。它按工具名配置。True 表示全部决策都允许;False 表示自动放行;配置对象可以指定 allowed_decisions、description、when。
策略表是 HITL 的灵魂。不要把所有工具都拦,也不要让危险工具裸奔。 |
after_model 的逻辑很直接:只要最后一条 AIMessage 带了工具调用,就逐个检查。需要审批的工具会被放进 action_requests;审批规则会被放进 review_configs。
这两个列表一起组成 HITLRequest。它不是给模型看的,而是给审批系统看的。审批系统需要知道:谁要执行什么、参数是什么、审批人能做哪些决定。
6. interrupt:暂停不是异常,而是可恢复中断
interrupt 是 LangGraph 提供的能力。它可以在图执行中间暂停,并把一个 JSON 可序列化的值暴露给调用方。
暂停之后,图状态会通过 persistence layer 保存。等人做完审批,再用 Command(resume=...) 恢复。
这里有三个硬规则:
必须配置 checkpointer。否则暂停后状态没地方保存。
必须传 thread_id。否则恢复时找不到同一个会话。
interrupt 的 payload 要简单可序列化。不要塞复杂对象。
官方文档也提醒:副作用动作如果发生在 interrupt 之前,必须保证幂等。否则恢复、重试、失败重放时,很容易重复执行。
7. Command(resume):人类决策怎么回到 Agent?
审批系统不是直接调用工具。审批系统只返回决策。
恢复时传入 Command(resume={"decisions": [...]})。LangGraph 会把这个 resume 值交回之前暂停的 interrupt 调用点。
然后 HumanInTheLoopMiddleware 继续往下跑:
approve:保留原 tool_call。
edit:构造新的 ToolCall,保留原 tool_call_id,替换工具名或参数。
reject:生成 status="error" 的 ToolMessage,把拒绝原因交给模型。
respond:生成 status="success" 的 ToolMessage,把人类回复当成工具结果。
本质上,人工决策最终会变成两类东西:新的 tool_calls,或者新的 ToolMessage。 |
8. 为什么说 HITL 必须工程化?
很多人以为 HITL 就是加一个弹窗:“是否执行?”
这不够。真正上线要有审批任务、权限体系、审计日志、超时策略、幂等控制、回调机制。
推荐落地方式:Java 主服务负责用户、权限、审批任务、审计日志;Python AI 服务负责 Agent、LangGraph、HITL middleware 和工具编排。
审批中心要展示人能看懂的内容。不要只展示 JSON。要展示动作说明、原始参数、风险提示、影响范围、发起人、traceId、历史上下文。
9. 上线检查表
HITL 的好坏,不看 Demo,看这张表。
特别强调幂等。
发邮件、扣款、改状态、删文件这类动作,都要有业务唯一键。审批恢复后再执行,不能因为网络重试导致重复执行。
10. 常见坑
还有一个隐藏坑:审批人不能只看模型总结。必须能看到原始工具名和原始参数。模型总结可以辅助理解,但不能成为唯一依据。
11. 总结
HITL 的价值不是降低自动化,而是让自动化进入可控范围。 |
Agent 的能力越强,越需要边界。
工具越多,越需要权限。
动作越危险,越需要人类确认。
LangChain 的 HumanInTheLoopMiddleware 给的是拦截机制。LangGraph 的 interrupt 给的是暂停和恢复能力。checkpointer 给的是状态安全。真正的企业落地,还要靠审批中心、审计日志、幂等设计和权限体系。
下一章进入 Middleware:LangChain 里最容易被忽视,却最接近企业级治理的一层。
相关推荐

DeepSeek完成逾70亿美元首轮融资:估值超500亿美元
据国外媒体报道,AI大模型独角兽DeepSeek(深度求索)日前以非常规交易架构顺利完成首轮逾70亿美元(约合500亿元人民币)融资,投后估值一举突破500亿美元大关。 本轮融资的一大创新在于,投资者资金并未直接注入DeepSeek公司本体,而是悉数进入由公司CEO梁文锋亲自管理的有限合伙企业。通过这种特殊的法律与治理结构,投资者在获得相应经济权益的同时,需

赋能开源系统安全,FreeBSD 启动 AI 辅助漏洞挖掘项目并获 25 万美元资助
FreeBSD 项目于近日正式宣布启动一项全新的“AI 辅助漏洞发现项目”,旨在通过前沿技术提升系统的安全性。该项目已经成功获得了由 Linux 基金会旗下 Alpha-Omega 项目提供的 25 万美元资金资助,为后续的研究开发提供了坚实的资金保障。 科技巨头联合注资支持 作为本次项目的资助方,Alpha-Omega 的资金来源背后阵容豪华,涵盖了微软、

阿里云QoderWork上线“意识”功能,实现AI自主记忆与技能进化
阿里云于6月16日正式为旗下桌面AI助理QoderWork上线全新的“意识”功能,集成记忆、反思与技能进化三大核心模块。这一升级标志着桌面级AI助理开始从单纯的对话工具向具备自主成长能力的智能体演进。该功能的核心在于,AI不仅能在保存对话的基础上主动整理和淘汰冗余信息,还能将用户的高频任务自动沉淀为可复用的技能,从而显著提升长期协同工作的效率。 在技术架构上

美管制 Anthropic 恰逢其时,“欧洲版 OpenAI”借势起飞主张摆脱美国依赖
美国政府近日宣布对 AI 巨头 Anthropic 旗下的安全前沿模型实施出口管制,此举直接导致该公司彻底暂停了相关模型的访问权限。然而,这一限制措施恰好印证了其竞争对手 Mistral AI 长期以来的预警,为其争取欧洲市场提供了强有力的论据。 出口管制暴露外部依赖风险 被誉为“欧洲版 OpenAI”的法国初创公司 Mistral AI,其首席执行官门施一

阿里发布Qwen-Robot系列具身大模型:三大模型协同攻克异构机器人适配痛点
6月16日,阿里巴巴正式发布千问具身智能大模型Qwen-Robot系列,该系列由VLA操作模型Qwen-RobotManip、VLN移动模型Qwen-RobotNav以及世界模型Qwen-RobotWorld三大核心矩阵组成。 这一战略动作标志着大厂在具身智能基础模型领域的布局进一步深化,实现了机器人操控、导航与物理规律推理的协同运转。 针对传统VLA模型换

斥资 36 亿美元,Salesforce 吞并 AI 客服平台 Fin
人工智能赛道又迎来了重量级并购。近日,企业服务巨头 Salesforce 正式宣布,将以36亿美元的价格收购 AI 客户服务平台 Fin 。此次收购不仅是 Salesforce 在智能服务领域的一次重大布局,也标志着其对进一步优化企业自动化能力的决心。 Fin 的前身为知名互动平台 Intercom,凭借其强大的 AI 智能体技术在行业内崭露头角。该平台能够
阅读补充
一句话看懂
前面几章我们已经把 Agent、Tool、LangGraph 都讲完了。现在要补上最关键的一环:人工介入。 没有 HIT
事件背景
这篇内容围绕“LangChain”展开,热闻岛基于公开信息整理事件背景、主要进展与可继续关注的方向。
事件时间线
发布
相关信息进入公开传播
更新
热闻岛对内容进行整理与补充。
看点
- · LangChain的最新进展是什么
- · 相关信息对用户或行业会带来哪些影响
- · 后续是否会有新的回应或处理结果
后续关注
- · 后续官方回应或权威通报
- · 相关主体的进一步说明
- · 事件对普通用户和平台传播的持续影响
免责声明:本文仅代表作者观点,不构成投资建议、法律建议、医疗建议。财经类内容尤其需要注意风险;爆料类信息请以权威通报为准。
评论 (0)
登录后即可发表评论
去登录