编码智能体陷入循环:用一张收据提前发现令牌失控
01 / 先看收据:十轮调用,八轮没有新进展
编码智能体最贵的时刻,未必是生成了一大段代码,而是不断重读同一批文件、修改同一处逻辑,再撞上同一个测试错误。终端持续滚动,看起来很忙;账单持续增长,问题却没有缩小。
下面构造一次排查任务:前两轮完成定位与首次修复,之后八轮在同一错误附近打转。这不是实测报告,也不是任何平台的报价,而是一张用于解释计费机制的假设收据。金额统一按美元计算。
02 / 把四种令牌费用分别列账
假设每百万令牌的单价为:普通输入2美元、输出10美元、缓存读取0.20美元、缓存写入2.50美元。为避免重复计算,本例将四类计费数量分别统计;实际接入时,应以服务商返回的用量字段和计费规则为准。
- ■ 普通输入:每轮20,000令牌,十轮共200,000,费用0.40美元。
- ■ 缓存读取:每轮80,000令牌,十轮共800,000,费用0.16美元。
- ■ 缓存写入:每轮4,000令牌,十轮共40,000,费用0.10美元。
- ■ 模型输出:每轮3,000令牌,十轮共30,000,费用0.30美元。
- ■ 合计:1,070,000个计费令牌,费用0.96美元。
计算方法只有一条:某类令牌数量除以一百万,再乘以该类单价。不要拿总令牌数乘一个统一价格,否则会把缓存优惠、输出成本和写入成本混在一起。
03 / 真正浪费的是后八轮的0.768美元
按上述假设,每轮费用为0.096美元。前两轮花费0.192美元;后八轮花费0.768美元,占整张收据的80%。这里的“浪费”来自我们预先设定的无进展情境,并不意味着真实任务都能在两轮内完成。
单次不到一美元,容易被忽略。但如果同样的八轮无效重试发生100次,对应费用就是76.80美元。这只是相同用量与价格下的算术放大,不是对实际月账单的预测。
缓存也没有让循环免费。本例每轮缓存读取只花0.016美元,但普通输入、输出和缓存写入还要花0.080美元。命中缓存值得保留,却不能代替停止条件。
04 / 连续三次相同失败,就让智能体暂停
不要只检测回答是否重复。更实用的方法是给每轮留下三个指纹:失败测试名称及规范化错误、修改文件及差异摘要、执行命令及退出码。规范化时去掉时间戳和临时路径,避免同一个错误被识别成多个新问题。
可以从一个保守规则开始:连续三轮出现相同失败指纹,且没有新增通过的测试,就暂停自动重试。三轮是建议起点,不是经过验证的最佳阈值。大型重构和不稳定测试需要单独调整。
例如,同一测试三次都报相同的空值错误,代码只是在两种判断方式之间来回切换,就不该继续购买第四次猜测。此时应要求智能体列出已排除的假设、缺失证据,以及下一条能区分原因的检查命令。
05 / 预算要覆盖任务,也要覆盖整个会话
给单个请求设输出上限,只能限制那一次响应,拦不住几十次短调用。应同时记录单轮费用、任务累计费用和会话累计费用;子智能体、自动重试与并行分支也应归入同一任务账本。
- ■ 示例软预算:累计达到0.30美元时,提示当前花费并检查进展。
- ■ 示例硬预算:下一轮预计使累计费用超过0.50美元时,先请求人工批准。
- ■ 独立循环规则:即使尚未触及预算,连续三轮无进展也暂停。
这些金额只服务于本例,不是通用推荐额度。按每轮0.096美元估算,三轮累计0.288美元;执行第四轮前,系统就应发现预计费用将超过软预算。若循环检测同时触发,则应直接暂停,而不是等钱花完。
06 / 在中转账单里保留可追溯的用量
使用CheapRelay这类按量计费的API中转时,也应把请求记录与任务标识关联。CheapRelay没有月费或订阅,按实际令牌计费,包含缓存读取和写入;这让核账可以围绕具体调用展开,但不会自动阻止客户端循环。
每轮至少保存请求标识、四类用量、对应单价、累计费用和进展指纹。若某个缓存字段没有返回,应标记为未确认,而不是擅自记成零;也不要把整个会话的令牌总量误当成本轮新增用量。
如果你需要按量接入,可以注册CheapRelay,再用一个小任务核对客户端日志与平台账单。重点不是追求最低的单轮数字,而是确认每一轮为什么发生、花了多少,以及什么时候必须停下。
下一次终端反复显示“再试一次”时,先看三件事:错误是否改变、证据是否增加、累计费用是否仍在预算内。忙碌不是进展;一张能逐项解释的收据,才是及时踩刹车的依据。
Cadastrar Teste os preços. Crédito de cadastro incluso.
Leia também
| Data | Corredor | Idioma | Título |
|---|---|---|---|
| 2026-10-25 | Agentes de código baratos | ZH | 给 Codex 会话打一张小票:把单次预算算到美分 用两张明确标注假设的小票,拆解 Codex 的输入、缓存与输出成本,再用任务边界、日志截断和交接摘要控制开销。 |
| 2026-10-25 | Agentes de código baratos | ZH | Claude Code 省 Token 收据:四个斜杠命令怎么省钱 用一张假设账单拆解 /context、/clear、/compact 与 /usage,算清输入、输出和缓存费用,避免把上下文缩短误当成账单同比下降。 |
| 2026-10-25 | Agentes de código baratos | ZH | 把代码审查写成小票:20 个变更的 AI 预算怎么算 用一组明确标注的假设单价,拆解20次代码审查的输入、输出、缓存与复查费用,建立可核对的按量预算。 |
| 2026-10-25 | Agentes de código baratos | ZH | OpenCode 终端账单:把按量调用拆成一张可核对的小票 用一张明确标注假设费率的小票,拆解 OpenCode 的输入、输出、缓存读取与写入费用,算清单次任务、返工和月度预算。 |
| 2026-10-25 | Agentes de código baratos | ZH | Cursor 接入自定义端点:逐步配置,再算清每笔费用 从密钥、Base URL 到模型选择,逐步配置 Cursor 的 OpenAI 兼容端点;用明确标注的假设费率,拆解输入、输出和缓存账单。 |
| 2026-10-25 | Agentes de código baratos | ZH | Claude Code 少读文件的省钱小票:一项任务如何从0.924元算到0.356元 用一张明确标注假设的小票,拆开输入、缓存写入、缓存读取和输出费用,再通过限定目录、搜索符号与分段读取,让 Claude Code 少读无关文件。 |