Codex 中转介绍
🧩 API 接口调用
Nexoraivision Codex 中转的 Responses API / Chat Completions API 调用参数与示例。
接口总览
| 接口 | URL | 用途 |
|---|---|---|
| Responses API(推荐) | POST /v1/responses | 新版统一文本接口,支持所有 GPT-5.x |
| Chat Completions(兼容) | POST /v1/chat/completions | OpenAI 老协议,兼容存量 SDK |
| Models | GET /v1/models | 列出当前可用模型 |
| Images Generations | POST /v1/images/generations | 文生图,详见 图像模型 |
| Images Edits | POST /v1/images/edits | 参考图编辑,详见 图像模型 |
统一 Base URL:
https://nexor.nexoraivision.com
认证方式:Authorization: Bearer YOUR_API_KEY
连通性快速测试
curl https://nexor.nexoraivision.com/v1/models \
-H "Authorization: Bearer YOUR_API_KEY"
返回 JSON 模型列表 = 连通正常。返回 401 / 403 优先检查 Key 状态、分组、过期时间。
一、Responses API(推荐)
新版接口,所有 GPT-5.x 文本模型都用这个。
接口地址
POST https://nexor.nexoraivision.com/v1/responses
常用参数
| 参数 | 必填 | 说明 |
|---|---|---|
model | ✅ | 模型名,如 gpt-5.4、gpt-5.3-codex |
input | ✅ | 输入内容,字符串或消息数组(支持 [{role, content}]) |
instructions | — | 系统提示词(建议放这里,而不是混在 input 里) |
temperature | — | 采样温度,建议 0-2 |
top_p | — | 核采样,0-1 |
max_output_tokens | — | 最大输出 token 数 |
reasoning.effort | — | 嵌套对象:{"effort": "low" / "medium" / "high" / "xhigh"} |
stream | — | true 开启流式响应(SSE) |
tools | — | 工具定义数组(Function Calling) |
重要:Responses API 的推理强度字段是嵌套对象
reasoning: {"effort": "medium"},不是 Chat Completions 的顶层 reasoning_effort。写错会直接 upstream_error。调用示例
curl https://nexor.nexoraivision.com/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gpt-5.4",
"instructions": "你是一个简洁的中文助手",
"input": "用三句话解释幂等性",
"temperature": 0.7,
"top_p": 1,
"max_output_tokens": 1200,
"reasoning": {"effort": "medium"}
}'
import requests
resp = requests.post(
"https://nexor.nexoraivision.com/v1/responses",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
json={
"model": "gpt-5.4",
"instructions": "你是一个简洁的中文助手",
"input": "用三句话解释幂等性",
"temperature": 0.7,
"max_output_tokens": 1200,
"reasoning": {"effort": "medium"}
}
)
print(resp.json())
const resp = await fetch('https://nexor.nexoraivision.com/v1/responses', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: 'gpt-5.4',
instructions: '你是一个简洁的中文助手',
input: '用三句话解释幂等性',
temperature: 0.7,
max_output_tokens: 1200,
reasoning: { effort: 'medium' }
})
})
console.log(await resp.json())
也可以把 但推荐用
input 写成消息数组(OpenAI 官方支持):"input": [
{"role": "system", "content": "你是一个简洁的中文助手"},
{"role": "user", "content": "用三句话解释幂等性"}
]
instructions 字段 + input 纯字符串的写法 — 中转端兼容性更好,OpenAI 官方也推荐这样。流式响应
加 "stream": true,响应改为 SSE:
curl https://nexor.nexoraivision.com/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gpt-5.4",
"input": "写一首关于秋天的短诗",
"stream": true
}'
输出格式(每行一个 SSE 事件):
event: response.output_text.delta
data: {"delta":"秋"}
event: response.output_text.delta
data: {"delta":"风"}
...
event: response.completed
data: {"response":{...}}
二、Chat Completions API(兼容)
老协议,所有原本走 api.openai.com/v1/chat/completions 的 SDK 直接换 base URL 即可。
接口地址
POST https://nexor.nexoraivision.com/v1/chat/completions
字段对应
| Responses 字段 | Chat Completions 字段 |
|---|---|
instructions + input (字符串) | messages 数组(含 system 消息) |
input (消息数组) | messages |
max_output_tokens | max_tokens |
reasoning: {effort: "..."}(嵌套对象) | reasoning_effort: "..."(顶层字段) |
注意
reasoning_effort vs reasoning.effort:- Chat Completions 用顶层
reasoning_effort: "medium" - Responses 用嵌套
reasoning: {"effort": "medium"}
upstream_error。调用示例
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://nexor.nexoraivision.com/v1"
)
resp = client.chat.completions.create(
model="gpt-5.4",
messages=[
{"role": "system", "content": "你是一个简洁的中文助手"},
{"role": "user", "content": "用三句话解释幂等性"}
],
temperature=0.7,
max_tokens=1200,
reasoning_effort="medium"
)
print(resp.choices[0].message.content)
import OpenAI from 'openai'
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://nexor.nexoraivision.com/v1'
})
const resp = await client.chat.completions.create({
model: 'gpt-5.4',
messages: [
{ role: 'system', content: '你是一个简洁的中文助手' },
{ role: 'user', content: '用三句话解释幂等性' }
],
temperature: 0.7,
max_tokens: 1200,
reasoning_effort: 'medium'
})
console.log(resp.choices[0].message.content)
curl https://nexor.nexoraivision.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gpt-5.4",
"messages": [
{"role": "system", "content": "你是一个简洁的中文助手"},
{"role": "user", "content": "用三句话解释幂等性"}
],
"temperature": 0.7,
"max_tokens": 1200,
"reasoning_effort": "medium"
}'
Function Calling(工具调用)
Responses 和 Chat Completions 都支持 tools 字段。结构与 OpenAI 官方一致:
{
"model": "gpt-5.4",
"input": [
{"role": "user", "content": "今天上海天气怎么样"}
],
"tools": [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "获取指定城市的实时天气",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "城市名"}
},
"required": ["city"]
}
}
}
]
}
模型识别到需要调用工具时,返回 tool_calls:
{
"output": [
{
"type": "function_call",
"name": "get_weather",
"arguments": "{\"city\":\"上海\"}"
}
]
}
结构化输出(JSON Schema)
强制返回符合 schema 的 JSON:
{
"model": "gpt-5.4",
"input": [{"role": "user", "content": "提取出张三 25 岁的姓名和年龄"}],
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "person",
"schema": {
"type": "object",
"properties": {
"name": {"type": "string"},
"age": {"type": "integer"}
},
"required": ["name", "age"]
}
}
}
}
错误码速查
| 状态码 | 含义 | 排查 |
|---|---|---|
200 | 成功 | — |
400 | 请求参数错 | 检查 JSON 格式、模型名拼写、参数取值范围 |
401 | Key 无效 | 控制台确认 Key 状态、是否被吊销 |
403 | 无权限 | Key 所属分组没授权该模型 / IP 白名单拒绝 |
404 | 接口不存在 | 检查 URL 是否拼对(/v1/responses vs /v1/chat/completions) |
413 | 请求体过大 | 减少 input 长度或换 1M 上下文模型 |
422 | 字段值不合法 | 如 temperature 超出 0-2 范围 |
429 | 触发限流 | 加指数退避,或控制台升配 |
500 / 502 / 503 | 服务端错 | 重试,持续报错联系客服 |
详细排错见 故障排查。
