模型网关的账单变小,不一定表示研发任务更便宜。如果便宜的模型反复生成不可用补丁,工程师再花一小时补救,节省下来的Token费用可能只是把成本挪到了别处。
先定义什么叫完成
一次任务可以有多轮模型调用,也可能完全失败。因此我会同时记录任务ID、尝试次数、API费用、人工处理分钟数、最终验收状态。把失败任务从分母里悄悄拿掉,会让数字看起来异常好。
下面只做成本口径的算术演示。数据是人工构造的样本,货币单位统一为元,人工单价为假设值,不是任何厂商报价。
attempts = [ {"task": "a", "api": 0.6, "minutes": 4, "accepted": True}, {"task": "b", "api": 0.2, "minutes": 2, "accepted": False}, {"task": "b", "api": 0.8, "minutes": 6, "accepted": True}, {"task": "c", "api": 0.3, "minutes": 5, "accepted": False}, ] hourly = 120 cost = sum(x["api"] + x["minutes"] / 60 * hourly for x in attempts) accepted = {x["task"] for x in attempts if x["accepted"]} assert len(accepted) == 2 assert abs(cost - 35.9) < 1e-9 print("cost per accepted task:", round(cost / len(accepted), 2))这里把所有尝试的费用纳入分子,按验收成功的不同任务计分母。仍然失败的c也消耗了资源。如果成功任务数为零,应报告无法计算,并展示全部损耗,不能输出零成本。
路由政策需要和账本一起看
便宜模型可以先处理低风险、容易验证的请求,但网关要记录为什么选择它。若任务涉及受限数据、需要某种工具或超过能力边界,应先执行约束,再优化价格。失败后升级模型也要有次数和预算上限。
模型生命周期还会改变成本结构。Anthropic官方停用表明确,Claude 3.7的API服务已经在2026年2月19日退役。继续把它写进十月线上路由配置,会产生不可执行的建议。其他平台是否提供同名模型,要看各自生命周期,不能由一家API的停用日期推断所有平台。
暂时别给出“最便宜”的结论
本例没有调用真实模型,没有计入缓存、排队、上下文压缩、税费或基础设施费用,也没有比较任务难度。它只验证计算口径。真实试点应固定任务集合,把未完成比例、人工复核和尾部延迟与成本一起报告。否则网关可能把每次调用优化得很好,却让完成一次工作越来越贵。
参考
- Anthropic模型停用与迁移