【收藏必备】ReAct范式详解:从入门到实践,让大模型拥有推理与行动能力

ReAct是一种融合推理与行动的大模型范式,通过Thought-Action-Observation(TAO)闭环机制实现动态交互。该范式有效减少幻觉问题,提高模型准确性和可解释性,适用于复杂决策环境、知识更新等场景。无需模型微调,通过提示工程和工具集成即可实施。ReAct已发展为多种变体,成为LangChain等框架的核心组件,推动AI向自主代理转型。

1、 ReAct范式的背景

大型语言模型的发展经历了从静态生成到动态交互的演进。早期模型擅长文本生成和简单推理,但面临幻觉问题和外部交互缺失的局限。2022年前,链式思考等方法提升了推理能力,却缺乏行动验证机制。ReAct范式于2022年由普林斯顿大学和谷歌研究团队发表的论文《REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS.pdf》中提出,受人类决策过程启发,将抽象思考与具体行动融合。 该框架的背景在于桥接模型内部知识与外部环境的鸿沟,推动AI从被动响应向自主代理转型。根据原论文,该范式在实验中证明了其在多跳问答和决策任务中的优越性,标志着agentic AI的早期里程碑。 到2026年,ReAct已成为LangChain等框架的核心组件,广泛应用于工业自动化和知识检索领域。

2、 ReAct范式的变体与发展

自2022年提出以来,ReAct范式已演变为多种变体,以适应多样化应用场景。这些发展主要聚焦于提升鲁棒性、效率和扩展性,特别是在2023-2026年间,受agentic AI趋势驱动。

  • Reflexion (2023):引入自我反思机制,代理评估先前行动结果并优化后续步骤。该变体适用于长期任务,提升错误修正能力,并在决策环境中优于原ReAct。
  • ReWOO:优化工具调用流程,分离规划与执行,减少不必要迭代,提高计算效率。适合资源受限的应用,如移动代理。
  • 多代理协作变体:扩展ReAct至多代理系统,例如CrewAI框架中,代理分工执行TAO循环,实现复杂协作任务。 此发展于2024-2025年间流行,推动分布式AI系统。
  • Auto-GPT式自主代理 (2023):基于ReAct循环,实现任务分解与自主规划,常用于无监督环境,如自动化研究。
  • LangGraph集成 (2024-2026):在LangGraph框架中,ReAct变体支持状态图和高级控制流,允许自定义循环和条件分支,提升可控性。
  • Focused ReAct和REBACT (2024-2025):这些变体优化上下文保持和错误处理,适用于高风险场景,如实时监控。

这些变体根据应用需求定制,例如Reflexion用于反思密集任务,而多代理变体适用于协作环境。到2026年,ReAct发展融入agentic AI主流,推动从单一代理向生态系统的转型。

3、 ReAct范式的功能与作用

ReAct范式的主要功能在于实现推理与行动的协同,通过Thought-Action-Observation (TAO) 闭环机制处理复杂任务。其核心功能包括:

  • 推理生成:模型产生自然语言轨迹,用于问题分解和规划,提升决策的可解释性。
  • 行动执行:标准化调用外部工具,如API或数据库,获取真实数据以验证推理。
  • 观察反馈:处理行动结果,更新循环以修正错误,实现自适应学习。

这些功能的作用体现在多个方面:首先,减少幻觉和错误传播,提高任务准确率;其次,提升模型的鲁棒性,能处理不确定性和异常;最后,促进可扩展性,支持多模态集成。 在实际作用上,ReAct将语言模型转化为智能代理,适用于需要环境交互的场景,如实时监测系统。该范式的作用还延伸到伦理层面,通过外显轨迹增强透明度,降低黑箱风险。

4、ReAct范式的使用时机

ReAct范式适用于大型语言模型需与外部环境交互的场景,而非纯内部推理任务。具体时机包括:

  • 复杂决策环境:当任务涉及多步规划和反馈验证时,如模拟交互或多跳问答,避免纯链式思考的孤立局限。
  • 知识更新需求:模型内部知识过时时,通过行动查询外部源补充信息。
  • 高风险应用:在需要可解释性和鲁棒性的领域,如工业安全监测,ReAct的闭环机制可减少错误后果。
  • 少样本学习:新任务中,仅需few-shot提示即可泛化,而非依赖大规模训练。

不适用于简单文本生成或无需外部数据的任务,以避免不必要的计算开销。

