(五)吴恩达、Anthropic都在提的“Agent循环”是什么? | 理解Observe→Think→Act基本循环
摘要本文从吴恩达与 Anthropic 共同强调的 Agent 循环出发围绕 Observe→Think→Act 基本循环展开白话级拆解。文章先给出极简定义与类比再逐一剖析观察、思考、行动三个阶段的技术要点和常见误区通过联网问答、代码调试、多 Agent 协作三个实战场景演示循环运转全貌并梳理 ReAct、Reflexion 等高级模式与 LangGraph、AutoGPT 的映射关系最后提供循环完整性检查清单帮读者一把抓住所有 Agent 行为的底层密码。引言一个循环揭开所有Agent的行为密码如果你看过吴恩达Andrew Ng的Agent课程或者使用过Anthropic的Claude你一定会反复看到一个概念——Agent循环。吴恩达在《Building Agentic Systems》中不断强调观察-思考-行动Observe-Think-Act循环是Agent区别于普通LLM调用的根本标志而Anthropic为Claude设计的工具使用tool use循环也正是这样一个标准的三段式节奏。可以说理解这个循环就是拿到了理解所有Agent行为的万能钥匙。Agent的循环就像一个人工作时的节奏先用眼睛看Observe大脑思考Think手再行动Act然后看结果再思考、再行动……如此往复直到任务完成。本文将围绕Observe→Think→Act这个基本循环从第一性原理出发为你逐层拆解其核心机制并通过三个经典场景演示它如何“转起来”最后延伸到LangGraph、AutoGPT等真实框架中的变体。读完你会发现原来所有炫酷的Agent架构都能在这个简单循环中找到原型。一、极简定义Observe→Think→ActAgent的心跳Agent循环的最简骨架可以用一行伪代码概括while not done: observe() think() act()这背后是一个持续运转的反馈闭环可以用下面这张文字循环图来描述Observe观察 → Think思考 → Act行动↑ ← ← ← 新状态/反馈 ← ← ← ↓Agent首先通过观察获取外部信息然后思考决定下一步要做什么最后执行行动。行动会改变外部环境或产生新的反馈这些反馈又成为下一次观察的输入循环往复。从“人做事”的视角理解这三个阶段会更直观Observe观察就像你拿起手机看到一条微信消息或者打开网页看到搜索结果。Think思考你大脑开始分析这条消息的意思回忆上下文决定是要回复“好的”还是需要查资料。Act行动手指打字回复或者点击链接、截图分享。下面用一个总览表格来概括每个阶段的输入、处理与输出阶段输入处理输出Observe用户消息、工具返回值、环境状态、人类反馈信息收集与解析、状态跟踪结构化的观察信息如搜索结果文本、报错信息Think历史对话、当前观察、任务目标、系统提示推理CoT、决策ReAct、反思Reflection决定下一步动作调用工具、生成回答、请求帮助等Act思考输出的指令工具名参数执行工具调用、代码运行、生成最终回答行动结果如API返回、代码执行输出、文本回复二、逐一拆解三步循环中的关键细节2.1 Observe观察打开Agent的“感官”直击本质的一句话观察就是Agent从外部世界获取一切可感知信息的阶段没有观察Agent就变成了“瞎子”循环无法启动。为何缺一不可设想一个联网问答Agent如果它只能调用搜索工具却不去读取搜索返回的标题和摘要那么它连搜索的意义都丧失了。观察是闭环的入口一旦被省略后续的思考和行动都会建立在空白或过时信息上彻底“断链”。观察的来源远比想象中丰富用户原始消息最直接的输入。工具返回值如搜索引擎返回的JSON、代码沙箱的stdout/stderr、数据库查询结果。环境状态比如游戏Agent当前坐标、库存数量等。人类反馈人类对之前动作的确认或纠正Human-in-the-loop。Agent自身之前的行动结果如修改代码后运行得到的报错信息。技术实现手段通常是在程序中解析API响应、捕获异常、拼接上下文然后以结构化文本或ChatML格式传递给LLM。吴恩达在课程中特别强调Agent必须能够“感知环境”他把观察能力列为Agent设计的基石。常见误区将观察简单等同于“拿到一个JSON”却忽略了需要从中提取关键信息并做好预处理导致LLM被大量噪音淹没。2.2 Think思考推理与决策的“黑箱”透明化直击本质的一句话思考是Agent基于当前观察和历史信息决定“下一步该做什么”的推理过程是整个循环的智能核心。为何缺一不可如果没有思考Agent就会退化成机械的“输入-输出”映射面对稍微复杂一点的任务如多步推理、工具选择就会乱来。没有思考的Observe→Act其实是硬编码的规则引擎无法处理开放域问题。思考的技术手段从简单到复杂业界已经形成了一套清晰的演化路径CoTChain-of-Thought让模型在回答前先输出推理步骤提升多步推理准确率。ReActReasoning Acting将Thought、Action、Observation交织起来模型每走一步都先Think再Act再根据Observation调整下一步Thought。这是很多Agent框架的默认“思考范式”。Reflection反思在生成答案或执行动作后让模型再“回头看”一遍自己的输出自我批评并修正代表工作如Reflexion。Planning规划在开始行动前先生成一个全局计划再按计划逐步执行如Plan-and-Solve。Anthropic在Claude的工具使用文档中明确展示了模型的思考过程Claude会先产生一段文字推理在tool_use块之前描述它为什么选择某个工具、参数如何构造。这就是Think阶段的具体表现证明了思考不是空谈而是被显式设计在产品逻辑中的。常见误区误以为思考只是LLM内部的黑盒实际上可以通过精心设计的Prompt要求模型结构化输出思考步骤让它透明可控。2.3 Act行动将思想转化为改变直击本质的一句话行动是将思考产生的决策“落地”执行具体工具、函数或生成最终回答是Agent产生价值的唯一出口。为何缺一不可只观察只思考却不行动就成了空想家永远解决不了实际问题。同时行动还承担着生成反馈的职责——如果没有行动下一次观察就没有新内容循环就会停滞。常见的行动类型工具调用搜索、计算器、代码解释器、天气API等。代码执行在沙箱中运行Python/JavaScript代码并捕获输出。生成最终回答当Agent判断任务已完成将结果以自然语言返回给用户。请求人类帮助当遇到无法处理的情况时暂停并等待人工输入。技术实现手段主流做法是由LLM输出特定格式的指令如function call、tool_use block宿主程序解析后执行然后将结果转为文本重新注入下一次观察。吴恩达将这一模式称为“tool-use loop”正是Observe→Think→Act的工程化实现。常见误区把所有Act都简单理解为“回一个消息”忽略了行动本身的质量如参数正确性、异常处理决定了循环能否健康延续。三、循环实战从三个经典场景看循环如何转起来下面通过三个场景用“循环泳道图”式文字演示每一步的输入、思考与输出让你直观感受O-T-A的真实运转。场景1联网问答信息检索任务回答“2024年全球GDP增长预测是多少”循环演示①Observe用户输入问题系统检查历史对话为空。②ThinkAgent判断需要最新数据决定调用搜索工具构造查询词“2024 global GDP growth forecast”。③Act调用bing_search(query2024 global GDP growth forecast)得到一段包含多个链接和摘要的返回文本。④Observe新循环读取搜索返回的前三条摘要发现IMF预测为3.2%世界银行预测为2.6%。⑤Think两条信息基本一致可以直接给出综合回答判断不需要再次搜索。⑥Act生成最终回复“根据IMF和世界银行的最新预测2024年全球GDP增长约在2.6%3.2%之间。”可以看到Observe阶段从空到有再到获取搜索结果Think阶段驱动了工具选择和答案提取整个循环转了两次半两次搜索相关观察一次最终回答。场景2代码生成与调试任务写一个Python函数计算斐波那契数列但故意使用递归且无缓存然后让Agent优化。循环演示①Observe用户要求优化一个已有的递归斐波那契函数并提供了报错截图递归深度超限。②ThinkAgent分析代码发现是标准递归无缓存时间复杂度O(2^n)且容易栈溢出决定改用迭代法。③Act调用代码编辑器将原递归函数替换为迭代版本并生成一个测试调用。④Observe运行测试返回结果正确无报错。⑤Think测试通过任务完成。⑥Act返回成功消息及优化后代码。这个场景中Observe的关键是“报错信息”若Agent只看代码不看报错就很难定位栈溢出问题。Think阶段使用了因果推理递归导致栈溢出Act精准执行了代码替换。场景3多Agent协作宏观视角任务一个主管Agent协调两个子Agent一个负责数据查询一个负责数据分析。循环演示简化① 主管AgentObserve用户需求“分析销售数据并生成报告”。② 主管AgentThink分解任务先查数据再分析计划调用子Agent1。③ 主管AgentAct发送消息给子Agent1“请查询近12个月销量”。④ 子Agent1内部启动自己的O-T-A循环Observe指令→Think决定调SQL→Act查询数据库→得到结果再Act将数据返回主管。⑤ 主管AgentObserve子Agent1返回的数据Think数据已齐调用子Agent2分析。⑥ 主管AgentAct发送消息给子Agent2“请基于此数据生成趋势图和分析文案”子Agent2内部同样跑自己的O-T-A循环。⑦ 最终主管Agent收集结果整合成报告Act返回用户。这揭示了多Agent系统的本质每个Agent内部都在跑自己的Observe→Think→Act循环而Agent之间的消息传递构成了一个更高层的、跨Agent的“通信循环”。四、循环的延伸从基础循环到高级Agent模式Observe→Think→Act不是僵化的三段式而是一个可灵活增强的元模式。许多著名的Agent范式都是在这个基本循环上扩充、分层或内嵌而来。下面用一个表格来快速对比模式与O-T-A的关系核心增强代表性框架ReAct就是O-T-A的同步交织Thought→Action→Observation→Thought…将思考与行动交错并显式标注LangChain ReAct Agent、OpenAI FunctionsPlan-Act-Observe在Think阶段前置一个全局规划步骤再进入O-T-A先规划后执行减少盲目尝试Plan-and-Solve、BabyAGIReflexion在循环尾部增加一个反思步骤对历史循环进行评价并更新记忆长期记忆和自我改进Reflexion论文、AutoGPT部分实现分层循环Hierarchical高层Agent的Task分解为子任务每个子任务启动子Agent自己的O-T-A循环递归分解适合复杂规划AutoGPT、MetaGPT在实际工程中这些模式是如何“兑现”为代码的呢我们以两个主流框架为例LangGraph将Agent行为建模为有向图节点可能是“Think节点”调用LLM或“Act节点”执行工具边则承载条件判断。但无论图怎么画消息在节点间流转的过程本质上就是一轮又一轮的Observe→Think→Act。图结构只是为循环提供了显式的编排和条件分支。AutoGPT的递归循环早期AutoGPT的核心循环就是一个while循环不断地从短期记忆读取上下文Observe调用LLM生成下一步命令Think然后执行命令如google_search、write_fileAct再把结果写入记忆。这种递归的Observe→Think→Act正是其自主性的来源。所以无论你用的是高度抽象的LangGraph还是简单粗暴的Python while True底层的逻辑从未改变。五、写在最后理解循环你就抓住了Agent的设计要义读到这里你已经掌握了Agent设计的“第一性原理”。当你下一次构建自己的Agent时可以用下面这份循环完整性检查清单来审视你的设计Observe是否全面你的Agent能否获取所有必要的上下文用户消息、工具结果、环境状态、历史记录Think是否充分Agent是否有明确的推理步骤有没有可能陷入死循环或过早结束Act是否可靠工具调用的参数是否正确执行失败时是否有备选方案循环是否闭合行动结果是否一定会被纳入下一次观察是否存在“只行动不观察”的断点何时停止循环的终止条件是否明确能否避免无限循环浪费资源答案或许复杂但起点永远简单——Observe → Think → Act。希望这篇白话拆解能让你有一种“一通百通”的透彻感。如果觉得有用欢迎点赞、收藏并在评论区分享你在设计Agent时遇到的循环趣事或踩坑经历我们一起让智能体真正“活”起来。

