ReAct(推理与行动)框架

目的:

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

步骤

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

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

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

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

ReAct 框架解决的问题

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

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

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

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

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

相关推荐
布局呆星2 小时前
Python 文件操作教程
开发语言·python
im_AMBER2 小时前
Leetcode 142 将有序数组转换为二叉搜索树 | 排序链表
算法·leetcode
码农三叔2 小时前
(10-5-01)大模型时代的人形机器人感知:基于RoboBrain大模型的人形机器人通用智能感知系统(1)构建模型
人工智能·算法·机器人·人形机器人
scott1985122 小时前
扩散模型之(十三)条件生成 Conditioned Generation
人工智能·算法·生成式
傻啦嘿哟2 小时前
Python操作Redis:高效缓存设计与实战
redis·python·缓存
Wect2 小时前
LeetCode 53. 最大子数组和:两种高效解法(动态规划+分治)
前端·算法·typescript
Fairy要carry2 小时前
面试-Agent任务编排怎么处理?
网络·python·面试
春日见2 小时前
端到端自动驾驶综述
linux·人工智能·算法·机器学习·自动驾驶
EW Frontier2 小时前
【UAV识别】基于分层学习的射频无人机检测与识别技术,准确率达99%!【附python代码】
python·无人机·无人机信号识别