How we make AI coding more cost efficient without sacrificing task quality
GitHub 官方博客,Erik Kristensen 与 Napalys Klicius,2026-09-02。文章以 GitHub Copilot CLI 为主要案例,讨论如何在不牺牲任务质量的前提下降低 AI 编程成本;GitHub 表示 Copilot app 与 Copilot code review 也共享同一底层 harness。
编译摘要
1. 浓缩
- 核心结论1:效率应按完整任务衡量,而不是按单次工具调用或局部 token 数量衡量。
- 关键证据:GitHub 在自己的 harness 和 agentic coding benchmarks 中测试 RTK(Rust Token Killer)时发现,缩短工具响应有时会让 Agent 重新打开原始输出或重跑命令;单次响应变短,但恢复步骤增加了轮次、上下文和总成本(“local win, global loss”)。文章明确限定该结果只适用于测试过的集成与工作负载,不外推到所有 RTK 配置或输出压缩。
- 核心结论2:高收益优化来自删除不必要的工作,同时保留 Agent 完成任务所需的信息与行为。
- 关键证据:四组改动分别是选择性压缩重复噪声、删除
view输出中不再有用的行号格式、缩短 task-tool prompt、将后台任务完成结果随通知直接交付。选择性压缩保留 source-like 与任意命令输出、无损重组搜索结果,只压缩 install/build/test/progress 等可预测噪声;后台结果批处理把示例中的四次模型调用降为一次可处理两个结果的调用。
- 关键证据:四组改动分别是选择性压缩重复噪声、删除
- 核心结论3:任何效率改动都必须在对应工作负载中用行为和质量评测验证,尤其是 prompt 与 orchestration 改动。
- 关键证据:prompt 自动压缩的首个线上实验把“谨慎的并行指导”意外改成了串行调度,GitHub 停止实验并新增回归评测,最终用“Independent agents can run in parallel; consider side effects.”恢复行为。官方报告的离线与线上结果包括:删除行号使离线模型推理成本约降 5%、线上日均每用户约降 3%;prompt 改写每轮移除约 1,300 个 task-tool prompt tokens,会话总 prompt tokens 约少 1.8%,每活跃小时归一化成本约低 2.9%;后台完成结果直接交付使 AI Credits 相关用量约降 2.3%。图 1 还将四个独立 A/B 实验标为 3.1%、5.5%、2.9%、2.3%,但作者提醒这些数字不必然可加。
2. 质疑
- 关于实验外推的质疑:这是 GitHub 的厂商一手实践文,实验对象主要是 Copilot CLI 与 Copilot code review;文中没有完整披露 benchmark 构成、样本量、置信区间和质量指标的具体定义。“无 material regression”只能说明被跟踪的指标未发现明显退化,不能证明所有真实代码任务的正确性、维护性或长尾失败率不变。
- 关于“压缩”的质疑:输出压缩的有效性取决于输出类型、恢复路径和 Agent 行为。GitHub 自己的早期版本因压缩
git diff导致 Agent 重读原文而失败;因此“少 token”不是一般性原则,必须验证是否引入重复工作。 - 关于度量的质疑:AI-credit metric 下的四个独立实验不是可直接相加的总收益;线上成本也可能受用户任务分布、模型版本和产品表面变化影响。文章提供相对变化,但未给出完整的 goodput(单位正确工作量成本)定义。
- 关于质量边界的质疑:文章把“行为测试通过、轮次稳定、恢复路径很少”作为重要信号,但这些仍是过程信号。罕见的错误输出、错误并行化、被压缩信息在关键任务中的影响,可能不会在短期平均值中显现。
3. 对标与旁逸
- 编译器与运行时优化:选择性输出压缩类似语义保持的表示优化——删除重复噪声,而不是删除程序需要的语义;恢复原文路径相当于保留可回溯的慢路径,既保障失败恢复,也成为评估信号。
- 分布式系统的批处理与去 round-trip:把多个后台完成事件合并后一次交给模型,与事件批处理、减少网络往返的结构同构。它说明 Agent 成本不仅在 token,还在于 orchestration 把一个确定性状态转移拆成了多少次模型交接。
- 控制面与数据面分离:把不需要推理的结果直接放入现有 tool-result,或在 harness 层完成格式清理,等价于让确定性系统承担数据搬运,让 LLM 保留给判断、规划和综合。它与 Deterministic-Retrieval、Agent-Optimized-CLI 的方向一致。
- 测试即提示契约:prompt 不是静态文案,而是影响并行、权限和停止条件的行为接口;prompt regression test 的地位类似 API contract test。该视角可迁移到任何拥有多工具、多 Agent 编排的 harness。
证据定位
- Figure 1:四组独立 A/B 实验的 AI-credit 对比,效果标注为 3.1%、5.5%、2.9%、2.3%,且不可默认相加。
- The local metric trap / Compress noise, preserve useful information:RTK 实验、早期过度压缩
git diff的失败、三部分选择性压缩政策、恢复路径与离线/线上结果。 - Remove formatting before removing information:
view行号前缀的历史原因、离线约 5% 与线上约 3% 成本下降,以及质量与编辑失败未见材料性回归。 - Compress prompts without compressing intent:prompt 约缩短一半、线上并行行为回归、回归测试和最终单句修复;每轮约 1,300 tokens、每 session 约 1.8%、每活跃小时约 2.9%。
- Deliver completed background work without an extra retrieval turn:后台 shell 与 sub-agent 结果的通知批处理;示例从四次模型调用减少为一次处理两个结果的调用;AI Credits 相关用量约降 2.3%。
- Measure changes in context:同一改动在不同 Copilot workflow 中结果可能相反;code review 中行号移除与选择性压缩各减少约 5% 平均 prompt tokens,另有早期 shared file tools 迁移与 review-instruction tuning 带来约 20% code review 成本下降。