新闻

AI Agents的Token经济学:如何压低成本但不牺牲质量

新闻 2026-05-11 0 次浏览

一个能够处理日吞吐量 1000 万次对话的 Shopify 规模级商户助手,若未做优化,月度成本将高达 210 万美元;而经过优化,这一数字可压低至 45 万美元。这 78% 的价差并非源自算法层面的突破,而是归功于缓存、路由策略以及几项工程纪律——这些往往是大多数团队直到收到账单时才想起补课的领域。

AI Agent 并非只是加了几个步骤的聊天机器人。单一的用户请求会触发规划、工具筛选、执行、验证,甚至频繁的重试循环——其 Token 消耗量大约是直接对话交互的 5 倍。如果一个 ReAct 循环运行 10 个周期,相比单次处理,其 Token 耗用量将达到 50 倍。考虑到前沿模型的定价,这种数学模型很快就会变成财务负担。

本文将深入剖析 Agent 成本的来源机制,并介绍那些真正能发挥效用、且附带具体数据的优化技术。

为何 Agent 成本不同于聊天机器人成本

首先要消化的是输出 Token 的溢价问题。在主流供应商中,输出 Token 的定价通常是输入 Token 的 3 到 8 倍,因为生成过程是串行的,而输入处理则是并行的。对于侧重推理的模型,这一比例甚至达到 8:1。当你的 Agent 生成冗长的工具调用响应、详尽的推理轨迹或长篇摘要时,你正在为每一个输出 Token 支付溢价。

上下文长度加剧了这一问题。受限于注意力计算的二次方成本,处理 128K Token 的上下文大约是处理 8K 上下文成本的 64 倍。Agent 系统自然会堆积上下文:系统提示词、工具定义、对话历史、检索切片以及工具响应。每一轮交互,上下文都在增长。大多数团队在预发环境会意识到这一点:当一个在简短测试中单次任务成本仅 0.05 美元的 Agent,面对真实的文档语料库时,成本突然飙升至 1.50 美元。

目前,最便宜与最昂贵的模型选项之间价差约为 60 倍。Gemini Flash-Lite 的输入/输出 Token 价格约为每百万 0.075/0.30 美元,而前沿推理模型则高达每百万 15/60 美元。这种价差是一个机会——但前提是你必须有策略地进行路由。

Prompt Caching:最唾手可得的节省

Prompt 缓存的工作原理是复用先前请求中计算出的键值注意力张量,前提是新请求与旧请求具有共同的前缀。Anthropic 为缓存输入 Token 提供 90% 的折扣(0.30 美元/M 对比 3.00 美元/M),Google 提供 75% 的折扣,而 OpenAI 则对符合条件的请求自动应用 50% 的折扣。

对于 Agent 系统而言,其含义至关重要:构建你的 Prompt,确保静态内容置于首位。系统提示词、工具定义、少样本示例、策略文档——所有这些都应构成稳定的前缀。动态内容(实际的用户消息、当前轮次检索的上下文)则置于末尾。这并非美观问题,而是直接决定了缓存能否触发。

Claude Code 在实践中实现了 92% 的缓存命中率,带来了 81% 的处理成本降幅。固定的 10,000 Token 系统提示词在首次请求后几乎不再产生费用。一个客户支持应用将其产品目录从动态插入改为缓存前缀,在未改变输出质量的情况下,每月节省了 12,000 美元的 API 账单。

除了成本,缓存还降低了延迟。当长前缀触发缓存时,平均响应延迟从 800ms 降至 350ms,因为模型跳过了对稳定部分的注意力矩阵重算。

工程层面的开销微乎其微:缓存窗口的 TTL 范围从 5 分钟到约一小时。对于服务重复用户会话的 Agent,热缓存几乎始终可用。对于批处理管道,应构建作业以确保批次内的请求共享前缀。

模型路由与级联:将成本与复杂度匹配

并非每个查询都需要前沿模型。问题在于如何确定哪些需要——答案取决于三个维度:推理复杂度、质量敏感度以及上下文长度。

