接入文档

接口兼容 OpenAI 协议。已经有客户端的,一般只要把接口地址和 Key 换掉就能跑;用 Claude Code 这类工具的,改两个环境变量。

三步接入

  1. 注册并登录控制台 注册后进控制台,先确认余额或额度,再去下一步建 Key。
  2. 建一个令牌(Key) 控制台 → 令牌 → 新建令牌。分组请按下一节选,分组选错会出现「无可用渠道」。
  3. 把接口地址换过来 接口地址填 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 tokenKey 复制不全、多了空格,或者令牌被删了
403 或「无可用渠道」令牌的分组选错了,或者这个模型不在你那个分组里。回控制台看令牌的分组
404 模型不存在模型名拼错。对照支持的模型那一节
拿到一段 HTML接口地址漏了 /v1
429限流。多数时候是上游在限,等一会儿重试
「余额不足」「额度已用尽」令牌额度用完,或者账户余额为零
报 Function tools with reasoning_effort are not supported在用官方组的 gpt-6.1-sol 走 /v1/chat/completions 带工具调用。换性能组或实惠组的令牌,或改用官方组的 gpt-6-astra

自查清单

接不通的时候,按顺序过一遍,绝大多数问题在前两步:

  1. 接口地址对吗?OpenAI 协议的客户端要带 /v1,只有 Claude Code 不带。
  2. Key 是 sk- 开头、完整复制、没有空格?
  3. 令牌的分组里,有没有你要调的那个模型?(对照支持的模型)
  4. 是不是在用官方组的 gpt-6.1-sol 走 /v1/chat/completions 做工具调用?是的话换分组。
  5. 改完环境变量后,有没有新开一个终端窗口?

还是不通,就把 接口地址、模型名、完整报错原文这三样准备好再反馈 —— 报错里的 request id 能定位到这一次请求走了哪个渠道、卡在哪一步。