☰
AI Agent 术语全解析:从 ReAct 到 Multi-Agent 的实战避坑指南
2026/10/22 14:40:33 网站建设 项目流程

1. 从一堆黑话讲起:AI Agent 术语到底在解决什么问题

刚接触 AI Agent 这个方向的时候,我最大的感受不是技术难,而是“听不懂人话”。一场技术分享下来,满耳朵都是 Planning、Memory、Tool Use、ReAct、Reflection、Multi-Agent、Orchestration,每个词单拎出来都认识,拼在一起就不知道对方在说什么。更麻烦的是,同一个概念在不同团队嘴里叫法还不一样:有人把调用外部接口叫 Tool Use,有人叫 Function Calling,还有人叫 Action;有人把任务拆解叫 Planning,有人叫 Task Decomposition,还有人直接叫 Workflow。你要是没个术语对照表,光在沟通上就得先掉一层皮。

这篇东西就是我在踩了无数坑之后,把 AI Agent 领域常见术语做的一次系统梳理。它不是什么官方标准词典,而是一份“从业者视角的翻译手册”——把那些听起来高大上的黑话,翻译成能落地、能上手、能跟人聊明白的大白话。核心关键词就一个:AI Agent 术语。围绕它,我会把 Agent 的组成结构、运行机制、常见架构模式、多智能体协作、评估与调试这几个方向的术语全部拆开讲清楚。

这份内容适合谁看?如果你是刚转进 AI 应用方向的开发者,它能帮你快速建立术语地图,不再被会议里的缩写词绕晕;如果你已经在做 Agent 相关项目,它能帮你把脑子里那些模糊的概念对齐,避免团队内部各说各话;如果你是非技术背景的产品或运营,它也能让你看懂技术方案里到底在讲什么,不至于被“我们用了 ReAct 加 Memory 加 Tool Use”这种话唬住。

我个人的判断是:AI Agent 这个方向,术语混乱本身就是当前阶段的一个真实特征。因为它跨了太多领域——有来自强化学习的(Policy、Reward、Environment),有来自传统软件工程的(Orchestration、Pipeline、State),有来自大模型圈的(Prompt、Context、Token),还有一堆是新造出来的(ReAct、Reflexion、AutoGPT 式循环)。这些词混在一起,不梳理清楚,沟通成本会高得离谱。所以下面我按“结构—机制—模式—协作—评估”这条线,把术语一个个摆出来讲。

2. Agent 的基本骨架:先把组成部件认全

2.1 Agent、Environment、Observation、Action 这四个词是地基

任何 Agent 系统,最底层都逃不开这四个概念。Agent就是那个“会自己做事的智能体”,它可以是一个大模型加上一堆外围代码,也可以是一个更复杂的系统。Environment是 Agent 所处的环境,也就是它能感知和操作的外部世界——可能是一个网页、一个数据库、一个操作系统,也可能是一个模拟的游戏世界。Observation是 Agent 从环境里“看到”的信息,比如网页的 HTML、数据库返回的结果、用户的输入。Action是 Agent 对环境“做”的事情,比如点击按钮、执行 SQL、发送消息。

这四个词的关系可以用一句话概括:Agent 在 Environment 里,根据 Observation 决定 Action,Action 又改变 Environment,产生新的 Observation。这个循环就是 Agent 的心跳。我见过不少新手一上来就研究 ReAct、Reflexion 这些高级模式,结果连 Observation 和 Action 的边界都没分清,写出来的代码里 Agent 既在“看”又在“做”,逻辑一团乱。所以我的建议是:先把这四个词刻在脑子里,后面所有术语都是在这四个词之上做文章。

提示:Observation 不等于 Prompt。Observation 是环境给的信息,Prompt 是你喂给模型的信息。很多时候你需要把 Observation 加工、裁剪、格式化之后才能变成 Prompt 的一部分。这两个概念混用,是调试时最常见的坑之一。

2.2 System Prompt、User Prompt、Context Window 的边界

System Prompt是给 Agent 设定“人设”和“规则”的那段话,比如“你是一个严谨的数据分析助手,只根据给定数据回答,不确定就说不确定”。User Prompt是用户当前这一轮的输入。Context Window是模型一次能处理的最大 token 数量,它决定了你能塞多少历史对话、多少工具返回结果、多少背景知识。

这三个词看起来简单,但实际项目里最容易出问题的就是 Context Window 的管理。我做过一个客服 Agent,一开始把所有历史对话都塞进 Context,结果跑到十几轮之后直接超限,模型开始丢信息。后来改成“滑动窗口 + 关键信息摘要”的策略,才稳定下来。这里的关键术语是Context Management,也就是上下文管理,它专门研究怎么在有限的 Context Window 里塞进最有用的信息。常见手段包括:截断旧对话、对历史做摘要、把长期信息存到外部再按需检索。

