一个工具调用失败,Agent 换个参数继续试;RAG 把同一段长上下文反复送进模型;测试时开的插件留在后台自动续费。单看每次调用都说得过去,连起来就是一张失控的账单。
要管住这类支出,工程、财务和业务得看同一份账:谁在调用、为什么调用、失败了几次、用了多少 Token、订阅由谁审批。FinOps 落到 AI Agent 上,先要把这些基本信息理清楚。
账单先拆开,否则只能猜
多个 Agent 共用一个 API Key,供应商账单里通常只剩总消耗。哪条工作流最贵、哪个测试环境忘了关、哪次发布引入了重复调用,都很难追查。
条件允许时,应为不同 Agent 和运行环境拆分 API Key。一条可用的成本记录,至少要串起 Trace ID、模型名称、输入与输出 Token、工具调用、重试次数以及负责人。这样看到异常账单时,才能从费用回到具体任务和日志。
AWS Secrets Manager、HashiCorp Vault 可以用来保存和轮换密钥,但密钥管理不等于消费控制。额度、速率和并发限制,还要在模型供应商、API 网关或内部计费层配置。供应商支持硬限额时,优先启用;只发告警,很容易在夜间任务或批处理期间错过处置时间。
重试权交给状态机
在 Prompt 里写上“失败后停止”,可以提醒模型,却不能代替执行层约束。长链路任务一旦卡住,Agent 可能不断修改参数、重新调用工具,直到超时或余额耗尽。
更稳妥的做法,是把重试次数、错误类型和终止状态写进 LangGraph 等编排框架的状态机。任务达到团队设定的重试上限后,直接结束、降级处理或转入人工审核。同时设置最大执行步数、超时、并发限制和 Rate Limiting,避免一个 Bug 或单个用户拖高整套系统的费用。
AI 时代 FinOps 的相关实践整理也把限流列为防止 Bug 和用户滥用的重要手段。关键点很明确:是否继续重试,应由可检查的程序规则决定,不能留给模型临场判断。
最贵的 Prompt,先查这几类
同一份实践材料建议优先分析最贵的 20% 请求,因为它们可能贡献 80% 的 Token 消耗。这个比例更适合用来确定排查顺序,不宜直接当成团队 KPI。
常见的高成本请求通常有几类:
- 系统指令和 RAG 上下文高度重复,却在每轮请求中完整发送;
- 简单分类、抽取任务也调用高成本模型;
- 工具返回整份日志、网页或文档,模型实际只需要其中少数字段;
- 输出长度没有上限,Agent 在任务完成后仍继续解释;
- 失败请求保留完整上下文,重试一次就重新计算一次长输入。
可以压缩重复上下文,并在供应商支持时使用 Prompt Caching;简单任务路由到轻量模型,把复杂推理留给能力更强的模型;工具响应则只传后续步骤真正需要的字段。缓存能省多少、多少请求适合降级,取决于模型、接口和实际命中率,先用账单与质量测试验证,再确定比例。
自动续费要有负责人,也要有退出路径
第三方 API 和 Agent 插件一多,自动续费很容易变成无人认领的支出。团队需要维护一份订阅台账,记录服务名称、绑定的 Agent、计费账号、负责人、续费时间、审批状态和取消入口。
Agent 下线时,撤销 API Key、删除密钥、关闭订阅应放在同一个流程里。只停应用、不处理订阅,后台仍可能继续扣费;只取消订阅、不撤销密钥,也会留下权限风险。
对于仍在使用的服务,可以按 Agent 或项目设置额度和限流规则。供应商没有硬限额时,可通过内部 API 网关执行配额控制,并把异常通知同时发给工程负责人和费用审批人。月度对账也要落实到具体人员,不能只留一个公共邮箱接收账单。
FinOps Agent 能做什么,AWS 案例别读错
AWS 官方博客展示了 FinOps Agent 与 DevOps Agent 协作处理云成本的流程:前者发现费用异常并分析原因,后者完成运行时验证和安全清理。博客中的案例最终减少了每月约 4,100 美元的不必要支出。
这个案例处理的是 AWS 云资源成本,不能直接等同于 Token 账单优化。真正值得借鉴的是分工方式:成本侧负责发现异常、给出建议,运行侧检查日志、验证影响,再决定是否执行清理。迁移到 AI Agent 场景时,检查对象可以换成 Token 请求、模型路由、API Key 配额和第三方订阅。
自动化动作仍要划清权限。关停实例、禁用密钥或调整模型路由,都应设置审批条件和回滚办法。否则,省下的费用可能抵不过一次误停带来的业务损失。
上线前过一遍这张表
| 检查项 | 要回答的问题 |
|---|---|
| 成本归属 | 每个 API Key 能否对应到 Agent、环境和负责人? |
| 调用追踪 | 能否通过 Trace ID 查到 Token、工具调用和重试记录? |
| 循环熔断 | 是否设置重试上限、最大步数、超时和并发限制? |
| 额度控制 | 供应商或 API 网关能否在超额后真正拦截请求? |
| Token 优化 | 是否定期检查最贵的 Prompt、重复上下文和过长输出? |
| 模型路由 | 轻量模型与高能力模型的分工是否经过质量验证? |
| 续费管理 | 每项订阅是否有负责人、续费记录和明确的取消入口? |
如果团队只能先做几件事,可以从拆分 API Key、把重试交给状态机、建立自动续费台账开始。有了可追踪的数据和明确的停止条件,Prompt Caching、模型路由以及 FinOps Agent 才能真正发挥作用。