Human‑in‑the‑Loop
什么是HitL人机在环大模型执行过程中暂停交给人类输入反馈再继续执行。两种常见 HITL 模式工具调用前请求人类审批是否允许调用工具Agent 思考一半需要人类补充信息 / 修正答案再继续工具调用前请求人类审批from typing import Optional class HumanInTheLoopAgent: def __init__(self): self.task_history [] def llm_simulate(self, prompt: str) - str: 模拟大模型输出 print(f\n [模拟大模型思考] 输入{prompt}) if 分析用户报告 in prompt: return 需要调用数据库查询用户数据需要人类审批是否执行该操作。 elif 拿到人类审批 in prompt: return ✅ 已获得人类许可开始执行查询报告已生成完成。 else: return f大模型回复基于输入[{prompt}]完成处理 def human_input(self, hint: str) - str: HITL 交互暂停等待人类输入 print(\n *60) print(f【人类介入 Human‑in‑the‑Loop】{hint}) user_input input( 请你的输入(人类反馈): ) print(*60) return user_input def run(self, user_query: str): print(f\n Agent启动用户请求{user_query} ) self.task_history.append({role:user,content:user_query}) # Step1第一轮大模型推理 resp1 self.llm_simulate(user_query) print(f Agent输出{resp1}) self.task_history.append({role:agent,content:resp1}) # 判断是否需要人机介入 if 需要人类审批 in resp1: # HITL 触发暂停等待人类 human_feedback self.human_input(模型想要执行数据库查询请审批输入 yes 允许 / 输入其他拒绝也可以写你的修改意见) self.task_history.append({role:human,content:human_feedback}) # Step2把人类反馈丢回大模型继续执行 new_prompt f拿到人类审批结果:{human_feedback}原始任务{user_query} resp2 self.llm_simulate(new_prompt) print(f\n 接收人类反馈后继续执行{resp2}) self.task_history.append({role:agent,content:resp2}) print(\n✅任务全部结束完整对话历史) for item in self.task_history: print(item) if __name__ __main__: agent HumanInTheLoopAgent() # 运行demo agent.run(分析用户报告查询数据库获取用户隐私数据)Agent 思考一半需要人类补充信息 / 修正答案再继续 LangChain Human‑in‑the‑Loop工具调用前人工确认 import os from dotenv import load_dotenv from langchain_core.tools import tool from langchain_openai import ChatOpenAI from langchain.agents import create_agent from langchain.agents.middleware import wrap_tool_call current_file_path os.path.abspath(__file__) script_folder os.path.dirname(os.path.dirname(os.path.dirname(current_file_path))) env_path os.path.join(script_folder, .env.local) load_dotenv(dotenv_pathenv_path) # print(os.getenv(DEEPSEEK_BASE_URL)) # print(env_path) tool def query_database(user_id:str)-str: 查询数据库获取用户敏感数据 return f数据库返回用户[{user_id}]的敏感信息xxx隐私数据 tools [query_database] llm ChatOpenAI(modelos.getenv(DEEPSEEK_MODEL_CHAT), api_keyos.getenv(DEEPSEEK_API_KEY), base_urlos.getenv(DEEPSEEK_BASE_URL)) # 自定义中间件在工具真正执行前拦截触发人工确认HITL wrap_tool_call def human_in_loop(request, handler): tool_call request.tool_call print(f\n⚠️ 模型准备调用工具{tool_call[name]} 参数{tool_call[args]}) human_ok input(是否允许调用该工具 yes/no) if human_ok.strip().lower() ! yes: # 人类拒绝执行该工具调用返回拒绝信息让模型继续推理 return { role: tool, content: 人类拒绝执行该工具调用, tool_call_id: tool_call[id], } # 人类批准继续执行工具 return handler(request) executor create_agent( modelllm, toolstools, system_prompt你是助手按需调用工具, middleware[human_in_loop], ) if __name__ __main__: res executor.invoke({messages: [{role: user, content: 查询id1001用户的数据库信息}]}) print(\n最终结果, res[messages][-1].content)

相关新闻

Android主题不兼容问题解析与解决方案

Android主题不兼容问题解析与解决方案

1. Android开发中主题不兼容问题的典型表现在Android应用开发过程中,主题不兼容导致的报错通常会在以下几种场景中出现:编译时报错:最常见的错误提示是java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descen…