2.3 Memory:短期记忆、长期记忆、情景记忆

Memory是 Agent 术语里被滥用最严重的一个词。严格来说,它分好几层。Short-term Memory短期记忆,通常就是当前对话的上下文,存在 Context Window 里。Long-term Memory长期记忆,是存在外部存储里的信息,比如向量数据库、关系数据库、文件系统,需要的时候再检索回来。Episodic Memory情景记忆,指的是 Agent 对“过去发生过什么”的记录,比如“上次用户问过退货政策,我回答错了,后来纠正了”。Semantic Memory语义记忆,指的是事实性知识,比如“退货期限是 7 天”。

我自己的经验是:大部分项目其实只需要短期记忆加一个简单的长期记忆就够了,上来就搞情景记忆、语义记忆分层,往往是过度设计。但如果你做的是需要长期陪伴、持续学习的 Agent,那这套分层就有意义。判断标准很简单:Agent 需不需要“记住上次犯的错并改进”?需要,就上情景记忆;不需要,就别给自己找麻烦。

2.4 Tool、Function Calling、Action Space 的区别

Tool是 Agent 能调用的外部能力,比如搜索、计算器、数据库查询、代码执行。Function Calling是大模型提供的一种能力,让模型输出结构化的函数调用请求,而不是纯文本。Action Space是 Agent 所有可执行动作的集合,它是一个更抽象的概念,Tool 是 Action Space 的具体实现。

这里有个常见误区:很多人以为 Function Calling 就是 Tool Use。其实 Function Calling 只是“模型表达要调用某个函数”的机制,真正执行函数、把结果返回给模型,还是你自己写的代码。我见过有人以为开了 Function Calling 模型就会自己去调 API,结果发现模型只是输出了一段 JSON,啥也没干。所以记住:Function Calling 是“说”,Tool Use 是“做”,中间那层执行逻辑得你自己补。

3. 运行机制术语:Agent 到底是怎么“想”和“做”的

3.1 ReAct:Reasoning 和 Acting 的交替循环

ReAct是 Reasoning + Acting 的缩写,是目前最主流的 Agent 运行模式之一。它的核心思想是:让模型交替进行“推理”和“行动”。推理阶段,模型输出一段思考,比如“我需要先查一下这个用户的订单状态”;行动阶段,模型决定调用某个工具,比如“调用订单查询接口,参数是用户 ID”。工具返回结果后,模型再进入下一轮推理,直到得出最终答案。

ReAct 之所以流行,是因为它把“思考过程”显式化了。传统的一问一答模式,模型直接给答案,你不知道它怎么想的。ReAct 模式下,你能看到模型的每一步推理,调试起来方便很多。但它也有代价:token 消耗大,因为每一步推理都要输出;延迟高,因为要等多轮循环。我实测下来,简单任务用 ReAct 是杀鸡用牛刀,复杂任务才值得上。

注意:ReAct 的推理文本不是给用户看的,是给模型自己“打草稿”用的。很多框架会把这部分隐藏起来,只把最终答案返回给用户。如果你在做调试,记得把中间推理打开,不然出了问题你根本不知道是哪一步歪了。

3.2 Planning 与 Task Decomposition:把大任务拆成小步骤

Planning是 Agent 制定行动计划的能力。Task Decomposition是任务拆解,把一个大任务拆成若干可执行的小任务。这两个词经常一起出现,但侧重点不同:Planning 更强调“顺序和策略”,Task Decomposition 更强调“拆分粒度”。

举个例子,用户说“帮我订一张明天去某地的机票”。Planning 要考虑:先查航班,再比价格,再选座位,最后下单。Task Decomposition 要把“查航班”拆成“确定出发地、确定目的地、确定日期、调用查询接口”。拆得太粗,Agent 执行时容易卡住;拆得太细,步骤太多,token 烧得快。我的经验是:拆到“每一步都能用一个工具调用完成”这个粒度最合适。

常见的 Planning 模式有几种。Plan-and-Execute是先制定完整计划再逐步执行,适合步骤明确的场景。Iterative Planning是边执行边调整计划,适合环境不确定的场景。Hierarchical Planning是分层规划,高层定大方向,低层定具体动作,适合特别复杂的任务。选哪种,取决于你的任务有多“野”。

3.3 Reflection 与 Reflexion:让 Agent 自己复盘

