AI Agent的浪费从何而来:模型调用还是编排层?

AI Agent的真正浪费藏在编排层,而非模型调用本身。
当前AI Agent可观测性工具普遍停留在"结果层"——记录调用了什么、花了多少token,却无法回答这些调用为何发生。开发者基于开源CLI工具KORA Doctor的研究发现,生产环境中最大的浪费并非来自重复推理,而是编排层在多步骤执行中反复抓取相同工具数据,这类浪费在模型调用发生之前就已产生,并会连锁触发后续检索与推理开销。这一发现推动了一个视角转变:Agent优化不应简单等同于"换更便宜的模型"或"压缩prompt",而需要覆盖整个执行链条,包括工具调用、重试验证和规划循环在内的完整执行成本分析。
被忽视的问题:不是"调用了什么",而是"为什么调用"
随着AI Agent在生产环境中的大规模落地,可观测性(observability)成了绕不开的话题。市面上大多数工具都能告诉你一个Agent调用了哪些接口、消耗了多少token、花了多少钱。但一位Reddit开发者在深入研究后提出了一个更尖锐的问题:这些调用究竟为什么会发生?
这位开发者在AUDR发布后开始关注这一领域,并构建了一个名为 KORA Doctor 的开源CLI工具,专门用于检查Agent的执行轨迹(traces)。他的核心观点是:当前的Agent可观测性仍然停留在"结果层",缺乏对"动机层"的洞察。知道花了多少钱是一回事,知道这笔钱为什么被花掉、能不能省掉,是完全不同的另一回事。

可观测性(observability)一词源自控制理论,在软件工程中指通过系统的外部输出来推断其内部状态的能力。传统的应用监控(monitoring)侧重于预定义的指标和告警,而可观测性则强调在未知故障场景下的"事后追因"能力,通常依赖三类数据支柱:日志(logs)、指标(metrics)和分布式追踪(traces)。在AI Agent语境下,traces尤为关键——它记录了一次完整Agent运行中每个步骤的调用链、耗时与上下文,是还原"Agent到底在做什么"的主要手段。当前大多数Agent可观测性工具(如LangSmith、Langfuse等)已能较好地捕获traces数据,但正如本文所指出的,捕获"发生了什么"与理解"为什么发生"之间,仍存在相当大的分析鸿沟。
KORA Doctor 盯住的几类典型浪费
这个开源工具目前聚焦于几类在真实Agent运行中反复出现的浪费模式:
- 重复的模型调用:同样的推理被反复触发,没有缓存或复用机制
- 缓存与复用缺失:本可命中缓存的请求却重新走了一遍完整流程
- 确定性工作被交给LLM:一些可以用规则或代码直接完成的任务,却动用了大模型
- 大材小用:用昂贵的高端模型去处理极其简单的任务
- 过度的规划与编排:planning和orchestration环节本身消耗了大量资源
这些模式的共同点在于,它们并不总是出现在"模型调用"这个最显眼的环节。很多浪费其实隐藏在Agent运行流程的更深处。
来自生产环境的关键反馈:浪费始于模型调用之前
真正改变作者思路的,是一条来自生产环境用户的反馈。这位在生产环境中运行Agent的用户表示,他们最大的浪费来源并不是重复推理,而是在多个步骤中反复抓取同样的工具数据(re-fetching the same tool data)。
这个发现的意义在于:浪费可以在模型调用发生之前就已经产生。编排层(orchestration layer)会制造出不必要的检索(retrieval)、工具调用(tool calls)和重试(retries),而这些冗余操作之上还会再叠加一层推理成本。换句话说,一次不必要的工具调用,可能会连锁触发后续一整串的检索与推理开销。
这就把问题从单纯的"LLM成本优化"推向了一个更广的维度——整个Agent运行过程中的执行浪费(execution waste)。
编排层(orchestration layer)是AI Agent架构的核心组件,负责协调多个子任务的执行顺序、决定何时调用哪个工具、如何处理中间结果以及何时终止循环。常见的编排框架包括LangChain、LlamaIndex、AutoGen等。由于编排逻辑通常以代码形式存在,而非直接是LLM的输出,传统的token计量工具对这一层的开销几乎是"盲区"。工具数据的重复抓取问题尤为典型:当Agent在多步推理过程中没有对中间结果进行缓存,每一步都会重新发起相同的API请求或数据库查询,这些调用本身不消耗token,却会产生真实的延迟成本、API费用和下游的推理冗余。这一层面的浪费只有通过完整的执行轨迹分析才能被识别。
从"模型成本"到"执行成本"的视角转变
长期以来,Agent成本优化的讨论往往默认等同于"降低token消耗"或"换用更便宜的模型"。但这位开发者的实践表明,这种视角可能抓错了重点。
真正的浪费地图应该覆盖整个执行链条,至少包括以下几个潜在源头:
模型调用(Model calls)
直接的推理成本,最容易被监控,也最容易被当作唯一的优化目标。
工具调用与检索(Tool calls & Retrieval)
这是生产用户反馈中最隐蔽也最昂贵的一类。重复抓取相同数据、冗余的检索请求,往往在不知不觉中累积成巨大开销。
重试与验证(Retries & Validation)
失败重试、反复的结果校验,都会在不增加实质价值的前提下成倍放大资源消耗。
规划循环(Planning loops)
当Agent陷入过度规划或低效的编排循环时,大量算力被消耗在"决定下一步做什么"上,而非真正完成任务。
这种从"模型成本"到"执行成本"的视角转变,意味着Agent的优化需要一个能够还原完整执行轨迹的工具,而不仅仅是一个token计数器。
对生产环境开发者的启示
作者明确表示,KORA Doctor 的构建方向正是围绕"真实轨迹中实际出现的问题"展开的,因此他特别希望征集来自生产环境的真实案例。他抛出的问题也很值得每一个运行Agent的团队自问:你的浪费主要来自哪里——模型调用、工具调用、重试、检索、规划循环,还是重复验证?
对于正在生产环境中部署Agent的团队,这个讨论至少带来两点可操作的思考:
第一,不要把成本优化简单等同于换模型或压缩prompt。如果浪费的根源在编排层,那么再便宜的模型也只是在为冗余流程买单。
第二,可观测性工具的价值在于追因,而非仅仅记账。能回答"这次调用为什么发生"的工具,才能真正指导优化决策。
随着Agent架构日益复杂,编排层正逐渐成为性能与成本的隐性瓶颈。KORA Doctor 这类开源工具的出现,代表了一种值得关注的趋势:把Agent的可观测性从结果层下沉到执行逻辑层。
相关项目地址:AUDR(https://openaudr.dev/)与 KORA Doctor(https://github.com/Krako-Labs/kora-doctor)。
相关推荐

亚马逊新款Alexa平板来袭:超值价格背后的广告隐忧
亚马逊新款Alexa平板以229至549美元的超值价格冲击安卓平板市场,有望成为默认选择。但低价背后是广告补贴与购物推送的隐忧,本文分析其机遇与潜在陷阱。

ChatGPT移动端上线DOT:随身AI代理如何帮你搞定工作
OpenAI的ChatGPT移动端正式上线DOT主动式AI代理,支持iOS和Android。本文详解DOT的设置流程、个性化配置,以及它如何自主编码、跨Slack协作完成复杂任务。

Claude Code v2.1.296 更新解析:子代理、权限与跨平台修复
Claude Code v2.1.296 版本更新详解:新增子代理 autoCompactWindow 与工作流模型控制,加固 Bash 权限与密钥脱敏,优化 Windows 兼容性,并下调 Sonnet 5.5 缓存读取价格。