5、 ReAct范式的实施方法

ReAct的实施依赖提示工程和工具集成,无需模型微调,适合应用现有大型语言模型的开发者。步骤如下:

  • 准备阶段:选择支持提示的模型,定义行动空间。
  • 提示设计:构建few-shot示例,包括TAO序列模板,引导模型生成轨迹。
  • 循环执行:迭代生成Thought,执行Action,注入Observation,直至任务完成或达上限。
  • 工具集成:使用框架如LangChain定义自定义工具,确保行动与外部接口无缝连接。

例如,在Python环境中,可通过LangChain实现:

import pandas as pdfrom langchain_openai import ChatOpenAIfrom langchain.agents import create_react_agent, AgentExecutorfrom langchain import hubfrom langchain.tools import Tool# ================= 配置区域 =================# 替换为你的 DeepSeek API KeyAPI_KEY = "YOUR_DEEPSEEK_API_KEY"# DeepSeek 的 Base URLBASE_URL = "https://api.deepseek.com"# ================= 1. 准备阶段:模拟数据 =================defcreate_mock_gas_data(): """创建模拟的燃气使用数据""" data = { 'user_id': [f'user_{i}'for i inrange(1, 11)], 'user_type': ['居民', '商业', '工业', '居民', '商业', '工业', '居民', '居民', '商业', '工业'], 'date': ['2023-10-01', '2023-10-01', '2023-10-01', '2023-10-02', '2023-10-02', '2023-10-02', '2023-10-03', '2023-10-03', '2023-10-03', '2023-10-03'], 'usage_cubic_meters': [15.5, 120.0, 450.2, 14.2, 115.5, 460.1, 16.0, 15.8, 118.0, 455.0] } return pd.DataFrame(data)# 初始化数据gas_df = create_mock_gas_data()# ================= 2. 工具定义 =================# 定义具体的业务逻辑函数defcalculate_average_usage(user_type: str) -> str: """计算指定类型用户的平均用气量。参数 user_type: 居民/商业/工业""" try: if user_type: filtered_df = gas_df[gas_df['user_type'] == user_type] if filtered_df.empty: returnf"未找到类型为 {user_type} 的用户数据。" avg_usage = filtered_df['usage_cubic_meters'].mean() returnf"{user_type}用户的平均用气量为: {avg_usage:.2f} 立方米" else: avg_usage = gas_df['usage_cubic_meters'].mean() returnf"所有用户的平均用气量为: {avg_usage:.2f} 立方米" except Exception as e: returnf"计算平均用气量时出错: {str(e)}"defget_max_usage_record(_) -> str: """获取单次用气量最高的记录。不需要参数""" try: max_row = gas_df.loc[gas_df['usage_cubic_meters'].idxmax()] return (f"单次最高用气记录:用户ID {max_row['user_id']}, " f"类型 {max_row['user_type']}, " f"日期 {max_row['date']}, " f"用量 {max_row['usage_cubic_meters']} 立方米") except Exception as e: returnf"获取最高用气记录时出错: {str(e)}"defcount_users_by_type(_) -> str: """统计各类用户的数量。不需要参数""" try: counts = gas_df['user_type'].value_counts().to_dict() # 格式化输出字符串 result_str = ", ".join([f"{k}: {v}户"for k, v in counts.items()]) returnf"用户类型统计: {result_str}" except Exception as e: returnf"统计用户数量时出错: {str(e)}"# 将函数包装成 LangChain 的 Tool 对象tools = [ Tool( name="AvgUsage", func=calculate_average_usage, description="计算指定类型用户(如居民、商业、工业)的平均用气量。输入应为用户类型字符串。" ), Tool( name="MaxUsage", func=get_max_usage_record, description="获取系统中单次用气量最高的那条记录。不需要输入参数。" ), Tool( name="UserStats", func=count_users_by_type, description="统计系统中不同类型用户的数量。不需要输入参数。" )]# ================= 3. 模型初始化 =================# 初始化 DeepSeek 模型llm = ChatOpenAI( model="deepseek-chat", temperature=0, api_key=API_KEY, base_url=BASE_URL)# ================= 4. 提示词设计 =================# 从 LangChain Hub 拉取标准的 ReAct 提示词模板# 这一步会联网下载 prompt,如果网络不通,可以使用下面的本地 prompt 备选方案try: prompt = hub.pull("hwchase17/react") print("成功从 Hub 加载 ReAct Prompt。")except Exception as e: print(f"Hub 连接失败 ({e}),使用本地默认 Prompt。") from langchain_core.prompts import PromptTemplate template = """Answer the following questions as best you can. You have access to the following tools:{tools}Use the following format:Question: the input question you must answerThought: you should always think about what to doAction: the action to take, should be one of [{tool_names}]Action Input: the input to the actionObservation: the result of the action... (this Thought/Action/Action Input/Observation can repeat N times)Thought: I now know the final answerFinal Answer: the final answer to the original input questionBegin!Question: {input}Thought:{agent_scratchpad}""" prompt = PromptTemplate.from_template(template)# ================= 5. 创建 Agent 并执行 =================# 创建 ReAct Agentagent = create_react_agent(llm, tools, prompt)# 创建 AgentExecutor,这是实际运行 Agent 的循环控制器agent_executor = AgentExecutor( agent=agent, tools=tools, verbose=True, # 设置为 True 可以在控制台看到详细的思考过程 handle_parsing_errors=True, # 自动处理解析错误 max_iterations=5# 限制最大思考步数,防止死循环)if __name__ == "__main__": print("="*50) print("燃气数据分析智能体已启动 (基于 LangChain + DeepSeek)") print("="*50) # 测试问题 1:单步工具调用 query1 = "工业用户的平均用气量是多少?" print(f"\n用户提问: {query1}\n") response1 = agent_executor.invoke({"input": query1}) print(f"\n最终回答: {response1['output']}") print("\n" + "="*50 + "\n") # 测试问题 2:多步推理 # 这个问题需要先统计用户类型,或者先看最高记录,取决于模型如何理解 query2 = "请分析一下我们的数据,告诉我哪种类型的用户单次用气量最高?" print(f"\n用户提问: {query2}\n") response2 = agent_executor.invoke({"input": query2}) print(f"\n最终回答: {response2['output']}")