Reflection是 Agent 对自己的输出进行反思和检查。Reflexion是一个更具体的框架,它让 Agent 在失败后生成一段“反思文本”,记录这次为什么失败,下次怎么改进。这两个词的区别有点像“反思”和“反思日记”:Reflection 是动作,Reflexion 是带记忆的反思机制。

我做过一个代码生成 Agent,一开始它总是写出有语法错误的代码。后来加了 Reflexion 机制:每次代码执行失败,就让模型分析错误原因,把原因存到记忆里,下次生成时参考。效果很明显,重复错误率下降了一大截。但这里有个坑:反思文本如果太长,会挤占 Context Window;如果太短,又记不住关键信息。我的做法是限制反思文本在 100 字以内,只记“错误类型 + 修正方向”,不记具体代码。

3.4 Chain of Thought、Tree of Thought、Graph of Thought

这三个词是推理结构的不同形态。Chain of Thought(CoT)是线性推理,一步接一步。Tree of Thought(ToT)是树状推理,每个节点可以分叉出多个可能,然后评估哪条路径最好。Graph of Thought(GoT)是图状推理,节点之间可以有复杂的依赖关系,甚至合并、循环。

CoT 最常用,也最省 token。ToT 适合需要探索多种可能性的场景,比如解谜、规划。GoT 目前还比较学术,工程落地少。我个人的建议是:除非你的任务真的需要“多路径探索”,否则 CoT 就够了。ToT 的 token 消耗是 CoT 的好几倍,效果不一定成正比。

4. 架构模式术语:单 Agent、多 Agent、Orchestration

4.1 Single Agent 与 Multi-Agent 的取舍

Single Agent就是一个 Agent 干所有事。Multi-Agent是多个 Agent 分工协作。Multi-Agent 听起来很酷,但我的经验是:能单 Agent 解决的就别上 Multi-Agent。因为多 Agent 带来的通信成本、协调成本、调试成本,往往超过它带来的收益。

那什么时候该上 Multi-Agent?我的判断标准有三条:任务能清晰拆成几个独立子任务;每个子任务需要不同的“人设”或工具集;子任务之间有明确的输入输出关系。比如一个“写报告”的任务,可以拆成“资料搜集 Agent”“数据分析 Agent”“撰写 Agent”“审校 Agent”,这四个角色确实需要不同的能力和提示词,那 Multi-Agent 就合理。

4.2 Orchestration、Router、Supervisor 的分工

Orchestration是编排,指的是怎么协调多个 Agent 或工具的执行顺序。Router是路由器,根据输入决定交给哪个 Agent 处理。Supervisor是监督者,负责监控其他 Agent 的执行,必要时干预或重新分配任务。

这三个词经常一起出现。一个典型的多 Agent 架构是:Supervisor 接收任务,Router 判断该给谁,Orchestration 负责调度执行顺序。我见过一些团队把这三个角色混在一个 Agent 里,结果那个 Agent 的 Prompt 长得离谱,维护起来极其痛苦。更好的做法是拆开:Router 只做分类,Supervisor 只做监控,Orchestration 用代码写死流程。各司其职,出问题也好定位。

4.3 Handoff、Delegation、Broadcast 的通信方式

Handoff是交接,一个 Agent 把任务转给另一个 Agent。Delegation是委派,一个 Agent 把子任务分配给另一个 Agent,但自己保留控制权。Broadcast是广播,一个 Agent 把消息发给所有 Agent。

Handoff 适合“这件事我不擅长,你来”的场景。Delegation 适合“这件事你去做,做完告诉我”的场景。Broadcast 适合“通知所有人”的场景,但实际项目里用得少,因为容易造成信息过载。我踩过的坑是:Handoff 和 Delegation 混用,导致任务被转来转去,最后没人负责。后来定了个规矩:Handoff 必须明确“交接后我不再管”,Delegation 必须明确“我还在等结果”。这样责任就清晰了。

5. 评估与调试术语:怎么判断 Agent 好不好用

5.1 Trajectory、Step、Turn 的计数方式

Trajectory是轨迹,指 Agent 从开始到结束的完整执行路径。Step是步,指轨迹中的一次推理或一次行动。Turn是轮,通常指一次用户输入到 Agent 输出之间的交互。

这三个词在评估时特别重要。比如你说“这个 Agent 平均 5 步完成任务”,那 Step 的定义是什么?是一次工具调用算一步,还是一次推理算一步?不同定义下数字差很多。我建议在团队内部统一:Step 等于一次“推理 + 行动”的完整循环,Turn 等于一次用户交互。这样沟通起来不会鸡同鸭讲。

5.2 Success Rate、Task Completion、Efficiency 的衡量