相关新闻

STM32单片机智能手环脉搏心率计步器体温显示35-31(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_

STM32单片机智能手环脉搏心率计步器体温显示35-31(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_

STM32单片机智能手环脉搏心率计步器体温显示35-31(设计源文件万字报告讲解)(支持资料、图片参考_相关定制)_ 产品功能描述: 本系统由STM32F103C8T6单片机、ADXL345传感器、心率传感器、DS18B20温度传感器、(无线蓝牙/WIFI模块-可选…

2026/8/3 7:51:34阅读更多 →
FX3U PLC在超音波三边封制袋机中的应用与优化

FX3U PLC在超音波三边封制袋机中的应用与优化

1. FX3U三边封制袋机概述 三边封制袋机作为包装机械领域的重要设备,其核心功能是将塑料薄膜通过热封或超声波封合工艺制成三边密封的包装袋。FX3U系列PLC作为三菱电机的中端主力机型,凭借其稳定的性能和丰富的扩展功能,成为这类设备控制系统的…

2026/8/3 7:51:34阅读更多 →
工业检测场景3D扫描仪怎么选?2026年汽车丨航空航天丨模具制造适用机型推荐

工业检测场景3D扫描仪怎么选?2026年汽车丨航空航天丨模具制造适用机型推荐

一、什么是3D扫描仪?从原理到工业价值3D扫描仪,又称三维扫描仪,是一种通过光学、激光或结构光等非接触式手段,对物体表面进行高密度点云数据采集,并将真实物理形态转化为精确数字模型的测量设备。与传统的三坐标测量机…

2026/8/3 7:51:34阅读更多 →
c++可变参数包语法解析

c++可变参数包语法解析

本文介绍c可变参数包的相关用法 定义模板参数和函数参数 如下代码所示可以定义一个接受可变参数的函数 template <typename... Args> void func(Args... args) {//函数体 } //如果args是右值引用需要这样写:Args&&...代码中的Args是一个模板形参,args是一个函数形…

2026/8/3 9:08:27阅读更多 →
用AI魔法让老旧视频焕发新生:Video2X视频增强全攻略

用AI魔法让老旧视频焕发新生:Video2X视频增强全攻略

用AI魔法让老旧视频焕发新生&#xff1a;Video2X视频增强全攻略 【免费下载链接】video2x A machine learning-based video super resolution and frame interpolation framework. Est. Hack the Valley II, 2018. 项目地址: https://gitcode.com/GitHub_Trending/vi/video2x…

2026/8/3 9:08:27阅读更多 →
MeteoInfo深度解析:气象GIS与科学计算一体化平台的架构奥秘

MeteoInfo深度解析:气象GIS与科学计算一体化平台的架构奥秘

MeteoInfo深度解析&#xff1a;气象GIS与科学计算一体化平台的架构奥秘 【免费下载链接】MeteoInfo MeteoInfo: GIS, scientific computation and visualization environment. 项目地址: https://gitcode.com/gh_mirrors/me/MeteoInfo 在气象数据分析的世界里&#xff0…

2026/8/3 9:08:27阅读更多 →
OSPF协议原理与多区域网络实验指南

OSPF协议原理与多区域网络实验指南

1. OSPF协议基础与实验价值OSPF&#xff08;Open Shortest Path First&#xff09;作为链路状态路由协议的典型代表&#xff0c;已经成为企业级网络的核心路由技术。不同于距离矢量协议&#xff0c;OSPF通过洪泛链路状态信息&#xff0c;让区域内所有路由器构建相同的拓扑数据库…

2026/8/3 9:08:27阅读更多 →
Python基础数据类型详解:整数、浮点数、复数与布尔型

Python基础数据类型详解:整数、浮点数、复数与布尔型

1. Python基础数据类型概述 刚接触Python时&#xff0c;最让我困惑的就是各种数据类型的区别和使用场景。记得第一次写计算器程序时&#xff0c;因为没搞清楚整数和浮点数的区别&#xff0c;导致计算结果总是出错。经过多年实战&#xff0c;我总结出Python数据类型就像工具箱里…

2026/8/3 9:08:27阅读更多 →
从《超星神》水瓶赛沙吃瘪看战斗系统设计与角色成长逻辑

从《超星神》水瓶赛沙吃瘪看战斗系统设计与角色成长逻辑

最近在整理特摄剧《超星神》的经典战斗场面时&#xff0c;发现很多朋友对“水瓶赛沙吃瘪”这个桥段印象深刻&#xff0c;但讨论往往停留在“好惨”、“又被揍了”的层面。作为一部融合了星座神话与机甲战斗的作品&#xff0c;其战斗设计、角色能力平衡以及剧情推进的“吃瘪”逻…

2026/8/3 9:06:26阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起&#xff1a;为什么我们需要互相关几年前&#xff0c;我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号&#xff0c;理论上它们接收到的声音波形应该非常相似&#xff0c;只是由于麦克风位置不同&#xff…

2026/8/3 0:29:53阅读更多 →
限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI模板批量生成的核心价值与落地全景 AI模板批量生成正从实验性工具演进为现代软件工程的关键基础设施。它通过语义理解、上下文感知与结构化约束&#xff0c;将重复性高、模式明确的代码/文档/配置生成…

2026/8/3 0:33:53阅读更多 →
如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页&#xff1a;Web Archives浏览器扩展终极指南 【免费下载链接】web-archives Browser extension for viewing archived and cached versions of web pages, available for Chrome, Edge and Safari 项目地址: https://gitcode.com/gh_mirrors/we/web-a…

2026/8/3 0:20:37阅读更多 →
3个让你工作效率翻倍的Umi-OCR实战技巧:免费离线文字识别完全指南

3个让你工作效率翻倍的Umi-OCR实战技巧:免费离线文字识别完全指南

3个让你工作效率翻倍的Umi-OCR实战技巧&#xff1a;免费离线文字识别完全指南 【免费下载链接】Umi-OCR OCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片&#xff0c;PDF文档识别&#xff0c;排除水印/页眉页脚&#xff0c;扫描/生成二维码。…

2026/8/3 0:00:32阅读更多 →
[具身智能-181]:PC+服务器+具身机器人:构建具身智能从仿真到量产的闭环迭代混合架构

[具身智能-181]:PC+服务器+具身机器人:构建具身智能从仿真到量产的闭环迭代混合架构

PC服务器具身机器人&#xff1a;构建具身智能从仿真到量产的闭环迭代混合架构一、前言&#xff1a;具身智能需要“混合算力闭环系统”传统人工智能依赖云端静态数据集训练&#xff0c;不具备物理交互能力&#xff0c;无法适应真实世界的不确定性。具身智能&#xff08;Embodied…

2026/8/3 0:00:32阅读更多 →
[具身智能-181]:大分布式通信模型对比:看懂为什么 DDS 是 ROS2 底层通信最优解

[具身智能-181]:大分布式通信模型对比:看懂为什么 DDS 是 ROS2 底层通信最优解

前言构建机器人、具身智能这类分布式实时系统&#xff0c;通信底座直接决定整套系统的实时性、容错性、组网能力。分布式领域长期存在 4 类经典通信架构&#xff1a;点对点模式、Broker 中间代理模式、广播模式、以数据为中心&#xff08;DDS&#xff09;模式。很多开发者疑惑&…

2026/8/3 0:00:32阅读更多 →
无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南&#xff1a;如何实现快速高效的多媒体处理 【免费下载链接】lossless-cut The swiss army knife of lossless video/audio editing 项目地址: https://gitcode.com/gh_mirrors/lo/lossless-cut 在数字媒体创作领域&#xff0c;视频编辑处理的质量损…

2026/8/3 2:32:59阅读更多 →
AI辅助本科论文写作:8大工具评测与高效使用指南

AI辅助本科论文写作:8大工具评测与高效使用指南

1. 本科生论文写作的AI辅助现状本科毕业论文是每个大学生必须跨越的一道坎。记得我当年写论文时&#xff0c;光是文献检索就花了整整两周时间&#xff0c;打印的参考文献堆满了半个书桌。如今AI技术的发展为学术写作带来了革命性变化&#xff0c;合理使用这些工具可以节省80%以…

2026/8/3 2:33:01阅读更多 →
如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统&#xff1a;从零开始搭建Python抢票助手 【免费下载链接】ticket-purchase 大麦自动抢票&#xff0c;支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 还在为抢不到热门演唱会门票…

2026/8/3 2:33:04阅读更多 →