接口文档
兼容 OpenAI 协议,替换 base_url 与 Key 即可接入。
基础信息
Base URL
https://api.i30.icu/v1
鉴权方式
Authorization: Bearer sk-...
Key 在控制台「API Keys」创建。
支持的接口
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /v1/chat/completions | 对话补全,支持流式(stream) |
| POST | /v1/completions | 文本补全 |
| POST | /v1/embeddings | 文本向量 |
| GET | /v1/models | 当前可用的模型列表 |
curl 示例
curl https://api.i30.icu/v1/chat/completions \
-H "Authorization: Bearer sk-你的密钥" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o-mini",
"messages": [{"role":"user","content":"你好"}],
"temperature": 0.7
}'
Python
from openai import OpenAI
client = OpenAI(
base_url="https://api.i30.icu/v1",
api_key="sk-你的密钥",
)
stream = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "你好"}],
stream=True,
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="")
Node.js
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.i30.icu/v1",
apiKey: "sk-你的密钥",
});
const res = await client.chat.completions.create({
model: "gpt-4o-mini",
messages: [{ role: "user", content: "你好" }],
});
console.log(res.choices[0].message.content);
流式输出
请求体加 "stream": true,服务端会以 SSE 逐块返回,格式与 OpenAI 一致:
data: {"id":"...","choices":[{"delta":{"content":"你"}}]}
data: {"id":"...","choices":[{"delta":{"content":"好"}}]}
data: [DONE]
错误码
| HTTP | 含义 | 处理方式 |
|---|---|---|
| 401 | Key 缺失或无效 | 检查 Authorization 头 |
| 402 | 余额或 Key 额度不足 | 兑换或调整额度 |
| 403 | Key / 账号被禁用或过期 | 在控制台检查状态 |
| 429 | 上游限流 | 退避重试 |
| 503 | 没有渠道提供该模型 | 换模型或联系管理员 |
错误响应格式与 OpenAI 一致:{"error":{"message":"...","type":"..."}}