ARTICLE · 人工智能
Agent 终章(Harness 成本篇):一次百炼账单降低 88% 实战
一语总结本文基于阿里百炼平台 qwen3.7-max 生产实践,系统性地分享了 Agent token 成本优化方法,通过减少输入体积、提高缓存命中率、控制思考长度、隔离 Subagent 探索过程等策略,实现单轮会话输入费用降至原来的十分之一。
文章从 Agent 运行中 token 消耗巨大的痛点出发,系统性地介绍了成本优化的完整方法论。首先分析了 token 消耗的结构:工作守则、工具 schema、对话历史、工具结果构成固定前缀,循环反复跑、历史全量重发、工具结果堆叠导致成本膨胀。接着建立了三条度量链路(自研采集、Langfuse 统计、评测 Agent)确保优化可验收。核心优化策略分为四大方向:少发(精简 System Prompt、工具 schema 按需读取、Skills 去重、MCP 迁 CLI)、发得便宜(显式缓存标记、System Prompt 分层、断点标尾部)、少想(关闭非推理调用、限制 thinking_budget)、Subagent 隔离(探索过程不进主上下文)。实测效果:隐式缓存命中率从 33% 提升到 80%,显式缓存加权命中近九成,一轮 20 次会话输入费用降至原来的十分之一,整体账单降低 88%。
- token 消耗的核心矛盾是固定前缀每轮全量重发
用户输入仅占冰山一角,工作守则、工具 schema、对话历史、工具结果构成固定前缀,循环中不断叠加导致几十 M token 消耗。优化首先要减少每轮请求的输入体积。
- 显式缓存比隐式缓存更可靠且更便宜
隐式缓存命中折扣×20%且不可预测,显式缓存×10%且合约保证。通过 System Prompt 分层、断点标尾部、tools 数组稳定化,加权命中率从 0.80 提升到 0.898,无灾难性脱靶。
- MCP 工具应迁往 CLI + Skills 形态
MCP schema 即使延迟加载仍有结构性成本,且模型需现学接口格式。CLI 形态固定 schema 几乎为零,模型天然擅长 Unix 命令,输出可通过管道过滤,对缓存更友好。
- Subagent 隔离探索过程只回传结论
主 Agent 上下文不应承载几百 k 的探索记录。Subagent 独立上下文完成调查后只回传 600 字符摘要,主上下文每轮只需重发结论而非过程,避免 compact 带来的时间成本。
- 思考长度需要参数化控制而非 prompt 劝诫
简单辅助调用直接关闭 thinking,主 Agent 设置 thinking_budget=4096 上限。实测 4K 是拐点:再增加到 8K/16K 任务完成率不涨但调用时间变长。
Agent 终章(Harness 成本篇):一次百炼账单降低 88% 实战
文章从 Agent 运行中 token 消耗巨大的痛点出发,系统性地介绍了成本优化的完整方法论。首先分析了 token 消耗的结构:工作守则、工具 schema、对话历史、工具结果构成固定前缀,循环反复跑、历史全量重发、工具结果堆叠导致成本膨胀。接着建立了三条度量链路(自研采集、Langfuse 统计、评测 Agent)确保优化可验收。核心优化策略分为四大方向:少发(精简 System Prompt、工具 schema 按需读取、Skills 去重、MCP 迁 CLI)、发得便宜(显式缓存标记、System Prompt 分层、断点标尾部)、少想(关闭非推理调用、限制 thinking_budget)、Subagent 隔离(探索过程不进主上下文)。实测效果:隐式缓存命中率从 33% 提升到 80%,显式缓存加权命中近九成,一轮 20 次会话输入费用降至原来的十分之一,整体账单降低 88%。
文章金句
"AI 编码半小时就可以完成一个 agent,但是一个没做过任何优化的 agent,跑一轮就是几十 M token,月底一看,费用爆炸。
"优化 token 不是锦上添花,是 agent 能不能活下去的前提。
"不要放弃任何一个字符的优化。发出去的内容都会乘以基数,固定前缀每轮全量重发,早进入历史的内容会伴随此后每一轮。
"模型天然擅长 CLI。预训练语料里有海量 Unix 材料,man page、--help 输出、shell 脚本,模型见过的 find | grep | xargs 远比任何一次 tools/call 多。
"显式缓存是合约:打标记、前缀字节稳定,5 分钟内一定命中。隐式缓存不保证命中率,且命中折扣比显式贵一倍。