一、引言
当前,在各个大厂纷纷卷LLM的情况下,各自都借助自己的LLM推出了自己的AI Agent,比如字节的Coze,百度的千帆等,还有开源的Dify。你是否想知道其中的原理?是否想过自己如何实现一套AI Agent?当然,借助LangChain就可以。
ReAct(Reasoning and Action)是一个框架,其核心思想,就是通过思维链的方式,引导模型将复杂问题进行拆分,一步一步地进行推理(Reasoning)和行动(Action),同时还引入了观察(Observation)环节,在每次执行(Action)之后,都会先观察(Observation)当前现状,然后再进行下一步的推理(Reason)。
ReAct这个框架,就是要让LLM,进行推理,然后采取行动与外界环境互动。ReAct这个框架,就是要让开发者一步步引导LLM进行推理,然后根据推理的结果,判断采取哪个行动。
利用ReAct机制,LLM可以很好的结合外部环境和行动组件,形成一个完整的AI Agent。接下来我们使用LangChain定义一个ReAct机制的AI Agent。
二、实现过程
2.1 不使用ReAct机制
代码:
# 模型
api_key = "sk-xxxx"
api_base = "https://api.xxxx"
model = ChatOpenAI(model="gpt-3.5-turbo",
openai_api_key=api_key,
openai_api_base=api_base)
# 直接让模型计算数字
ai_msg = model.invoke([HumanMessage(content="你帮我算下,3.941592623412424+4.3434532535353的结果")])
print(ai_msg)
结果:
在不使用ReAct机制借助外部工具的情况下,让LLM帮我们计算两个小数相加,则直接出错。
2.2 使用ReAct机制构造出一个Agent
代码:
# 定义工具,要继承自LangChain的BaseTool
class SumNumberTool(BaseTool):
name = "数字相加计算工具"
description = "当你被要求计算2个数字相加时,使用此工具"
def _run(self, a, b):
return a["title"] + b["title"]
# 工具合集
tools = [SumNumberTool()]
# 提示词,直接从langchain hub上下载,因为写这个ReAct机制的prompt比较复杂,直接用现成的。
prompt = hub.pull("hwchase17/structured-chat-agent")
# 定义AI Agent
agent = create_structured_chat_agent(
llm=model,
tools=tools,
prompt=prompt
)
# 使用Memory记录上下文
memory = ConversationBufferMemory(
memory_key='chat_history',
return_messages=True
)
# 定义AgentExecutor,必须使用AgentExecutor,才能执行代理定义的工具
agent_executor = AgentExecutor.from_agent_and_tools(
agent=agent, tools=tools, memory=memory, verbose=True, handle_parsing_errors=True
)
# 测试使用到工具的场景
ai_msg = agent_executor.invoke({"input": "你帮我算下3.941592623412424+4.3434532535353的结果"})
print(ai_msg)
结果:
借助ReAct机制,会让LLM自动使用自定义工具,最终计算正确。
如何学习AI大模型?
作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】
![](https://img-blog.csdnimg.cn/img_convert/5eeeace7cfaa0a735c434de1b7ec3ee2.png)
一、全套AGI大模型学习路线
AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!
二、640套AI大模型报告合集
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
三、AI大模型经典PDF籍
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。
四、AI大模型商业化落地方案
作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。