API 接入
AIAdapter 提供 OpenAI 兼容 API。一个账户只签发一把 API 密钥。桌面客户端与应用代码都使用这同一把密钥。不要按模型、厂商或客户端再开第二把。
仅在调用非生产主机时替换下面的源站。路径 /v1 不能省略。
1. 凭证
登录后打开控制台 → API Keys,创建一次即可。密钥只在创建时完整显示,请立刻保存,之后在所有接入点复用。
| 字段 | 取值 |
|---|---|
| Base URL | https://www.aiadapter.com/v1 |
| 鉴权 | Authorization: Bearer <API_KEY> |
| 模型 ID | /models 上列出的标识 |
官方 OpenAI 客户端会在 Base URL 后拼接 /chat/completions 等路径。请指向 …/v1,不要指向站点根路径。
密钥是机密。不要写入仓库、工单,也不要放进浏览器 JavaScript、移动应用或其他可被终端用户查看的客户端。从环境变量或密钥管理服务读取。若已泄露,删除后只再创建一把替换密钥。
2. 直接调用(不写接入代码)
若只需在现有 OpenAI 兼容应用里调用模型、不写接入代码,走这一节。常见客户端包括 Cursor、Claude Desktop、Cherry Studio、Continue、LibreChat。
只配三个字段。密钥就是控制台签发的那一把。
Cursor
- 打开 Settings → Models。
- 把 API 密钥粘贴到 OpenAI API Key。
- 打开 Override OpenAI Base URL,填 https://www.aiadapter.com/v1(v1 小写)。
- 在 Custom Models 中加入模型市场里的模型标识。尽量避开与 Cursor 内置模型同名的 ID。
Cursor Tab 与部分内置模型不会走自定义 OpenAI Base URL。覆盖生效后,请用市场模型 ID 发起对话。若输入框无法聚焦,请将 Cursor 升级到 3.15.20 或更高版本。
其他 OpenAI 兼容客户端
在 Claude Desktop、Cherry Studio、Continue、LibreChat 或任何接受 OpenAI 兼容提供方的客户端中:
- 提供方 / API 类型:OpenAI compatible
- Base URL:https://www.aiadapter.com/v1
- API key:这一把 AIAdapter 密钥
- 模型:市场标识
不要为第二个客户端再开一把密钥。两台客户端共用同一把密钥是预期用法。
3. 应用接入
自己写软件时走这一节。契约不变:一把密钥、一个 Base URL、Bearer 鉴权。下列示例把官方 OpenAI 库当作可替换客户端。
在进程环境中设置 AIADAPTER_API_KEY,不要把密钥写进源码。把 MODEL_ID 换成 /models 上的完整标识,包括卖方前缀。
HTTP
curl https://www.aiadapter.com/v1/chat/completions \
-H "Authorization: Bearer $AIADAPTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MODEL_ID",
"messages": [{"role": "user", "content": "Reply with one word: ok"}]
}'
Python
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["AIADAPTER_API_KEY"],
base_url="https://www.aiadapter.com/v1",
)
response = client.chat.completions.create(
model="MODEL_ID",
messages=[{"role": "user", "content": "Reply with one word: ok"}],
)
print(response.choices[0].message.content)
Node.js
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.AIADAPTER_API_KEY,
baseURL: "https://www.aiadapter.com/v1",
});
const response = await client.chat.completions.create({
model: "MODEL_ID",
messages: [{ role: "user", content: "Reply with one word: ok" }],
});
console.log(response.choices[0].message.content);
4. 模型与端点
用同一把 Bearer 密钥调用 GET /v1/models,或浏览 /models。将列出的标识填入 model。标识带卖方前缀,请原样复制。例如 pixverse/c1、byteplus-intl/dreamina-seedance-2-5-260628。不要只填 c1 或 seedance-2.5。
常见 OpenAI 兼容路由:
- POST /v1/chat/completions — 对话与语言模型
- POST /v1/images/generations — 图像模型
- POST /v1/video/generations,再 GET /v1/video/generations/{id} — 视频模型
图像
生图是同步的。把市场标识填进 model。
curl https://www.aiadapter.com/v1/images/generations \
-H "Authorization: Bearer $AIADAPTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "byteplus-intl/dola-seedream-5-0-flash-260915",
"prompt": "A red paper lantern in rain"
}'
视频
提交后立刻返回 job。用该 job id 轮询同一路径,直到成功或失败。不要把成片等在提交这一条请求上。
curl https://www.aiadapter.com/v1/video/generations \
-H "Authorization: Bearer $AIADAPTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "pixverse/c1",
"prompt": "A cat walking across a sunlit kitchen",
"seconds": "5"
}'
curl https://www.aiadapter.com/v1/video/generations/JOB_ID \
-H "Authorization: Bearer $AIADAPTER_API_KEY"
音频及其他模态以该模型在市场上的说明为准。
401 表示密钥缺失或无效。429 表示触发限速。余额或额度不足时接口会返回错误,请先在控制台充值再重试。
5. 密钥使用
账户上的全部接入用一把密钥即可。额外开钥会拆散审计轨迹并增加泄露面,不会解锁更多模型。