在典型的生产级 Agent 工作负载中,分布大致如下:

  • 60% 的任务直截了当:提取、分类、格式化、模板化响应。这些在低于 1 美元/M 的模型上即可良好运行。
  • 25% 需要中等推理:多跳问答、代码生成、结构化分析。中端模型(0.80-4 美元/M)能很好地处理这些。
  • 12% 涉及真正的复杂性:模棱两可的指令、长周期的规划、跨异构源的综合。在此处,高级模型物有所值。
  • 3% 需要前沿推理:新颖问题、高风险决策、突发行为。

实施良好的路由系统在典型的 Agent 部署中可实现 30-60% 的成本削减,而顶尖实现甚至能达到 87%。

针对 Agent 系统的实用模式是将编排与执行分离。使用昂贵的模型用于规划层——它读取相对较短的任务描述并做出路由决策,因此其 Token 消耗是受限的。使用廉价模型用于执行步骤:摘要、提取、格式转换、检索排序。由 Claude Haiku 执行工具调用,而 Sonnet 或 Opus 规划整体策略,这是一种常见且有效的分工。

模型级联将这一理念更进一步:每个请求均从最便宜的层级开始,根据标准(置信度、格式有效性、如果有检索来源则是事实依据)对响应打分,若分数低于阈值则升级。级联增加的延迟通常是值得的——大多数请求在第一层级即完成,升级仅针对少数困难情况触发。

基于置信度的路由需要一些校准。如果你自行构建,logprob 熵是开源模型的一个可用信号。对于专有 API,你需要一个代理评估器(通常是一个更小、更快的模型,用于检查首条响应是否满足你的质量标准)。代理增加的成本通常仅占路由节省费用的不到 5%。

Context Compression:精简输入内容

上下文中的每个 Token 都有直接成本。上下文压缩是将上下文剥离至任务所需的最低限度的实践。

滚动摘要是基线技术。不传递完整的对话历史,而是每 N 轮(通常 5-10 轮)进行一次摘要。摘要向前传递;完整记录则被归档。这使得上下文增长随摘要频率呈线性关系,而非随轮次呈线性关系。权衡在于早期轮次的细粒度细节将不可用——这对大多数用例是可以接受的,但对于需要记住每个决策的代码审查 Agent 则不可接受。

工具输出屏蔽常被忽视。当 Agent 调用网页抓取器、API 或数据库查询时,原始响应通常包含头部、元数据以及与当前任务无关的字段。在将其插入上下文之前剥离这些内容,可减少 60-80% 的工具输出 Token。为每种工具类型编写后处理器,仅提取模型实际需要的字段。

学习型压缩工具如 LLMLingua,使用较小的模型来压缩 Prompt,识别并移除低信息 Token。据报道,客户服务 Prompt 从 800 Token 减少至 40 Token(减少 95%),且能保持可接受的准确性。陷阱在于:压缩本身需要一次 LLM 调用,增加了延迟和 Token 成本。只有当压缩后的 Prompt 被大量请求复用,或者压缩器的成本远低于主模型时,这笔账才算得过来。

检索的相关性过滤很简单:不要传递所有检索到的切片,只传递那些超过余弦相似度阈值的切片。将此阈值从 0.7 提高到 0.8,通常能削减 40-60% 的检索 Token,同时减少否则会稀释模型注意力的噪音。

Semantic Caching:彻底消除调用

语义缓存将 LLM 响应存储在由输入嵌入索引的数据库中。当新查询到达时,将其嵌入与缓存查询进行比较——如果相似度超过阈值,则返回缓存响应,无需调用 API。

在典型的生产工作负载中,约有 31% 的 LLM 查询具有足够高的语义相似度,可从中受益。缓存命中在毫秒级返回(对比秒级),且 API 费用完全为零。对于支持聊天机器人、FAQ 系统以及查询分布呈集群化的应用,语义缓存可以直接消除 20-40% 的 API 调用。

