AI Agent 到底是什么?从大模型、工作流到智能体,一篇讲清
现在很多产品都会在介绍里写上 Agent。
有的接入了大模型,有的能调用几个工具,有的只是把原来的自动化流程换了名字。Agent 和普通工作流到底差在哪?只要接了大模型和 API,就能算 Agent 吗?
这个问题没有必要从一长串定义讲起。对程序员来说,更实用的办法是拆开看:模型负责什么,工具负责什么,任务路径又由谁决定。

Agent 为什么容易被讲复杂
Agent 这个词被用在了不同层次的产品上。带知识库的聊天机器人、包含大模型节点的审批流程,以及能拆任务、选工具、处理异常的系统,都可能被叫作 Agent。它们的自主程度差别很大。
所以,与其纠结某个产品“算不算”,不如问三个更具体的问题:
• 模型能看到哪些信息?
• 系统可以调用哪些工具?
• 下一步行动是开发者提前写死的,还是系统会根据当前状态进行选择?
第三个问题,最接近 Agent 和普通工作流的分界。
大语言模型更像一个受限的“大脑”
大语言模型擅长理解输入、分析问题,并生成文字或代码。
用户说“帮我查一下订单”,模型通常能判断这是订单查询需求,也知道可能需要订单号和订单系统。它还能写出一段合理的处理步骤。
但知道怎么做,不等于能把事情做完。
如果没有订单系统的访问权限和查询工具,它只能给出建议或追问信息,无法读取真实订单。
把大模型类比成“大脑”有助于入门,但一个可工作的应用还需要工具权限、状态、流程控制和停止条件。模型只是其中的决策或生成组件。
工作流是提前设计好的路径
固定工作流的特点,是开发者先把执行路径设计出来。
例如订单查询可以被写成一条明确的链路:
接收问题 → 提取订单号 → 查询订单系统 → 整理结果 → 返回用户。
如果没有订单号,就进入“要求用户补充订单号”的分支;如果接口超时,就按预设次数重试;如果仍然失败,就转人工处理。

这类系统的路径清楚,结果容易预测,问题也容易定位。对于财务审批、权限变更等容错空间较小的任务,确定性往往比自主性更重要。
工作流并不低级。系统是否合适,要看任务需要,而不是看它用了多少新名词。
它的局限是大部分路径要提前定义。预设之外的情况越多,分支和维护成本就越高。
Agent 的核心,是决定下一步行动
Agent 也有流程,但流程不一定把每一步都提前写死。
它围绕一个目标运行,读取当前状态,然后选择下一步行动。行动执行后,工具会返回新的结果,系统再据此判断是继续、修改、重试,还是停止。
可以把它概括成一个循环:
目标 → 理解当前状态 → 选择行动 → 调用工具 → 观察结果 → 继续、修改或停止。

例如查询订单时,Agent 发现订单号缺失就先追问;拿到信息后选择订单系统;查询失败时,再根据错误类型决定有限重试、换路径或转人工。
这里真正发生变化的,不是系统多接了一个 API,而是模型参与了行动选择和任务推进。
Agent 不能无限尝试。它仍然需要权限边界、重试上限、超时规则和停止条件,否则“自主”很容易变成不可预测。
用查询订单对比三种系统
把三种实现放在一起,区别会更直观。
只有大模型: 它能理解用户想查订单,也能告诉用户需要提供订单号。但没有外部工具时,它无法读取真实数据。
固定工作流: 系统按预设步骤提取订单号、调用接口、格式化结果。标准问题处理得很稳定,异常情况则依赖开发者提前写好的分支。
Agent: 系统根据当前信息决定先追问还是查询,根据订单类型选择工具,再根据工具结果决定继续、重试、换路径或结束。