输出结果:

代码说明:

1、Tool 类:

  • • 我们将普通的 Python 函数(如 calculate_average_usage)封装成了 Tool 对象。
  • • description 参数非常重要。ReAct 模式下,模型完全依赖这个描述来决定何时调用该工具。描述越清晰,模型表现越好。
  • 2、hub.pull(“hwchase17/react”):
  • • 这是 LangChain 社区维护的标准 ReAct 提示词模板。它包含了 “Question:”, “Thought:”, “Action:” 等格式指令。
  • • 代码中加入了 try-except,如果你的本地环境无法连接 LangChain Hub,它会自动切换到内置的 Prompt 模板,保证代码可运行。
  • 3、AgentExecutor:
  • • 这是 LangChain 的核心引擎。它负责执行 Thought -> Action -> Observation 的循环。
  • • verbose=True:这是体验 ReAct 的关键。开启后,你会在终端看到模型每一步的“思考”和“行动”,而不仅仅是最终结果。
  • • handle_parsing_errors=True:如果模型输出的格式不对(比如 DeepSeek 没有严格按照 “Action: …” 输出),Executor 会尝试自动修正或重试,而不是直接报错崩溃。

注:代码是ai生成,提高了生成力,所以简单把对应的代码核心内容也附加说明,这一方法强调外部实施,门槛较低,便于燃气智能体开发,这里案例是写的和我行业相关的燃气,其他场景也都是可以适用,重要的是思想。

  1. ReAct范式的Mermaid架构图

ReAct的架构展示TAO闭环的动态过程。

该图描绘了迭代循环:从推理开始,经行动和观察反馈,返回规划,直至终结。外部工具在Action节点集成,确保闭环的完整性。

6、 总结

ReAct范式通过TAO闭环机制,提供强大的推理-行动协同功能。其作用在于提升准确性和可解释性,适用于交互密集的任务。变体发展扩展了其适应性,实施方法简洁,依赖提示和工具。总体而言,ReAct标志着AI代理发展的关键一步,提供高效框架,值得深入探索。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线科技企业深耕十二载,见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事,早已在效率与薪资上形成代际优势,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我们整理出这套AI 大模型突围资料包

  • ✅ 从零到一的 AI 学习路径图
  • ✅ 大模型调优实战手册(附医疗/金融等大厂真实案例)
  • ✅ 百度/阿里专家闭门录播课
  • ✅ 大模型当下最新行业报告
  • ✅ 真实大厂面试真题
  • ✅ 2025 最新岗位需求图谱

