为什么走厂商官网而不是聚合层
聚合网关的免费额度通常有有效期和可迁移性限制。相比之下,厂商官网的 Free Tier 是「账号级」的:只要账号还在,额度按周期刷新,Key 可以长期保存,也能直接写进本地脚本与 IDE 插件。2026 年,一批以推理速度见长的基础设施型厂商(Groq、Cerebras、SambaNova 等)以及老牌厂商(Mistral、Cohere)都保留了面向开发者的自助免费层,通常只需邮箱验证,不强制绑卡。
关键前提:这类额度适合开发调试、批处理小样本、Agent 工具调用,不适合高并发生产流量。速率限制(每分钟请求数/每分钟 token 数)才是真正的天花板,额度总量往往用不完。
操作步骤
第一步:逐个注册并拿到 Key
- 打开厂商官网的 Developer / Platform 控制台,用工作邮箱注册。避免用一次性邮箱,部分厂商会对域名做风控。
- 在控制台创建 API Key,命名带上用途(如
local-dev-2026),创建后立即复制——多数控制台只展示一次。 - 记录该账号的速率限制页面位置:通常是 Rate Limits 或 Usage 标签,先截图存档,后续排查 429 时要用。
- 若厂商要求绑卡才能解锁免费层,直接跳过,换下一家。本文路线的前提就是不绑卡。
第二步:统一环境变量命名
不要在每个脚本里硬编码 Key。建立一份本地 .env(加入 .gitignore),按 PROVIDER_API_KEY 规范命名:
```
GROQ_API_KEY=...
CEREBRAS_API_KEY=...
SAMBANOVA_API_KEY=...
MISTRAL_API_KEY=...
```
再写一个 providers.yaml,统一描述每家的 base_url、默认模型名、TPM/RPM 上限:
```yaml
providers:
groq:
base_url: https://api.groq.com/openai/v1
model: <控制台当前可用的小模型>
rpm: 约 30
cerebras:
base_url: https://api.cerebras.ai/v1
model: <控制台当前可用的小模型>
rpm: 约 30
```
具体模型名与限额以控制台实时显示为准,不要抄网上的旧数字。
第三步:用 OpenAI 兼容客户端统一调用
上述多数厂商提供 OpenAI 兼容端点,因此同一份代码只需切换 base_url 和 api_key:
```python
from openai import OpenAI
import os, yaml
cfg = yaml.safe_load(open('providers.yaml'))
def client_for(name):
p = cfg['providers'][name]
return OpenAI(base_url=p['base_url'], api_key=os.environ[f"{name.upper()}_API_KEY"])
```
这样本地脚本、IDE 插件、CLI Agent 工具都能复用同一套配置。
第四步:写一个降级链
把「首选—备选—兜底」写成顺序列表。遇到 429 或 5xx 时自动切下一家:
```python
def call_with_fallback(messages, order=('groq','cerebras','sambanova')):
for name in order:
try:
return client_for(name).chat.completions.create(
model=cfg['providers'][name]['model'], messages=messages)
except Exception as e:
if '429' in str(e) or 'rate' in str(e).lower():
continue
raise
raise RuntimeError('all free tiers exhausted')
```
这是整条路线的核心价值:单家免费层的 RPM 很小,但三家叠起来足以支撑个人开发节奏。
第五步:监控用量,别等 429
在每次调用后记录 usage 字段与时间戳,写进本地 SQLite 或 CSV。按分钟聚合,画出每天各家的消耗曲线。当某家接近其 RPM 上限时,降级链自然会把流量推给下一家。
注意事项
- 限额会变:免费层的模型清单、RPM、每日上限调整频繁。每季度回控制台核对一次,别依赖本文或博客里的数字。
- 不要多账号刷额度:同一身份注册多个账号薅免费层,多数厂商条款明确禁止,封号会连带损失已积累的 Key。
- 数据合规:免费层通常声明会用于服务改进。不要把客户数据、内部代码、个人隐私发进免费端点。
- 不要在客户端暴露 Key:前端应用必须经自己的服务端转发,否则 Key 会被抓包。
- 区分「免费层」和「试用金」:试用金是一次性余额,免费层是周期性配额,两者计费逻辑不同,不要混在一个监控表里。
适用场景
- 个人开发者做原型验证、写 IDE 补全插件、跑批量文本清洗。
- 小团队在做 POC 阶段,先用免费层验证可行性,再决定是否付费。
- 教学与实验环境,需要零成本但可复现的调用链。
不适合:面向终端用户的高并发产品、需要 SLA 保证的业务、需要把数据留在自有环境的场景(后者应走本地开源模型)。