Success Rate是成功率,任务完成的比例。Task Completion是任务完成度,有些任务不是非黑即白,可能完成了 80%。Efficiency是效率,通常用步数、token 消耗、时间来衡量。

这三个指标要一起看。只看成功率,Agent 可能为了成功疯狂重试,token 烧光;只看效率,Agent 可能草草了事,成功率低。我的做法是设一个“综合分”:成功率占 60%,效率占 40%,低于阈值就报警。这样能避免单一指标失真。

5.3 Hallucination、Drift、Loop 的典型故障

Hallucination是幻觉,Agent 编造不存在的信息。Drift是漂移,Agent 在执行过程中偏离了原始目标。Loop是死循环,Agent 反复执行同一个动作出不来。

这三个是 Agent 最常见的故障。Hallucination 通常靠“强制引用来源”来缓解。Drift 靠“定期回顾原始目标”来缓解。Loop 靠“设置最大步数 + 重复动作检测”来缓解。我实测下来,Loop 是最容易被忽视的,因为很多框架默认不设步数上限,Agent 能一直跑下去。一定要设上限,哪怕设个 50 步,也比无限跑强。

6. 常见问题与排查技巧实录

6.1 术语混用导致的沟通灾难

最常见的场景:产品说“让 Agent 自己规划”,开发理解成“上 Plan-and-Execute”,结果做出来发现产品只是想要“多轮对话”。这种沟通灾难的根源就是术语没有对齐。我的建议是:项目启动时先花半小时做一次“术语对齐会”,把 Planning、Memory、Tool Use 这些词的定义写下来,大家签字确认。听起来很形式主义,但真的能省掉后面无数扯皮。

6.2 Agent 不调用工具怎么办

这是新手最常问的问题。原因通常有三个:Prompt 里没写清楚工具怎么用;工具描述太模糊,模型不知道什么时候该调;模型本身能力不够,不支持 Function Calling。排查顺序是:先看 Prompt,再看工具描述,最后换模型。我踩过的坑是工具描述写得太技术化,比如“查询数据库”,模型根本不知道什么时候该用。后来改成“当用户询问订单状态时,用这个工具查订单”,调用率立刻上去了。

6.3 Agent 陷入死循环怎么破

死循环的典型表现是 Agent 反复调用同一个工具,或者反复输出同一段推理。破解方法有三层:第一层,设最大步数,硬性截断;第二层,检测重复动作,如果连续两步动作相同,强制中断;第三层,在 Prompt 里加一句“如果你发现自己在重复,请停下来重新思考”。三层叠加,基本能解决 90% 的死循环。

6.4 多 Agent 互相甩锅怎么解

多 Agent 系统里,最常见的问题是“三个和尚没水喝”:A 觉得该 B 做,B 觉得该 C 做,C 觉得该 A 做,最后任务没人做。解法是明确“唯一负责人”制度:每个任务必须有一个 Owner Agent,其他 Agent 只是协助。Owner 负责最终交付,协助者只提供输入。这样就不会出现甩锅。

常见问题典型表现排查方向解决手段
不调用工具模型只输出文本Prompt、工具描述、模型能力改描述、加示例、换模型
死循环重复动作或推理步数上限、重复检测设上限、加中断、改 Prompt
目标漂移越做越偏原始目标是否还在 Context定期回顾、加目标提醒
幻觉编造信息是否有来源约束强制引用、加校验
甩锅任务无人负责责任是否明确唯一负责人制度

6.5 我个人的几条避坑心得

第一,术语不要贪多。新手最容易犯的错是把所有术语都用上,结果系统复杂到自己都维护不了。我的原则是:能用简单模式解决就不用复杂模式,能单 Agent 就不多 Agent。

第二,Prompt 里少用术语,多用大白话。你写“请进行 Task Decomposition”,模型可能不如你写“请把任务拆成几步”理解得好。术语是给人沟通用的,不是给模型用的。

第三,调试时把中间过程全打开。ReAct 的推理、工具的输入输出、Memory 的读写,全部打日志。Agent 出问题,十有八九是中间某一步的信息不对,你不打开看根本找不到。

第四,别迷信新术语。这个领域每个月都有新词出来,但底层逻辑变化没那么快。把 ReAct、Planning、Memory 这几个基础打牢,新词来了你也能快速映射到已知框架里。

这个方向后续还可以这样扩展:把每个术语对应的代码实现写出来,做成一个“术语—代码”对照仓库;或者按“最小可用 Agent”的思路,从零搭一个只包含核心术语的 Demo,再逐步加功能。我个人觉得,术语这东西,光看定义记不住,非得自己写一遍代码,才能真正理解它到底在说什么。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询