赞
踩
▼最近直播超级多,预约保你有收获
架构设计模式已成为程序员的重要技能。在大模型 Agent 智能体应用领域, 同样需要架构设计模式来支撑大模型应用在企业中规模的落地。
根据多年的架构设计经验,我在这里整理总结了一些针对大模型应用的设计方法和架构模式,试图应对和解决大模型应用实现中的一些挑战:推理成本问题、推迟性能延迟问题、生成幻觉问题、生成复读机等问题。
今天先来介绍最常用的 ReAct 架构设计模式。
—1—
ReAct 架构设计模式
ReAct 是 Reseaning 和 Action 两个词的前缀合成,代表着先推理再行动的一种架构设计模式。进一步拆解来看,ReAct 有3个重要的组成部分:Planning(规划)、Action(行动)、Observation(观测),如下图所示:
我们先来看一个工作中的案例:马上五一长假了,你老板让你给他安排从上海去巴黎的行程,给你的预算是8K。
你收到这个任务后,
第一步:通过大脑思考给出一个 Planning(规划)的方案,从上海直飞巴黎。
第二步:需要通过去哪儿等订票网站 Action(行动)落实第一步的规划方案。
第三步:对订票 Action(行动)的过程进行观测,发现从上海直飞巴黎的机票最便宜的都需要1W+,老板给的预算不够,因此需要重新规划行程(Replanning),选择转机的方案,如下图 6990 元就够了。
目前世界上最聪明的 Agent 就是人类,大模型 Agent 智能体是仿照人类的思维方式来完成各种任务,因此大模型 Agent 智能体同样需要 ReAct 的 Planning-Action-Observation 三步架构落地方式。
—2—
ReAct 架构设计模式代码实现
大模型 Agent 智能体的 ReAct 架构设计模式本质是将人类的思维、做事方式以 Prompt Engineering 的方式告诉大模型进行规划、并调用工具完成执行、形成 Run Loop 循环持续迭代直到完成对应的任务。
推荐 Sam Witteveen 开源的 ReAct 的架构设计实现,Github 地址如下:https://github.com/samwit/langchain-tutorials/blob/main/agents/YT_Exploring_ReAct_on_Langchain.ipynb
代码结构主要有以下几步:
第一步:生成提示词。
将代码中预设好 ReAct 的提示词模板(格式:Quesion->Thought->Action->Observation)和用户的问题进行合并。
第二步:调用大模型生成 Thought + Action。
将 Few-shot 少样本提示词发给大模型,大模型生成一堆 Thought、Action 和 Observation,我们并不希望大模型输出 Observation。因此在代码里通过 Stop.Observation 来控制大模型遇到 Observation 后停止输出,最后大模型仅仅返回 Thought 和 Action。
第三步:调用外部工具(API)完成执行。
获得 Action 后,若非 “Finish” 状态,大模型将运用其 Function Calling 能力,即将 Action 中的自然语言转化为对应外部工具可理解的 API 调用。此功能本质上是对大模型进行微调以实现语言到 API 接口格式的精准转换。
第四步:生成 Observation。
API 接口响应数据接收后,系统会将其转化为自然语言表述,形成Observation。接着,将新生成的 Observation 与先前的 Thought 及当前非“Finish”的 Action 一并提交给大模型,继续执行步骤2(Thought 生成)与步骤3(Action 转化及执行)。这一循环将持续进行,直到接收到 Action为 “Finish” 为止。
第五步:完成输出。
在流程结束时,最后一个 Observation 会被转化为易于理解的自然语言表述,然后呈现给用户,作为整个交互过程的最终输出结果。
为了帮助同学们彻底掌握大模型 Agent 智能体、知识库、向量数据库、 RAG、知识图谱的应用开发、部署、生产化,今天我会开两场直播和同学们深度剖析,请同学们点击以下预约按钮免费预约。
—3—
!送!AI大模型开发直播课程
大模型的技术体系非常复杂,即使有了知识图谱和学习路线后,快速掌握并不容易,我们打造了大模型应用技术的系列直播课程,包括:通用大模型技术架构原理、大模型 Agent 应用开发、企业私有大模型开发、向量数据库、大模型应用治理、大模型应用行业落地案例等6项核心技能,帮助同学们快速掌握 AI 大模型的技能。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。