接入文档
接口兼容 OpenAI 协议。已经有客户端的,一般只要把接口地址和 Key 换掉就能跑;用 Claude Code 这类工具的,改两个环境变量。
三步接入
- 注册并登录控制台 注册后进控制台,先确认余额或额度,再去下一步建 Key。
- 建一个令牌(Key) 控制台 → 令牌 → 新建令牌。分组请按下一节选,分组选错会出现「无可用渠道」。
-
把接口地址换过来
接口地址填 https://aiyunvip.com/v1,Key 填上一步那一串(以
sk-开头)。
跑通这一步就算接好了:
curl https://aiyunvip.com/v1/chat/completions \
-H "Authorization: Bearer sk-你的令牌" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-5-5",
"messages": [{"role": "user", "content": "你好"}]
}'
/v1。
只写 https://aiyunvip.com 会拿到一段网页代码,大多数客户端会报「解析失败」。唯一例外是 Claude Code —— 它自己会拼
/v1/messages,所以那边不要带 /v1(用 CC Switch 把供应商设成 Claude 时同理)。见下一节的客户端配置。
选哪一档
同一个模型在三档里价格不同,走的上游也不同。建令牌时选的分组,决定了这个 Key 能调哪些模型、走哪条线路。
| 分组 | 适合什么 | 要注意 |
|---|---|---|
| 官方组 | 正式业务、要写进承诺的场景 | 最贵。用 /v1/chat/completions 调 gpt-6.1-sol 时不能带 tools(见下方说明) |
| 性能组 | 便宜、又要能做 Agent 的场景 | 速度够用(首字 1 秒内)。线路是号池,偶尔会降智或断流 |
| 实惠组 | 只要能压到最低价,体验可以放宽 | 最便宜。GPT 首字约 9 秒,不适合实时对话;并发也弱 |
gpt-6.1-sol 走 /v1/chat/completions 时不能带 tools。
这种请求会被上游拒绝,报
Function tools with reasoning_effort are not supported。三条出路:换成性能组或实惠组的令牌(这两个组的
gpt-6.1-sol 带 tools 正常);改用官方组的 gpt-6-astra / gpt-5.6-sol(这两格实测能带 tools);或者走 /v1/responses 接口(Codex CLI 就是这个协议,不受这条限制)。Claude 三个模型在三档里带 tools 都正常。
没有特殊要求的话,选 性能组最省心:价格低、能带 tools、速度够。
支持的模型
在售的模型分两类:聊天 / 图片模型走 OpenAI 兼容接口,判断模型走专用接口(见下一节)。同一个模型名在哪些分组里能用,看下表第二列;表会随配货调整,以模型广场的实时显示为准。
| 模型 | 可用分组 |
|---|---|
claude-opus-5-5 | 官方组 · 性能组 |
claude-sonnet-5-5 | 官方组 · 性能组 |
claude-haiku-5-5 | 官方组 · 性能组 |
gpt-6-astra | 官方组 · 性能组 · 实惠组 |
gpt-6.1-sol | 官方组 · 性能组 · 实惠组 |
gpt-5.6-sol | 官方组 · 性能组 · 实惠组 |
gemini-3.8-flash | 官方组 · 性能组 · 实惠组 |
gpt-image-2 | 官方组 · 性能组 · 实惠组 |
gpt-image-2.5 | 性能组 · 实惠组 |
deepseek-v4-pro | 官方组 |
一个 Key 能调哪些模型?取决于建令牌时选的分组:选自动选择,能在所有开放的分组里挑;选了某一个分组,就只限那一组里的模型。想一个 Key 尽量全都能调,就选「自动选择」。
「自动选择」是怎么选的?优先走便宜的分组;但某个模型在便宜分组里没有货时,它会自动上浮到有货的分组,并按那一档的价格扣费。所以它省钱,不等于一定落在最便宜那一档。要锁死价格,就别用自动,直接指定一个分组。
完整价格和实时可用状态在 模型广场。发请求前想确认某个模型能不能用,也能查:
curl https://aiyunvip.com/v1/models \
-H "Authorization: Bearer sk-你的令牌"
JEV 判断模型
jev-1.13 / jev-1.14 不做对话。你给它一段内容(一句话、一段工单、一个 JSON),再给它一组问题,它直接回你每个问题的概率。适合做意图判断、内容分级、客服话术质检这类「要一个数是几」的活。
地址和 Key
跟你调聊天模型用的是同一个 Key,只是路径不同:
POST https://aiyunvip.com/v1/systemone
/v1/chat/completions 调 jev 会失败,报「无可用渠道」。这不是 Key 的问题,是这两个模型只认 /v1/systemone。请求长什么样
三个字段:model、state(要判断的内容,字符串或 JSON 都行)、questions(问题,按自己的编号写成对象)。
{
"model": "jev-1.14",
"state": "用户:买了三天,看到别家更便宜,想退。",
"questions": {
"refund": {
"type": "noul",
"instructions": "用户是否明确要求退款",
"criteria": {"true": "明确要求退", "false": "只是抱怨"}
},
"tone": {
"type": "choice",
"instructions": "客服下一句最该用什么语气",
"criteria": {"apologetic": "道歉安抚", "neutral": "中性说明", "promotional": "推销其它产品"}
},
"urgency": {
"type": "score",
"instructions": "这件事该多急处理",
"criteria": ["可以等", "当天处理", "立刻处理"]
}
}
}
三种题型
| type | 问什么 | criteria 怎么填 | 回什么 |
|---|---|---|---|
noul | 是 / 否 | 可省;填了就写 {"true": …, "false": …} | noul:是 的概率,0–1 |
choice | 几个选项里选一个 | 必填,对象:每个选项 → 一句说明 | choice 选了哪个,probabilities 每个选项的概率 |
score | 按几个等级打分 | 必填,至少两档的有序数组,从低到高 | score 加权分,probabilities 每档概率,legend 档位表 |
instructions 每个问题都必填。问题编号自己起,返回的 answers 用同一批编号。
返回长什么样
{
"answers": {
"refund": {"type": "noul", "noul": 0.94},
"tone": {"type": "choice", "choice": "neutral", "confidence": 0.37,
"probabilities": {"apologetic": 0.42, "neutral": 0.58, "promotional": 0}},
"urgency": {"type": "score", "score": 0.98, "confidence": 0.73,
"probabilities": {"0": 0.1, "1": 0.82, "2": 0.08},
"legend": {"0": "可以等", "1": "当天处理", "2": "立刻处理"}}
},
"usage": {"input_tokens": 462, "output_tokens": 74, "cost": 0.000019404}
}
在自己的程序里怎么用
一个接口地址、一个 Key,文本模型和判断模型可以混着调——建一个会话用聊天模型,要判断时打 /v1/systemone,Key 不用换。前提是这个 Key 的分组同时含这两类模型:选自动选择最省事,选实惠组也够(它同时有文本、图片和 JEV)。
curl https://aiyunvip.com/v1/systemone \
-H "Authorization: Bearer sk-你的令牌" \
-H "Content-Type: application/json" \
-d '{"model":"jev-1.14","state":"用户想退款","questions":{"ok":{"type":"noul","instructions":"是否要求退款"}}}'
按 token 计费,跟文本模型一样扣余额。
客户端接入
下面三个是最常见的接法。别的客户端只要是 OpenAI 协议的,按同一个思路填:接口地址写 https://aiyunvip.com/v1,Key 写你的令牌。
Claude Code
终端里的编程 Agent官方出品的命令行编程工具,能直接读写你本地的代码。
装
npm install -g @anthropic-ai/claude-code
claude --version
配两个环境变量
Windows(PowerShell):
[Environment]::SetEnvironmentVariable('ANTHROPIC_BASE_URL','https://aiyunvip.com','User')
[Environment]::SetEnvironmentVariable('ANTHROPIC_AUTH_TOKEN','sk-你的令牌','User')
macOS / Linux:
echo 'export ANTHROPIC_BASE_URL="https://aiyunvip.com"' >> ~/.zshrc
echo 'export ANTHROPIC_AUTH_TOKEN="sk-你的令牌"' >> ~/.zshrc
source ~/.zshrc
/v1。Claude Code 自己会拼 /v1/messages,写成 https://aiyunvip.com/v1 反而会变成 /v1/v1/messages 而报 404。
用
claude
/model
在 /model 里选 claude-opus-5-5 / claude-sonnet-5-5 / claude-haiku-5-5。注意改完环境变量后,所有模型都会走我们的接口。
Windows 上改完环境变量要新开一个 PowerShell 窗口才生效。
Codex CLI
OpenAI 的终端编程工具把接口指向我们,用我们的 GPT 模型跑。
装
npm install -g @openai/codex
codex --version
写配置文件
新建或覆盖 ~/.codex/config.toml(Windows 是 C:\Users\你的用户名\.codex\config.toml):
model = "gpt-6.1-sol"
model_provider = "custom"
model_reasoning_effort = "medium"
disable_response_storage = true
[model_providers.custom]
name = "custom"
base_url = "https://aiyunvip.com/v1"
wire_api = "responses"
再新建 ~/.codex/auth.json:
{
"OPENAI_API_KEY": "sk-你的令牌"
}
base_url 这里要带 /v1(和 Claude Code 相反);二是 model 必须换成我们真的有的模型名,默认的 gpt-5-codex 我们没有。
CC Switch
多个供应商之间一键切换开源桌面工具,把 Claude Code、Codex 的供应商配置集中管起来,换线路不用再手改文件。
下载:GitHub Releases(Windows 装 .msi,macOS 用 Homebrew)
添加一个供应商
- 打开 CC Switch → 添加供应商 → 应用类型选 Claude 或 Codex
- 接口地址:选 Claude 填
https://aiyunvip.com;选 Codex 填https://aiyunvip.com/v1 - Key:你的令牌(
sk-开头) - 主模型:Claude 填
claude-sonnet-5-5;Codex 填gpt-6.1-sol
保存后点一下就能切换,CC Switch 会自己把配置写进对应工具。
如果控制台的令牌页里有「CC Switch」这个选项,也可以直接点它一键导入,不用手填。
常见错误
| 现象 | 多半是什么原因 |
|---|---|
401 Invalid token | Key 复制不全、多了空格,或者令牌被删了 |
403 或「无可用渠道」 | 令牌的分组选错了,或者这个模型不在你那个分组里。回控制台看令牌的分组 |
404 模型不存在 | 模型名拼错。对照支持的模型那一节 |
| 拿到一段 HTML | 接口地址漏了 /v1 |
429 | 限流。多数时候是上游在限,等一会儿重试 |
| 「余额不足」「额度已用尽」 | 令牌额度用完,或者账户余额为零 |
报 Function tools with reasoning_effort are not supported | 在用官方组的 gpt-6.1-sol 走 /v1/chat/completions 带工具调用。换性能组或实惠组的令牌,或改用官方组的 gpt-6-astra |
自查清单
接不通的时候,按顺序过一遍,绝大多数问题在前两步:
- 接口地址对吗?OpenAI 协议的客户端要带
/v1,只有 Claude Code 不带。 - Key 是
sk-开头、完整复制、没有空格? - 令牌的分组里,有没有你要调的那个模型?(对照支持的模型)
- 是不是在用官方组的
gpt-6.1-sol走/v1/chat/completions做工具调用?是的话换分组。 - 改完环境变量后,有没有新开一个终端窗口?
还是不通,就把 接口地址、模型名、完整报错原文这三样准备好再反馈 —— 报错里的 request id 能定位到这一次请求走了哪个渠道、卡在哪一步。