月花 $200 调 Claude 的我,改了一行 base_url 后账单直接砍掉 70%
月花 $200 调 Claude 的我,改了一行 base_url 后账单直接砍掉 70%
结论先说:把 API base URL 换成国内中转,同样的模型、同样的 token 用量,账单能省 60%-70%。
问题从哪来的
我司内部有个代码 review 工具,跑的是 Claude 3.5 Sonnet。每次 PR 会把整个 diff 扔进去分析,平均每次消耗约 8k tokens,一天几十个 PR,月末账单稳稳落在 $180-$220。
Anthropic 官方价格:Sonnet 3.5 输入 $3/M tokens,输出 $15/M tokens。加上国内访问需要挂代理,偶尔还会超时重试,实际成本比账面还高一点。
具体怎么改
第一步:换 base URL,其他不动
绝大多数 SDK 都支持自定义 endpoint,改一行就完事:
import anthropic
client = anthropic.Anthropic(
api_key="sk-你的中转key",
base_url="https://api2everything.xyz/v1",
)
response = client.messages.create(
model="claude-sonnet-4-5",
max_tokens=1024,
messages=[{"role": "user", "content": "review this diff: ..."}],
)
用 OpenAI SDK 也行,中转服务兼容 OpenAI 格式:
from openai import OpenAI
client = OpenAI(
api_key="sk-你的中转key",
base_url="https://api2everything.xyz/v1",
)
curl 验证一下是否通:
curl https://api2everything.xyz/v1/chat/completions \
-H "Authorization: Bearer sk-你的key" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-5",
"messages": [{"role": "user", "content": "ping"}],
"max_tokens": 10
}'
第二步:对非核心场景降配
Code review 我拆成了两层:
- 先用
claude-haiku-4-5过一遍,标出「有问题的文件」 - 只把有问题的部分再交给 Sonnet 深度分析
Haiku 价格约是 Sonnet 的 1/10,80% 的 diff 其实没啥问题,过 Haiku 一遍筛掉就行。这一步比换中转省得还多。
def smart_review(diff: str) -> str:
# 第一轮:Haiku 快速筛
triage = client.messages.create(
model="claude-haiku-4-5",
max_tokens=256,
messages=[{
"role": "user",
"content": f"这段 diff 有明显 bug 或安全问题吗?只回答 yes/no 和理由:\n{diff}"
}],
)
if "yes" not in triage.content[0].text.lower():
return "LGTM"
# 第二轮:Sonnet 详细分析
detail = client.messages.create(
model="claude-sonnet-4-5",
max_tokens=1024,
messages=[{"role": "user", "content": f"详细 review:\n{diff}"}],
)
return detail.content[0].text
实际效果
| 方案 | 月成本 |
|------|--------|
| 官方直连 Sonnet | ~$200 |
| 中转 Sonnet | ~$75 |
| 中转 Haiku 预筛 + Sonnet | ~$40 |
省的钱都是真金白银,没有牺牲什么质量——Haiku 判断「有没有问题」准确率其实挺够用的。
顺带一提
我用的中转是 api2everything.xyz,支持 Claude / GPT / Gemini / DeepSeek 300+ 模型,国内直连不用挂代理。注册送 ¥1,够验证整个接入流程。SVIP 是 7.7 折,算下来比官方便宜 65% 左右,余额永久有效不会过期。
改一行 URL 的事,没啥理由不试。