权衡在于对新鲜度的敏感性。对于答案频繁变化的应用,陈旧是一种风险。根据内容域的变化速度配置 TTL。对于静态知识库,激进的 TTL 是合适的。对于实时数据查询,则针对这些查询类型完全禁用语义缓存。

硬性限额绝非可有可无

最便宜的优化手段是防止失控的循环。一份 documented 生产事故:一个 Agent 在一个周末针对损坏的数据源发起了 847,000 次 API 调用,在被暂停前累计产生了 3,847 美元的费用。另一个案例:一个 Agent 在五分钟内调用抓取工具 400 次,因为工具返回“可能还有更多结果”——而 Agent 将其解读为继续获取的邀请。

每个 Agent 在部署前都需要设置三个硬性限额:

  1. 单任务最大迭代次数。 设置为预期平均值的 2-3 倍。大多数 Agent 框架(LangGraph, AutoGen, CrewAI)都将此作为一级配置公开。
  2. 单任务最大 Token 花费。 设置为预发环境观察到的 P95 花费的 3 倍。将其实施为中间件,在每次模型调用前检查累计成本。
  3. 最大墙钟时间。 捕获那些通过反复进行快速、廉价调用从而保持在 Token 预算之下的无限循环。

模棱两可的工具反馈是失控循环最常见的原因。如果工具能返回一个被解读为“继续”的信号,Agent 就会继续下去。在工具输出模式中要明确:包含一个 is_complete 布尔值或 next_action_required 字段,而不是依赖模型来推断终止。

FinOps:上线前所需的监控工具

成本可见性是闭环的关键。没有它,优化只是在瞎猜,异常则是突如其来的惊吓。

最小化可行监控层应追踪:

  • 单次追踪成本。 每次 Agent 运行都应向可观测性系统发送其总成本(输入 Token × 价格 + 输出 Token × 价格,按模型层级细分)。
  • 缓存命中率。 如果此指标低于基线,说明 Prompt 结构或请求模式发生了变化。
  • 输出 Token 比率。 输出 Token / (输入 + 输出) Token。比率上升通常意味着你的 Agent 过于啰嗦——通常可以通过在系统 Prompt 中添加“简洁回复”来修复(这通常能减少 15-25% 的输出 Token)。
  • 完成所需的步骤数。 步骤数增加表明任务难度加大或 Agent 陷入困境。无论哪种情况都值得调查。

Langfuse、Helicone 和 Portkey 等工具在 API 网关级别提供了单次请求成本追踪和预算控制。对于异常检测,设置基于滚动基线 2σ 偏差的花费警报——如果你关注此信号,大多数成本事故在几分钟内即可被检测到。

同一 Agent 在未优化和良好优化的部署之间,成本差异可能高达 30-200 倍。这是目前大多数 AI 团队能获得的最高 ROI 的工程工作。

实战优先级顺序

如果你从零开始,请按以下顺序应用这些技术,达到成本目标即可停止:

  1. Prompt 缓存。 如果你的框架支持,无需更改代码。将静态内容移至前缀。立竿见影。
  2. 硬性限额。 防止导致其他一切变得无关紧要的失控尾部风险。
  3. 输出 Token 控制。 在系统 Prompt 中添加“简洁回复”。监控输出 Token 比率并观察其下降。
  4. 工具输出屏蔽。 为你最高频的工具编写后处理器。
  5. 模型路由。 按复杂度分类任务并路由至适当的层级。从简单的基于规则的分类器开始;如果量级证明合理,再升级为学习型路由器。
  6. 上下文压缩。 为长时间运行的会话实施滚动摘要。
  7. 语义缓存。 如果你的查询分布具有足够的聚类性,则添加此功能。

默认情况下 Agent 系统的成本与经过良好工程化后的成本之间的差距并非微不足道。这是项目能否上线投产,还是在预算审核时被砍掉的区别所在。

References:
点击查看文章原文
上一篇
AI Agent成本调优:Token预算、模型路由与生产FinOps | Zylos Research
下一篇
2026年Agent代币成本调优:压低AI推理支出60-80% | AgentMarketCap
返回列表