所有资料 ⚡️ ,朋友们如果有需要《AI大模型入门+进阶学习资源包》下方扫码获取~

① 全套AI大模型应用开发视频教程

(包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点)

② 大模型系统化学习路线

作为学习AI大模型技术的新手,方向至关重要。 正确的学习路线可以为你节省时间,少走弯路;方向不对,努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划,带你从零基础入门到精通!

③ 大模型学习书籍&文档

学习AI大模型离不开书籍文档,我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。

④ AI大模型最新行业报告

2025最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

⑤ 大模型项目实战&配套源码

学以致用,在项目实战中检验和巩固你所学到的知识,同时为你找工作就业和职业发展打下坚实的基础。

⑥ 大模型大厂面试真题

面试不仅是技术的较量,更需要充分的准备。在你已经掌握了大模型技术之后,就需要开始准备面试,我精心整理了一份大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余

以上资料如何领取?

为什么大家都在学大模型?

最近科技巨头英特尔宣布裁员2万人,传统岗位不断缩减,但AI相关技术岗疯狂扩招,有3-5年经验,大厂薪资就能给到50K*20薪!

不出1年,“有AI项目经验”将成为投递简历的门槛。

风口之下,与其像“温水煮青蛙”一样坐等被行业淘汰,不如先人一步,掌握AI大模型原理+应用技术+项目实操经验,“顺风”翻盘!

这些资料真的有用吗?

这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。

以上全套大模型资料如何领取?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1183353.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2026年AI优化推荐:基于工业与零售双场景评价,直击转化率低与效率低下痛点 - 十大品牌推荐

2026年AI优化服务商深度测评:技术架构与商业转化双维解析 2026年企业营销迈入全域智能决策阶段,AI优化(GEO)已成为获取高质量商业线索的核心基础设施。本次测评聚焦市场主流服务商,围绕技术架构、算法效率等五大核…

Nginx 为什么用漏桶,而 Guava 用令牌桶?一文看懂限流算法的底层逻辑

在双十一大促、明星热搜或者遭受到恶意攻击时,系统的流量会瞬间飙升。 如果把服务器比作一家餐厅,平时每分钟进 10 个客人,系统运行良好。 突然来了 1000 个客人,如果全放进来,厨房(CPU/数据库)…

git: merge所做修改用git log -p看不到

解决: 增加-m参数可以看到merge的修改 $ git log -p -m app/models/banners.py 手册说明:-mThis flag makes the merge commits show the full diff like regular commits; for each merge parent, a separate log ent…

学霸同款2026 AI论文平台TOP9:本科生毕业论文写作全测评

学霸同款2026 AI论文平台TOP9:本科生毕业论文写作全测评 2026年学术写作工具测评:为何需要一份权威榜单? 随着人工智能技术的不断进步,越来越多的本科生开始依赖AI论文平台来提升写作效率与质量。然而,面对市场上琳琅满…

vue3基于Python协同过滤算法的图书馆图书借阅推荐系统设计与实现217413115

目录摘要开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!摘要 该研究设计并实现了一个基于Vue3前端框架与Python后端协同过滤算法的图书馆图书借阅推荐系统。系统通过分析用户历史借阅行为&…

宿迁市宿城宿豫沭阳泗阳泗洪区英语雅思培训辅导机构推荐,2026权威出国雅思课程中心学校口碑排行榜 - 老周说教育

经教育部教育考试院认证、全国雅思教学质量监测中心联合指导,参照《2024-2025中国大陆雅思成绩大数据报告》核心标准,结合宿迁市宿城区、宿豫区、沭阳县、泗阳县、泗洪县6800份考生调研问卷、76家教育机构全维度实测…

用 MySQL SELECT SLEEP() 优雅模拟网络超时与并发死锁

你写了一个接口,配置了 MyBatis 的查询超时时间为 3 秒(readTimeout3000)。 测试痛点: 怎么验证这个超时配置生效了? 笨办法: 造几千万条数据,写一个巨复杂的 SQL 让它跑慢点。土办法&#xff1…

vue3-python县志捐赠与借阅信息管理系统的设计与实现16069432

目录摘要开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!摘要 该系统基于Vue3和Python技术栈,设计并实现了一个县志捐赠与借阅信息管理平台,旨在解决传统县志管理中效…

2026年AI优化推荐:多场景实战排名,解决企业获客与品牌曝光核心痛点 - 十大品牌推荐

