Human Input LLM in LangChain(two)

https://python.langchain.com.cn/docs/modules/model_io/models/llms/how_to/human_input_llm

HumanInputLLM的例子里,“预设固定格式”是Agent和人类之间的“沟通语言”——就像你给机器人发指令必须用它能看懂的代码,人类给Agent发指令也必须用它能解析的格式。 Agent看不懂自由发挥的话(比如“你去查一下这个动漫”),但能看懂严格按格式写的指令(比如“Action: Wikipedia\nAction Input: …”)。

我们还是用“查Bocchi the Rock!”的例子,拆透“格式如何让Agent听懂人类的话”:

核心前提:Agent只认“固定格式”

Agent的内部逻辑被设定为:只能解析包含ThoughtActionAction InputFinal Answer的文本。 这些关键词就像“命令标签”,告诉Agent“哪部分是思考、哪部分是要调用的工具、哪部分是最终答案”。

格式模板长这样(Agent的“母语”):

Thought: (人类的思考过程,比如“我需要查维基百科”)  
Action: (要调用的工具名,必须是提前加载的工具,比如“Wikipedia”)  
Action Input: (工具的输入参数,比如搜索关键词“Bocchi the Rock!”)  

或者最后一步的结束格式:

Final Answer: (最终要返回的答案)  

分步拆解:人类输入如何通过格式驱动Agent?

步骤1:初始化“沟通环境”

代码里提前做好了3件事(和FakeLLM例子逻辑一致):

# 1. 定义HumanInputLLM:人类输入的“接收器”,会把人类输入的文本传给Agent  
llm = HumanInputLLM(prompt_func=lambda prompt: print(f"===PROMPT===\n{prompt}\n=====END====="))  

# 2. 加载工具:Agent能调用的“Wikipedia”(查资料用)  
tools = load_tools(["wikipedia"])  

# 3. 初始化Agent:内置“格式解析器”,只认上面的模板格式  
agent = initialize_agent(tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True)  
步骤2:用户提问,Agent启动“等待人类指令”

当运行agent.run("What is 'Bocchi the Rock!'?")后,Agent会先打印一个“提示框”(=PROMPT=和=END=之间的内容),本质是在说:
“请人类按我的格式给我指令,我等着执行!”

步骤3:第一次人类输入(按格式发指令)

人类看到提示框后,输入第一句符合格式的话:

Thought: I need to use a tool.  
Action: Wikipedia  
Action Input: Bocchi the Rock!, Japanese four-panel manga and anime series.  
  • 格式的作用1:告诉Agent“要调用工具”
    Agent看到Action: Wikipedia,立刻知道“要调用Wikipedia工具”;
    看到Action Input: ...,立刻知道“用这个关键词去查维基百科”。
步骤4:Agent执行工具调用,返回结果

Agent调用Wikipedia工具后,拿到搜索结果(Observation),并把结果展示出来:

Observation: Page: Bocchi the Rock! ...(一堆搜索结果)  
步骤5:第二次人类输入(按格式调整指令)

人类看到结果后,觉得“信息有点乱,需要更精准的搜索”,于是再按格式输入:

Thought: These are not relevant articles.  
Action: Wikipedia  
Action Input: Bocchi the Rock!, Japanese four-panel manga series written and illustrated by Aki Hamaji.  
  • 格式的作用2:告诉Agent“继续调用工具,换个参数”
    Agent再次解析Action: Wikipedia和新的Action Input,用更精准的关键词重新查维基百科,得到更相关的结果。
步骤6:第三次人类输入(按格式结束流程)

人类看到新结果足够回答问题,按格式输入结束指令:

Thought: It worked.  
Final Answer: Bocchi the Rock! is a four-panel manga series and anime television series...  
  • 格式的作用3:告诉Agent“可以输出答案了”
    Agent看到Final Answer:,立刻知道“流程结束,把这句话返回给用户”。

为什么“不按格式输入就会失效”?

如果人类随便输入一句:“你再去查一次,用更准的词”,Agent会完全看不懂——因为没有Action:Action Input:标签,它不知道该调用哪个工具、输入什么参数。

就像你对一个只会说中文的机器人说英文指令,它无法执行。HumanInputLLM的例子里,“固定格式”就是Agent能听懂的“中文”,人类必须用这种“语言”说话,Agent才能行动。

总结:格式是“人类→Agent”的翻译器

  • 人类的自然语言(比如“我觉得需要再查一次”)→ 翻译成格式指令(Action: Wikipedia\nAction Input: ...)→ Agent能解析并执行;
  • 整个过程中,HumanInputLLM只是“传话筒”,把人类输入的格式指令递给Agent,而Agent的“智能”全靠“识别格式→执行对应操作”的固定逻辑。

现在再看例子里的人类输入和Agent的反应,是不是能对应上了?每一句人类输入的格式,都直接决定了Agent下一步会做什么。