三种方式并不互斥。真实项目常把高风险、强规则的部分放进固定工作流,只在需要动态判断的局部引入 Agent。混合架构通常更容易控制。
一个基础 Agent 通常包含什么
一个能工作的 Agent,至少要处理下面几类问题:
• 模型:负责理解输入、推理或生成行动建议。
• 工具:让系统能够搜索、查询数据库、执行代码或访问企业系统。
• 状态与上下文:记录已知信息、执行历史、工具结果和当前任务进度。
• 任务推进机制:决定模型何时判断、工具何时执行、结果怎样回到下一轮。
• 停止条件:规定什么叫完成,什么情况下应该中止或转人工。
少了工具,Agent 只能停留在建议层;少了状态,它容易忘记执行历史;少了停止条件,则可能重复调用或过度重试。
四种常见的 Agent 能力
Reflection:对结果做一次检查
Reflection 用来检查结果是否有遗漏或错误,适合代码测试、字段完整性这类有明确标准的任务。没有外部证据或评价标准时,“再想一遍”也可能重复原来的错误,并增加调用成本。
Tool Use:把判断变成实际行动
Tool Use 让模型可以调用搜索、数据库、代码执行器或业务系统。工具描述不清、参数约束不足、权限过大,都会让调用不稳定。“模型调用过一次 API”也不等于 Agent;工具调用只是其中一项能力。
Planning:为复杂目标安排步骤
Planning 用来处理需要多步完成、存在前后依赖的任务。计划不是越长越好,环境变化后,过早生成的细节很快会失效。实际系统更需要边执行边更新。
Multi-Agent:让不同角色协作
Multi-Agent 把任务分给不同角色,例如检索、分析和检查。当边界清楚、不同环节需要不同工具时,角色拆分才有价值。如果单 Agent 已能稳定完成任务,再拆分只会增加通信、Token 消耗和故障点。

什么时候不应该使用 Agent
如果业务步骤固定、规则明确,而且每一步都要求可追踪、可复现,固定工作流通常更合适。
如果一次错误会造成资金、权限或合规风险,也不应该把决定权无边界地交给模型。可以让模型负责识别和建议,真正的执行仍由规则、审批或人工确认控制。
如果现有工作流已经稳定解决问题,Agent 收益有限,加入模型决策反而会增加调试难度、成本和结果波动。
系统复杂度应该由任务决定。不是所有判断都需要 Agent,也不是所有流程都值得改造成多智能体。
Agent 跑通一次,不代表已经做完
一次演示成功,只能说明系统在这个输入下走通了。
要判断它是否可用,需要测试信息完整、信息缺失、工具异常、目标中途变化,以及系统无法完成等情况。
评估不能只看回复是否通顺,还要检查任务是否完成、工具和参数是否正确、失败路径是否合理、该停止时有没有停止。成本和响应时间也要记录。
失败案例比成功演示更有价值。它会暴露问题到底出在提示词、工具描述、状态设计、流程约束,还是评价标准。Agent 的稳定性就是这样一点点调出来的。
学习 Agent,更合理的顺序
不要从多智能体平台或复杂框架开始。
先理解大模型能做什么、不能做什么,再选一个边界清楚的任务,例如查询公开信息、整理固定格式的数据,或者调用一个简单工具。
先用普通代码搭出工作流,确认输入、输出和异常路径,再接入必要工具和状态记录,让模型只在需要判断的节点选择下一步。
等单条链路可观察、可测试之后,再考虑 Reflection、Planning 或 Multi-Agent。这样做看起来慢一些,却更容易知道每一层复杂度解决了什么问题。
结语
Agent 的价值不在于用了多少框架,也不在于流程图里放了几个模型节点。
真正需要回答的是:系统能否围绕目标读取状态,选择合适的行动,并在工具返回结果后继续推进;遇到异常时,它能否在约束内处理;任务完成后,它是否知道该停下来。
如果固定工作流已经能稳定完成任务,就没有必要为了 Agent 而 Agent。如果任务确实需要动态判断,再把自主决策放进合适的位置。
更多推荐

所有评论(0)