Agents | 代理
简单结论
Agents的技术,其实本质上就是写prompt,让模型仿照你的方式来进行执行的一种应用范式,prompt里面包含一些tools的描述,然后我们可以根据模型的输出使用一些外部tools(例如计算器,搜索API,数据库,程序接口,各种模型的API),能使用外部的API,知识库,那大模型就厉害了,只要写好prompt,几乎能干游戏,机器人控制,RPA等所有的事情了。我们可以总结一下,一个包含Agents自主智能体的系统如下图所示,通过tools让大模型获取外部输入,通过prompts来驱动LLM得到我们想要的输出:
简而言之,Agent可以访问一套工具(Tool),并根据用户输入确定要使用哪些工具。Agent可以使用多个工具,并使用一个工具的输出作为下一个工具的输入。目前有两种类型的Agents:
- Action agents: 在每个时间步长,使用所有先前操作的输出来决定下一个操作.
- Plan-and-execute agents:预先决定完整的行动顺序,然后在不更新计划的情况下全部执行。
Action Agents适合小型的任务,而plan-and-execute agents更适合需要保持长期目标的复杂任务,通常最好的方法是通过让plan-and-execute agent使用action agents来执行计划,将action agents的动态性与plan-and-execute agent的计划能力相结合。
演进
从仅使用 CoT,仅执行 Action,到 ReAct
而将 ReAct 框架和思维链(CoT)结合使用,则能够让大模型在推理过程同时使用内部知识和获取到的外部信息,从而给出更可靠和实际的回应,也提高了 LLMs 的可解释性和可信度。
Agent
AI 自主决定程序逻辑这个编程新范式的价值
代理就是一种用语言模型做出决策、调用工具来执行具体操作的系统。
chain 是硬编码,agents 根据结果和自身设定,动态决策输出
不管是chain还是代理,本质上都是给大模型完善的提示词呢, 并且langchain在适当的环节,内置了很多适当的提示词,结合上下文,觉得下一步做什么,引导大模型完成对应的需求, langchain本质上还是提供了默认的提示词
LLM的推理能力来决策
资料
ReActSelf-askPlan-and-execute agentsLoading...