ReAct Prompting
探索 ReAct 提示词,构建自主 AI 智能体。了解推理和行动如何与大语言模型 (LLMs) 以及像 Ultralytics YOLO26 这样的视觉工具协同工作。
ReAct (Reasoning and Acting) prompting 是一种先进的 prompt engineering 范式,允许 Large Language Models (LLMs) 将分步推理轨迹与任务特定操作动态交织。该技术在 2022 年具有影响力的学术论文 "ReAct: Synergizing Reasoning and Acting in Language Models" 中首次提出,它将静态语言模型转变为交互式 AI agent。通过显式生成关于问题的思考并执行操作以检索外部信息,ReAct 框架显著提高了复杂 artificial intelligence 工作流中的事实准确性和决策能力。
推理与行动的机制#
在传统的交互中,模型完全基于其内部知识生成响应,这通常会导致 hallucinations in LLMs。ReAct 架构通过使用包含“思考”(Thoughts)、“行动”(Actions)和“观察”(Observations)的连续循环将 AI 扎根于外部环境,从而解决了这个问题。
当遇到查询时,模型首先生成一个“Thought”来概述其策略。然后它会触发一个“Action”,例如查询搜索引擎、与数据库交互,或者通过称为 function calling 的概念调用 vision API。环境返回一个“Observation”,提供事实数据。模型评估这个新信息,更新其推理,并迭代循环直到得出最终答案。这种方法在 Prompt Engineering Guide on ReAct 中有更详细的阐述,它模仿了人类的问题解决方式,并建立了高度透明和可控的 agent 行为。
实际应用#
ReAct prompting 擅长需要迭代解决问题和多步工具使用的场景,这使其成为现代 agentic AI systems 的基础。
- Automated Customer Support Agents: 在企业环境中,IT 服务台 agent 使用 ReAct 来解决用户问题。如果用户报告网络中断,agent 会推理出它需要检查服务器状态。它通过 ping 诊断 API 来采取行动,观察结果,然后根据检索到的事实升级工单或提供故障排除指南,从而简化传统的 Retrieval-Augmented Generation (RAG) 管道。
- Dynamic Visual Analysis: Computer vision 系统利用 ReAct 进行复杂的视觉问答。负责库存管理的机器人 agent 可能会观察货架,推理出它需要清点特定物品,通过调用 object detection 模型采取行动,并使用返回的 bounding box 数据来完成最终清点。这种协同作用弥合了基于文本的推理与空间理解之间的鸿沟。
利用计算机视觉实现 ReAct#
对于使用 Python 的开发人员,ReAct agent 通常会协调感知模型来与物理世界交互。以下概念代码演示了 ReAct 推理循环如何无缝部署 Ultralytics YOLO26 模型作为外部工具来观察和报告环境。
from ultralytics import YOLO
def vision_tool(image_path: str) -> str:
"""Action tool for a ReAct agent to detect objects in an image."""
model = YOLO("yolo26n.pt") # Load highly efficient YOLO26 nano model
results = model(image_path)
# Format the observation for the LLM's reasoning loop
detected_classes = [model.names[int(c)] for c in results[0].boxes.cls]
return f"Observation: Found {len(detected_classes)} objects: {', '.join(detected_classes)}"
# Simulated ReAct agent executing an action
agent_observation = vision_tool("https://ultralytics.com/images/bus.jpg")
print(agent_observation)使用 Ultralytics Platform 可以完全简化这些视觉工具的数据集管理和实验跟踪,该平台为现代 AI 部署提供全面的解决方案。有兴趣从头构建这些 agent 的人也可以研究 official ReAct repository 中的基础逻辑。
区分相关概念#
为了设计正如最近的 academic alignment research 中探讨的强大多模态架构,区分 ReAct 与相关的工程模式至关重要:
- Vs. Chain-of-Thought Prompting: 思维链(CoT)鼓励模型循序渐进地思考,但完全依赖于静态的内部知识。ReAct 通过注入在推理过程中收集新鲜外部观察结果的动态“操作”扩展了 CoT。
- Vs. Prompt Chaining: Prompt 链涉及对硬编码的一系列独立 LLM 调用,其中一个步骤的输出会自动输入到下一个步骤。ReAct 是一个更具自主性的范式,其中单个 agent 根据持续的观察动态决定采取哪些工具或顺序操作,而不是遵循严格链接的脚本。
通过将逻辑推理与执行诸如 Multi-Modal Models 等专用外部工具相结合,ReAct prompting 能够开发出功能强大、通用的 AI 系统。






