多供应商 LLM 网关与计费坑复盘
MTreeAI · reddit · 2026-07-20
作者分享了一个 多供应商 LLM 网关 的架构和计费复盘,重点不是“接多少模型”,而是怎么把调用、计费和对账做对。
架构
- 他们把大约 18 家 LLM provider 接到同一个 API 后面。
- 大部分厂商都能走一条 OpenAI-compatible 的统一分发路径;Anthropic、Gemini、Cohere、Replicate 这类少数 provider 需要单独适配。
- tool calling 适配层 则单独拆出来,用纯函数统一不同厂商在 tool schema、toolchoice、并行调用、usage 解析、seed 等方面的差异。
计费设计
- 所有 provider 的价格都会在记录时统一换算成 每 token 的美元成本。
- 每次调用都必须经过一个“计费 chokepoint”:先在行锁下预扣一小笔费用,再发请求,最后按实际用量与预估用量结算并退差额。
- 本地模型按 0 计费。
复盘的 3 个钱相关 bug
- 某个退款路径会 凭空多发 credits,因为失败请求有时退回的钱超过了实际扣款。
- 流式请求在客户端断开时,退款会悄悄丢失,因为 asyncio 抛的是 GeneratorExit,不是 Exception,原来的捕获逻辑没接住。
- 两个函数都往账本写了一次 charge,导致 重复扣费;修复方式是保留单一事实来源。
结论
作者的体会是:集中、正确的计量系统,比聪明的省钱路由更重要。他们的“最便宜 provider”路由逻辑默认是关闭的。
「编程与Agent」频道最新
- 构建 AI Agent 安全网关:如何自托管多 SaaS 的 OAuth 集成 — Defiant_Cod_2654 · 2026-07-22
- Rowboat 作为开源本地优先 AI 同事上线 — ycombinator · 2026-07-22
- Scoble 说 AI 的 loops 本质是长运行多智能体工作区 — Scobleizer · 2026-07-22
- Kimi Code 开放候补名单,Moonshot 推进编码产品 — Fabulous_Bonus_8981 · 2026-07-22
- 开源 runtime 让每个仓库自定义 AI 代码审查器 — ibabufrik · 2026-07-22
- 独立开发者探讨:当前 AI Agent 记忆层的真正痛点在哪? — AcceptableTime7937 · 2026-07-22