内容提要
基于大模型的Agent的基本组成包括规划、工具、执行和记忆。ReAct框架提升模型问题解决能力。文章介绍了Agent的工作过程和构建Agent的代码。复杂任务中的任务拆解和规划是关键步骤。研究方向包括Zero-Shot、Few-Shot等。
延伸解读
从PDCA到Agent:任务规划的管理学根基
文章将Agent的任务规划与PDCA循环类比,指出两者都遵循“计划-执行-检查-处理”的迭代逻辑。这并非偶然:PDCA作为质量管理经典模型,强调通过循环往复将成功经验标准化、未解决问题进入下一轮,而Agent的ReAct框架同样通过“思考-行动-观察”的循环逐步推进任务。理解这一映射,有助于读者从人类工作方法中汲取Agent设计灵感,也说明任务规划并非纯技术问题,而是对问题解决流程的抽象。
ReAct框架:让Agent“边想边做”的关键
ReAct框架的核心在于将大模型的思考过程显式纳入提示词,并与工具调用、执行结果交替出现。文章指出,这种设计让模型能基于历史步骤反思当前进度,从而提升问题解决能力。斯坦福AI小镇、AutoGPT等知名项目均受此启发,LangChain也直接基于ReAct定义了多种Agent类型。对于开发者而言,理解ReAct的“Thought-Action-Observation”循环,是掌握Agent执行机制的基础。
简单Agent的代码实现与循环控制
文章通过一个计算汉字数量的工具示例,展示了构建Agent的基本步骤:定义工具、绑定模型、创建Agent、执行主循环。其中,AgentAction、AgentFinish和intermediate_steps是三个关键概念,分别表示待执行动作、最终输出和中间步骤历史。执行过程是一个while循环,直到返回AgentFinish。文章特别提醒,实际中需控制循环次数,避免无休止执行耗尽资源。这揭示了简单Agent的局限性:任务过于复杂时,循环可能无法终止。
复杂任务规划:从提示技巧到结构化推理
面对复杂任务,仅靠简单循环不够,任务拆解与规划成为关键。文章梳理了多种研究方向:Zero-Shot、Few-Shot、COT、Auto CoT、Meta CoT、Least-to-Most、Self-Consistency、思维树(ToT)、思维图谱(GoT)以及多角色协作等。其中,Zero-Shot、Few-Shot、Self-Consistency和Least-to-Most在提示词层面易于应用且效果显著;而ToT和GoT则通过树或图结构组织推理路径,更贴近人类思维。这些方法已被许多开源或商业Agent产品采用
Q&A
基于大模型的Agent通常包含哪些核心组成部分?
基于大模型的Agent基本组成包括规划(Planning)、工具(Tools)、执行(Action)和记忆(Memory)四个方面。
ReAct框架是如何提升大模型的问题解决能力的?
ReAct框架让Agent在执行下一步行动时,加入大模型自己的思考过程,并将思考过程、执行的工具及参数、执行的结果放到提示词中,从而使模型对当前和先前的任务完成度有更好的反思能力,提升问题解决能力。
在构建Agent时,AgentAction、AgentFinish和intermediate_steps分别代表什么?
AgentAction包含tool(工具名称)和tool_input(工具输入);AgentFinish包含return_values字典,其output值是要返回给用户的字符串;intermediate_steps是一个列表,每个元素是包含AgentAction和其执行结果的元组,记录先前的操作及结果,用于未来决策。
为什么任务拆解和规划对复杂任务中的Agent至关重要?
对于复杂任务,如果任务粒度拆解不细,执行步骤无法穷尽,循环可能无法结束,导致Agent无法完成复杂问题。因此,任务拆解和规划是Agent真正可用的关键步骤。
有哪些常见的提示词层面的推理技巧可以提升Agent的推理能力?
常见的提示词层面技巧包括Zero-Shot(零样本提示)、Few-Shot(小样本提示)、COT(思维链)、Auto CoT、Meta CoT、Least-to-Most、Self-Consistency CoT等,这些方法易于应用且效果显著。
思维树(TOT)和思维图谱(GOT)是如何帮助Agent解决复杂问题的?
思维树(TOT)构建树状结构存储推理过程中的多个可能结果,通过状态评估排除无效结果,利用DFS或BFS连接节点形成多条推理链,最终评估最佳结果。思维图谱(GOT)将输出抽象为图结构,节点代表思考单元,边代表依赖关系,能合并推理链、回溯有效链、并行探索独立链,更贴近人类思维,增强推理能力。