ReAct(推理与行动)框架

目的:

最终目的是为了让机器像人一样:一边思考(Reasoning),一边查资料/使用工具(Acting)。

步骤

  • **思考(思考):**AI 面对问题时,先在脑海中进行逻辑推理,拆解问题,决定当前这一步需要做什么。

  • **行动(行动):**AI 根据思考的结果,调用外部工具。比如:使用搜索引擎查阅最新信息、运行计算器算一个复杂的数学题、或者查询某个数据库的 API。

  • **观察(观察):**AI 获取并阅读外部工具返回的真实结果,将其作为已知信息输入到大脑中,准备进行下一轮的"思考"。

  • **总结:**通俗来讲就是先用提示词模板询问ai,获取到指定返回词后,决定调用tool,然后根据tools中每个的描述使用,最后得到结果后填充进prompt中,重新询问,知道得到结束提示词或者循环结束位置

ReAct 框架解决的问题

  • **克服"幻觉"(Hallucination):**传统模型如果不知道 2023 年的奥斯卡得主,可能会瞎编一个名字。而 ReAct 会强迫模型去真实世界"看一眼"(Observation),从而基于事实回答。

  • 获取最新信息: 模型的训练数据往往停留在过去的某个时间点。通过 Action 赋予其联网搜索的能力,模型就能掌握实时动态。

  • 解决复杂逻辑: 通过把大问题拆解成一步步的"思考 + 行动",模型能解决那些无法直接"一口气"给出答案的复杂任务(比如我们上面的计算题)。

**克服"幻觉"(Hallucination)(基础版本):**克服幻觉的本意是通过外部工具的调用来使用最新数据,然后得到更为精准的答案,在基础版本中是将所有的工具和简介一起放入到prompt中在调用

**升级版:**在实际工程应用中是将tool和简介放入到向量数据库中,在每次发起询问前先从数据库中获取tool来减少上下文的长度

相关推荐
_Jimmy_24 分钟前
Python 协程库如何使用以及有哪些使用场景
python
aqi001 小时前
15天学会AI应用开发(十七)使用LangGraph实现会话记忆功能
人工智能·python·大模型·ai编程·ai应用
第一程序员1 小时前
Rust Agent 子进程执行:Command 之前,先定义输入和超时
python·rust·github
skywalk81631 小时前
设计并实现段言的 C FFI 绑定机制 @Trae
c语言·开发语言·python·编程
weixin_BYSJ19872 小时前
SpringBoot + MySQL 乒乓球运动员信息管理系统项目实战--附源码04954
java·javascript·spring boot·python·django·flask·php
海石2 小时前
1563分的简单题,可能就简单在能被暴力AC
算法·leetcode
海石2 小时前
1400分的dp汗流浃背之【交替子数组计数】
算法·leetcode
奋发向前wcx2 小时前
P2590 树的统计 题目解析
数据结构·算法·深度优先
imbackneverdie3 小时前
AI4S不止于分子药物:以MedPeer为代表的科研基建打开产业新增量
大数据·人工智能·算法·aigc·科研·学术·ai 4s
EQUINOX13 小时前
【论文阅读】| MoCo精读
论文阅读·人工智能·python·深度学习·机器学习