编号 文件名称 cwts-specs-001 IMT-DS FDD(WCDMA)系统无线接口物理层技术规范:名语术语 cwts-specs-002 IMT-DS FDD(WCDMA)系统无线接口物理层技术规范:概述 cwts-specs-003 IMT-DS FDD(WCDMA)系统无线接口物理层技术规范:物理信道和传输信道到物理信道的映射 cwts-specs-004 IMT-DS FDD(WCDMA)系统无线接口物理层技术规范:信道编码与复用 cwts-specs-005 IMT-DS FDD(WCDMA)系统无线接口物理层技术规范:扩频与调制 cwts-specs-006 IMT-DS FDD(WCDMA)系统无线接口物理层技术规范:物理层过程 cwts-specs-007 IMT-DS FDD(WCDMA)系统无线接口物理层技术规范:物理层测量 cwts-specs-008 IMT-DS FDD(WCDMA)系统无线接口层2技术规范:物理层向上层提供的服务 cwts-specs-009 IMT-DS FDD(WCDMA)系统无线接口层2技术规范:MAC协议 cwts-specs-010 IMT-DS FDD(WCDMA)系统无线接口层2技术规范:RLC协议 cwts-specs-011 IMT-DS FDD(WCDMA)系统无线接口层2技术规范:PDCP协议 cwts-specs-012 IMT-DS FDD(WCDMA)系统无线接口层2技术规范:BMC协议 cwts-specs-013 IMT-DS FDD(WCDMA)系统无线接口层3技术规范:RRC协议 cwts-specs-014 IMT-DS FDD(WCDMA)系统Iu接口技术规范:概述 cwts-specs-015 IMT-DS FDD(WCDMA)系统Iu接口技术规范:层1技术要求 cwts-specs-016 IMT-DS FDD(WCDMA)系统Iu接口技术规范:信令传输 cwts-specs-017 IMT-DS FDD(WCDMA)系统Iu接口技术规范:RANAP信令 cwts-specs-018 IMT-DS FDD(WCDMA)系统Iu接口技术规范:数据传输和传输信令 cwts-specs-019 IMT-DS FDD(WCDMA)系统Iu接口技术规范:用户平面协议 cwts-specs-020 IMT-DS FDD(WCDMA)系统Iub接口技术规范:概述 cwts-specs-021 IMT-DS FDD(WCDMA)系统Iub接口技术规范:层1技术要求 cwts-specs-022 IMT-DS FDD(WCDMA)系统Iub接口技术规范:信令传输 cwts-specs-023 IMT-DS FDD(WCDMA)系统Iub接口技术规范:NBAP信令 cwts-specs-024 IMT-DS FDD(WCDMA)系统Iub接口技术规范:用于CCH数据流的数据传输和传输信令 cwts-specs-025 IMT-DS FDD(WCDMA)系统Iub接口技术规范:用于CCH数据流的用户平面协议 cwts-specs-026 IMT-DS FDD(WCDMA)系统Iur接口技术规范:概述 cwts-specs-027 IMT-DS FDD(WCDMA)系统Iur接口技术规范:层1技术要求 cwts-specs-028 IMT-DS FDD(WCDMA)系统Iur接口技术规范:信令传输 cwts-specs-029 IMT-DS FDD(WCDMA)系统Iur接口技术规范:RNSAP信令 cwts-specs-030 IMT-DS FDD(WCDMA)系统Iur接口技术规范:用于CCH数据流的数据传输和传输信令 cwts-specs-031 IMT-DS FDD(WCDMA)系统Iur接口技术规范:用于CCH数据流的用户平面协议 cwts-specs-032 IMT-DS FDD(WCDMA)系统Iub/Iur接口技术规范:用于DCH数据流的数据传输和传输信令 cwts-specs-033 IMT-DS FDD(WCDMA)系统Iub/Iur接口技术规范:用于DCH数据流的用户平面协议 cwts-specs-034 TD-SCDMA系统无线接口物理层技术规范 cwts-specs-035 TD-SCDMA系统无线接口层2技术规范 cwts-specs-036 TD-SCDMA系统无线接口层3-RRC技术规范 cwts-specs-037 TD-SCDMA系统Iu接口技术规范 cwts-specs-038 TD-SCDMA系统Iub接口技术规范 cwts-specs-039 TD-SCDMA系统Iur接口技术规范 cwts-specs-040 TD-SCDMA系统基站设备无线收发特性技术规范 cwts-specs-041 TD-SCDMA系统用户终端设备无线收发特性技术规范 CWTS发布的研究报告列表 cwts-reports-001 IMT-DS FDD(WCDMA)系统连接模式下的层间过程(25.303)标准研究报告 cwts-reports-002 IMT-DS FDD(WCDMA)系统空闲模式下UE的流程和连接模式下小区重选流程(25.304)标准研究报告 cwts-reports-003 IMT-DS FDD(WCDMA)系统无线资源管理RRM研究报告 cwts-reports-004 IMT-DS FDD(WCDMA)系统无线资源管理RRM研究报告 cwts-reports-005 IMT-DS FDD(WCDMA)系统UE无线接入能力研究报告
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值