生产与 CI 中应从环境变量或密钥管理服务读取网关地址与 API Key,避免硬编码。
推荐变量
| 变量 | 说明 | 示例 |
|---|---|---|
ROUTERBRAIN_API_KEY | 推理 API Key | 控制台创建 |
ROUTERBRAIN_BASE_URL | OpenAI 兼容 Base,须含 /v1 | 与 https://51kik.com/v1 相同 |
Anthropic 面若单独集成,可另设:
| 变量 | 说明 |
|---|---|
ROUTERBRAIN_ANTHROPIC_BASE_URL | https://51kik.com/anthropic/v1 |
具体命名以团队规范为准;下文以 ROUTERBRAIN_* 为例。
shell / curl
export ROUTERBRAIN_API_KEY="YOUR_API_KEY"
export ROUTERBRAIN_BASE_URL="https://51kik.com/v1"
curl -sS "$ROUTERBRAIN_BASE_URL/chat/completions" \
-H "Authorization: Bearer $ROUTERBRAIN_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"model\":\"YOUR_MODEL_ID\",\"messages\":[{\"role\":\"user\",\"content\":\"ping\"}]}"
官方 SDK(Node)
import { createRouterBrainFromEnv } from "@routerbrain/sdk/node";
const client = createRouterBrainFromEnv();
// 读取 ROUTERBRAIN_API_KEY、ROUTERBRAIN_BASE_URL 等
或手动传入:
import { RouterBrain } from "@routerbrain/sdk";
const client = new RouterBrain({
apiKey: process.env.ROUTERBRAIN_API_KEY!,
baseURL: process.env.ROUTERBRAIN_BASE_URL ?? "https://51kik.com/v1",
});
见 初始化。
OpenAI SDK 兼容
import OpenAI from "openai";
const openai = new OpenAI({
apiKey: process.env.ROUTERBRAIN_API_KEY,
baseURL: process.env.ROUTERBRAIN_BASE_URL,
});
上文环境变量仅用于 OpenAI 兼容 API;Anthropic SDK 需将 baseURL 设为 Anthropic 路径(见 从 Anthropic 迁移)。
CI 注意
- 使用密钥库的 secret 注入,勿写入日志。
- 集成测试可选用专用 Key,并限制模型与配额。
- 流水线失败时检查 401 / 403 与 错误响应。