月花 $200 调 Claude 的我,改了一行代码后账单直接砍掉 70%
月花 $200 调 Claude 的我,改了一行代码后账单直接砍掉 70%
结论先说:把 base_url 换掉,同样的代码跑同样的模型,我的月账单从 $200 降到不到 $60。
痛点
我有个内部工具,每天跑大量文档摘要 + 代码审查。用的是 Claude Sonnet,效果确实好,但账单也确实好看——好看到每个月对账的时候都想重构一遍需求。
更烦的是 OpenAI/Anthropic 官方不支持国内直连,本地开发还得挂代理,CI/CD 环境配起来更麻烦。有一次代理抽风,整条 pipeline 卡了两小时,排查半天发现就是 API 请求超时。
我做了什么
第一步:换 base_url,代码零改动
OpenAI SDK 和 Anthropic SDK 都支持自定义 endpoint。我用的中转服务兼容 OpenAI 格式,所以只改一行:
from openai import OpenAI
client = OpenAI(
api_key="你的中转 key",
base_url="https://api2everything.xyz/v1"
)
# 以下代码完全不用动
response = client.chat.completions.create(
model="claude-sonnet-4-5",
messages=[{"role": "user", "content": "帮我 review 这段代码"}]
)
curl 版本:
curl https://api2everything.xyz/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-5",
"messages": [{"role": "user", "content": "hello"}]
}'
第二步:分级用模型
这才是省钱的核心。我之前所有请求无脑打 Sonnet,但其实很多场景根本不需要。
我现在的策略:
| 场景 | 模型 | 理由 |
|------|------|------|
| 代码审查、复杂推理 | claude-sonnet-4-5 | 需要质量 |
| 文档摘要、格式化 | claude-haiku-4-5 | 便宜 5-10 倍,效果够用 |
| 简单分类、打标签 | gemini-flash 或 deepseek-v3 | 更便宜,延迟低 |
摘要这个任务我切到 Haiku 之后,质量基本没有肉眼可见的下降,但这部分的费用直接掉了 80%。
第三步:批量请求别一条一条发
之前图省事,每条文档单独发一个请求。改成批量拼 prompt 之后,token 利用率高了,system prompt 的开销也摊薄了。
# 别这样
for doc in docs:
summarize(doc)
# 这样更省
batch = "\n---\n".join(docs[:10])
summarize(f"请分别总结以下 {len(docs[:10])} 篇文档:\n{batch}")
结果
- 文档摘要部分:Sonnet → Haiku,费用 -80%
- 代码审查部分:官方直连 → 中转(价格约 6.5 折),费用 -35%
- 去掉代理维护成本:省了不少心
- 国内直连,CI/CD 再也没超时过
月账单从 $200 出头降到 $55 左右,模型质量没有明显退步。
我用的中转
api2everything.xyz,支持 OpenAI / Claude / Gemini / DeepSeek 等 300+ 模型,国内直连不用代理。注册送 ¥1,够试好几次请求,余额永久不过期。
有类似账单问题的可以试试,改一行 base_url 的成本几乎是零。