OpenAI SDK 一行迁移
9Coding 完全兼容 OpenAI 接口规范。现有代码只改 base_url 和 Key 两个参数——之后换模型只是换一个字符串,Claude、GPT、Gemini 随便切。
第 1 步 · 拿到 Key
在 9Coding 控制台创建一把 API Key(sk-9c- 开头)。还没有账号就先注册。
第 2 步 · 改地址
在原有 OpenAI 客户端里,把地址和 Key 换成下面的值。Python、Node.js 和 curl 任选一种;模型名可以按任务换。
Python
main.py
from openai import OpenAI
client = OpenAI(
base_url="https://api.9coding.com/v1", # 只改这一行
api_key="sk-9c-你的Key"
)
resp = client.chat.completions.create(
model="claude-fable-5", # gpt-5.6 / gemini-3.5-flash 随便换
messages=[{"role": "user", "content": "ping"}]
)
print(resp.choices[0].message.content)
Node.js
main.mjs
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.9coding.com/v1", // 只改这一行
apiKey: "sk-9c-你的Key",
});
const resp = await client.chat.completions.create({
model: "claude-fable-5",
messages: [{ role: "user", content: "ping" }],
});
console.log(resp.choices[0].message.content);
curl
terminal
curl https://api.9coding.com/v1/chat/completions \
-H "Authorization: Bearer sk-9c-你的Key" \
-H "Content-Type: application/json" \
-d '{"model":"claude-fable-5","messages":[{"role":"user","content":"ping"}]}'
流式输出照常:
stream=True(SSE)完全支持,长任务建议开流式。用 Anthropic 原生 SDK 的话,请按 Claude Code 指南 设置专用环境变量。第 3 步 · 验证跑通
运行上面任一示例,看到 ping 的回复后,到 9Coding 控制台「日志」页确认刚才这笔调用的模型、token 和扣费记录都已出现。两处都成立,说明地址和 Key 都已生效。
常见问题
- 报 401:Key 错误或格式不完整(
sk-9c-开头)。 - 模型名报 not found:与官方模型名一致,可用列表见控制台。
- 用量在哪看:控制台「日志」页,每笔调用的模型、token、扣费可查。