2026/8/9 6:33:57 阅读更多 →
Kaggle花卉分类实战:从零构建PyTorch图像分类模型

Kaggle花卉分类实战:从零构建PyTorch图像分类模型

1. 项目概述:从零开始的Kaggle花卉分类挑战如果你对数据科学和机器学习感兴趣,但面对海量的理论教程和复杂的代码库感到无从下手,那么Kaggle的入门级比赛就是你最好的“新手村”。今天我想分享的,是我参加Kaggle平台上一个名为“P…

2026/8/9 6:33:57 阅读更多 →
如何让经典Windows游戏在现代系统重生:DDrawCompat完整指南

如何让经典Windows游戏在现代系统重生:DDrawCompat完整指南

如何让经典Windows游戏在现代系统重生:DDrawCompat完整指南 【免费下载链接】DDrawCompat DirectDraw and Direct3D 1-7 compatibility, performance and visual enhancements for Windows Vista, 7, 8, 10 and 11 项目地址: https://gitcode.com/gh_mirrors/dd/D…

2026/8/9 6:33:57 阅读更多 →

最新新闻

告别“设备被占用“烦恼:USB-Disk-Ejector强力解决Windows弹出难题

告别“设备被占用“烦恼:USB-Disk-Ejector强力解决Windows弹出难题

告别"设备被占用"烦恼:USB-Disk-Ejector强力解决Windows弹出难题 【免费下载链接】USB-Disk-Ejector A program that allows you to quickly remove drives in Windows. It can eject USB disks, Firewire disks and memory cards. It is a quick, flexib…

2026/8/9 14:33:51 阅读更多 →
简单三步,让老Mac重获新生:OpenCore Legacy Patcher完整指南

简单三步,让老Mac重获新生:OpenCore Legacy Patcher完整指南

简单三步,让老Mac重获新生:OpenCore Legacy Patcher完整指南 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 嘿,朋友&…

2026/8/9 14:33:51 阅读更多 →
SRC漏洞挖掘实战:从基础到高阶技巧

SRC漏洞挖掘实战:从基础到高阶技巧

1. SRC漏洞挖掘入门指南:从零基础到实战精通十年前我刚接触安全测试时,连最简单的XSS漏洞都发现不了。现在回头看,那些看似复杂的漏洞挖掘其实都有清晰的路径可循。这篇文章将把我这些年从甲方乙方、从漏洞平台到企业内网积累的实战经验&…

2026/8/9 14:33:51 阅读更多 →
联想设备微信客服接入与高效沟通指南

联想设备微信客服接入与高效沟通指南

1. 联想设备微信客服接入指南 作为联想设备的老用户,我深知遇到硬件问题时找不到官方客服的焦虑。上周我的ThinkPad突然无法充电,在尝试了官网400电话、在线客服排队后,意外发现微信客服的高效解决方案。本文将详细拆解联想全系设备&#xff…

2026/8/9 14:33:51 阅读更多 →
Java实现汉诺塔:递归与迭代算法详解

Java实现汉诺塔:递归与迭代算法详解

1. 汉诺塔问题背景与规则解析 汉诺塔(Tower of Hanoi)是法国数学家爱德华卢卡斯在1883年提出的经典数学难题。这个看似简单的游戏背后蕴含着深刻的递归思想,成为计算机科学中讲解递归概念的经典案例。 游戏由三根柱子和若干个大小不一的圆盘…

2026/8/9 14:33:51 阅读更多 →
从绿色工厂到零碳工厂:智碳能碳管理平台衔接路径与五家方案比较

从绿色工厂到零碳工厂:智碳能碳管理平台衔接路径与五家方案比较

从绿色工厂到零碳工厂:智碳能碳管理平台衔接路径与五家方案比较青岛智碳未来 智碳能碳管理平台摘要:智碳能碳管理平台在"绿色→零碳"梯度中的价值,在于**不把绿色工厂申报当作终点**——首次评价形成的组织边界、能耗台账、碳盘查…

2026/8/9 14:32:51 阅读更多 →

日新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/9 0:01:47 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/9 0:01:47 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/9 0:03:48 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/9 0:01:47 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/9 0:01:47 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/9 0:03:48 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/8 17:02:44 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/9 0:45:04 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/8 17:02:44 阅读更多 →