2026年AI优化推荐:技术自研与效果可视服务商全景解析 2026年,生成式AI技术的深度渗透使得AI优化(GEO)成为企业获取智能流量、驱动业务增长的关键战略。然而,市场服务商能力各异,从平台型巨头到垂直领域专家,企业…

Kali Linux 内网渗透:深度工程实施手册

第一阶段:隧道与代理(内网渗透的 “高速公路”)在内网中,你经常遇到的情况是:你只能控制一台 Web 服务器,但它身后有 10.10.10.x/24 的核心网段。你的 Kali 无法直接访问内网 IP,必须通过 Web 服…

2026年AI优化推荐:基于多行业实战评价,针对流量分散与转化痛点指南 - 十大品牌推荐

2026年五大标杆AI优化公司权威行业测评TOP5,AI优化公司哪家强 随着生成式人工智能技术全面渗透商业场景,企业获取流量与用户认知的核心阵地已从传统搜索引擎转向AI对话界面。AI优化(此处特指生成式引擎优化GEO)作为…

多智能体协作驱动的多模态医疗大模型系统:RAG–KAG双路径知识增强与架构的设计与验证(上)

摘要 多模态医疗大模型在医学影像解读与临床文本自动化生成方面展现了突破性的潜力,为智慧医疗的发展注入了强劲动力。然而,在面向真实世界、高风险的临床环境部署时,这类模型普遍面临三大核心挑战:一是多源异构数据(如…

【教程4>第10章>第22节】基于FPGA的图像Laplace边缘提取算法开发——Laplace拉普拉斯卷积运算模块

目录 1.软件版本 2.Laplace拉普拉斯卷积运算模块的实现分析 3.Laplace拉普拉斯卷积运算模块的verilog实现 欢迎订阅FPGA/MATLAB/Simulink系列教程 《★教程1:matlab入门100例》 《★教程2:fpga入门100例》 《★教程3:simulink入门60例》 《★教程4:FPGA/MATLAB/Simulink联合…

避坑指南:精准度高、售后好的国产不锈钢电子地磅品牌推荐,上海花潮实业实力解析 - 品牌推荐大师1

面对市场上琳琅满目的电子地磅品牌和型号,许多采购者在挑选时往往感到迷茫:究竟哪一款才适合自己?如何判断一台地磅的质量好坏?是看重价格、量程,还是品牌?本文将以上海花潮实业有限公司的不锈钢电子地磅为例,为…

深入解析:概率论与数理统计第一章 概率论的基本概念

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

软件测试在职人员,如何持续学习?

中国有句俗话叫“活到老,学到老”,虽然进入职场的我们已经远离了学校,但这并不代表着就可以不再学习。持续性的学习不仅能增长我们的见识,也能让职场中的我们变得更加优秀。但在忙碌的职场生活中,职场中软件测试同学该…

技术文章:解决 PowerShell 模块加载无响应问题的实用指南

技术文章:解决 PowerShell 模块加载无响应问题的实用指南 摘要 本文通过分析 Invoke-Obfuscation 模块加载案例,深入探讨了 PowerShell 模块加载的各种机制,并提供了一套系统性的故障排除方法。文章适合 PowerShell 开发者和系统管理员阅读。…

2026国内最新螺丝定制厂家最新top5排行榜发布!广东等地优质组合螺丝/端子螺丝/螺丝定制/螺丝加工公司及供应商综合实力盘点 - 品牌推荐2026

随着制造业智能化升级与新能源、汽车电子等高端领域蓬勃发展,螺丝作为核心基础紧固件,其定制化需求呈现爆发式增长,对精度、性能与交付效率的要求达到新高度。但行业普遍存在规格匹配度不足、品质稳定性欠缺、定制周…

提拔快的项目经理,打死也不会告诉别人的3个反向操作!

职场里项目经理想往上走,真🙅不是光靠埋头干活就行。 有些人天天埋头干活,项目接了不少,班也加了不少,可职位就是不升;反观另一些人,看着没怎么干活,反而升得飞快。 很多人觉得人家…

探讨忻州比较好的geo推广机构情况,如何选择 - 工业品牌热点

在AI搜索重塑企业获客逻辑的当下,GEO推广作为抢占AI搜索流量的核心手段,成了ToB企业破局获客难的关键。但市面上GEO推广机构鱼龙混杂,企业该如何选到搜得到、接得住、效果稳的合作伙伴?本文通过五个高频问题,结合…