复制本页链接 https://docs.yuqixk.xyz 给 ChatGPT、Codex、Claude 或其他能读取网页的 AI,再告诉它你使用的客户端和模型。本服务使用独立域名体系,只使用 yuqixk.xyz,不得使用任何其他中转站域名。普通 OpenAI 兼容与异步接口默认使用 https://yuqixk.xyz/v1;仅 GPT Image 2 multipart 同步图生图 POST /v1/images/edits 使用 https://yuqixk.xyz/v1;Claude Code / Anthropic Messages 使用不带 /v1 的 https://yuqixk.xyz。
请阅读并严格遵循:
https://docs.yuqixk.xyz
普通 OpenAI 兼容与异步接口默认使用这个 Base URL:
https://yuqixk.xyz/v1
仅 GPT Image 2 multipart 同步图生图 POST /v1/images/edits 使用这个 Base URL:
https://yuqixk.xyz/v1
该同步图生图请求的客户端 timeout 必须至少 600 秒;524、网络超时或结果未知时不得自动重提,必须保留 X-Image2-Trace-Id、error.task_id 与 Request-ID/X-Request-ID,并只查询原任务。
Claude Code / Anthropic Messages 只使用这个不带 /v1 的 Base URL:
https://yuqixk.xyz
按文档为对应客户端配置认证、精确模型名和同步/异步接口,并检查所有实际 API 请求域名都属于 yuqixk.xyz。
交给 AI 时必须同时要求:先按本页 machine contract 的精确模型列表和状态选择端点;模型名只能逐字读取 contract,不能从价格页、历史记录或第三方资料猜测;异步任务只轮询提交响应返回的原任务 ID;失败时不得自动补提第二单。
不要把完整 API Key 发到公开聊天、截图或代码仓库。让 AI 指导你把 Key 填入客户端的私密凭据区或环境变量即可。
完成中转服务配置
使用一把在控制台生成的 API Key,按本页公开合同配置已明确放行的模型。未完成同刻回读的模型会明确标为 pending/do_not_call;image2 使用同步图片接口;千问图像 3.0、Nano Banana 与可灵视频走异步 /v1/videos;GPT Image 2 文生图也走异步接口,上传参考图编辑走 /v1/images/edits。
https://yuqixk.xyz/v1仅 GPT Image 2 multipart 同步图生图:
https://yuqixk.xyz/v1,客户端 timeout 至少 600 秒Claude Code / Anthropic Base URL:
https://yuqixk.xyz(不带 /v1)控制台:
https://yuqixk.xyz · 文档:https://docs.yuqixk.xyzOpenAI 兼容接口使用
Authorization: Bearer YOUR_API_KEY;Anthropic Messages 使用 x-api-key: YOUR_API_KEY。配置中只允许出现 yuqixk.xyz 域名体系,请勿公开密钥。快速开始
- 注册并登录控制台。
- 进入“令牌”,新建一个 API Key 并立即妥善保存。
- 先读取本页机器合同,确认目标模型的
availability=available与call_action=allow_call;pending/do_not_call 只能停下登记。 - 按机器合同选择接口:文字使用 Chat Completions 或 Responses;
image2使用同步图片接口;其它异步能力使用合同列出的提交与轮询路径。
curl -fsS https://docs.yuqixk.xyz/api-contract.json
# 仅当目标模型状态为 available/allow_call 时,才执行合同中的 POST 示例
模型与接口
模型名必须与本页 machine contract 完全一致,大小写、下划线和连字符不可改写。模型广场只用于查看客户价格;模型是否可调用只能以本页 contract 的 availability 与 call_action 为准。
| 场景 | 实际模型示例 | 接口 |
|---|---|---|
| GPT 文字、代码、推理 | gpt-5.5、gpt-5.6-luna、gpt-5.6-sol、gpt-5.6-terra、gpt-6-astra、gpt-6-sol(当前 configuration_ready) | POST /v1/chat/completions 或 POST /v1/responses |
| Grok 文字 | 按 grok_text_chat 家族合同选择精确模型 | POST /v1/chat/completions |
| Claude Code 与 Anthropic Messages(4) | claude-fable-5、claude-opus-5、claude-opus-5-5、claude-sonnet-5 | POST /v1/messages |
| Image2 同步图片(1) | image2 | POST /v1/images/generations;编辑用 POST /v1/images/edits |
| GPT Image 2(4) | gpt-image-2、gpt-image-2-1K-medium、gpt-image-2-2K、gpt-image-2-4K | 文生图:POST /v1/videos 并轮询;图生图:multipart POST /v1/images/edits |
| GPT Image 2.5(7) | gpt-image-2.5、gpt-image-2.5-flare-1k、gpt-image-2.5-flare-2k、gpt-image-2.5-flare-4k、gpt-image-2.5-sunburst-1k、gpt-image-2.5-sunburst-2k、gpt-image-2.5-sunburst-4k | 异步文生图:POST /v1/videos 并轮询;同步文生图:POST /v1/images/generations;同步图生图:multipart POST /v1/images/edits |
| 千问图像 3.0 异步图片(3) | qwen-image-3.0、qwen-image-3.0-pro-1K、qwen-image-3.0-pro | POST /v1/videos,再用 GET /v1/videos/{task_id} 轮询 |
| Nano Banana 异步图片(6) | nano_banana_2、nano_banana_2-2K、nano_banana_2-4K、nano_banana_pro-1K、nano_banana_pro-2K、nano_banana_pro-4K | POST /v1/videos,再用 GET /v1/videos/{task_id} 轮询 |
| 可灵异步视频(4 个公开模型 ID / 3 条能力链) | kling-v2-6、kling-3.0-turbo、kling-3.0-turbo-1080p、kling-motion-control | POST /v1/videos,再用 GET /v1/videos/{task_id} 轮询 |
| Grok 视频 | 按 grok_video_async 家族合同选择带分辨率后缀的型号 | POST /v1/videos,再用 GET /v1/videos/{task_id} 轮询 |
id;只查询 GET /v1/videos/{task_id} 的原任务。queued 配合 progress=0 是正常排队状态,progress 只用于展示,不能单独判定成功或失败;以终态和结果 URL 为准:终态为 completed 且存在结果 URL 即成功,即使进度仍为 0 也不要重复提交。图片首次等待 5 秒,之后每 5–10 秒查询;视频首次等待 5 秒,之后每 10 秒查询。客户端安全上限:图片 30 分钟、视频 45 分钟;达到上限、状态未知或网络超时,保留 task_id、request_id、HTTP 状态和原始错误,停止自动动作,稍后继续查询原任务。遇到 429 时遵循 Retry-After 并加入随机抖动;除 Qwen 明确支持的同键重放外,不得自动重试或补提第二单。提交响应与重试安全:所有异步提交均应收到 JSON 对象并从顶层 id 取得任务 ID;没有 id 的 2xx、网络超时、503/504 或 429 都属于结果未知,不得猜 data.id、不得换端点或自动重提。保存响应头中的 Request-Id/X-Request-ID(若存在)以及完整脱敏错误 JSON。只有千问合同支持用同一个 Idempotency-Key 重放完全相同的请求;Nano、GPT Image 2 文生图和可灵没有公开幂等重放合同,未知结果只能查询原任务或人工核对。
GPT 文字模型:Chat Completions 与 Responses
https://yuqixk.xyz/v1,再在私密环境变量中放入用户 API Key。这里是 OpenAI 兼容入口;精确模型 ID 和完整机器合同见 api-contract.json。认证头固定为 Authorization: Bearer YOUR_API_KEY。模型名必须原样读取机器合同,不要自行猜别名。
最小示例
curl https://yuqixk.xyz/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"EXACT_MODEL_ID","messages":[{"role":"user","content":"你好"}]}'
Responses、流式事件、错误语义和未知结果处理留在机器合同;结果未知时保留请求标识并停止,不自动补提。
代码客户端与 Codex
/v1/chat/completions 与 /v1/responses 的路径固定,但 GPT 当前状态为 configuration_ready/configure_and_validate。普通 OpenAI 兼容客户端使用 Chat Completions;Codex 或明确要求 Responses API 的客户端使用 Responses。Base URL 是 https://yuqixk.xyz/v1;模型名只能从本页 machine contract 读取,不能从价格页、历史记录或第三方资料猜测。
Codex 配置必须写入用户级 ~/.codex/config.toml;项目目录里的 .codex/config.toml 会忽略自定义 provider。下面使用独立 provider 和环境变量,避免与 OpenAI 官方配置混用。
# ~/.codex/config.toml
model_provider = "relay"
model = "EXACT_MODEL_ID_FROM_CONTRACT"
[model_providers.relay]
name = "API 中转服务"
base_url = "https://yuqixk.xyz/v1"
env_key = "RELAY_API_KEY"
wire_api = "responses"
在系统私密环境中设置 RELAY_API_KEY,不要把真实 Key 写进 TOML 或项目仓库。配置规则以 Codex 官方配置参考为准。
Claude Code
claude-fable-5、claude-opus-5、claude-opus-5-5、claude-sonnet-5。本文给出 Claude Code 所需的完整 Base URL、认证头、请求字段、SSE 事件和错误处理;不要求客户 AI 猜测或查第三方资料。Claude Code 使用 Anthropic Messages:Base URL 不带 /v1,请求为 POST https://yuqixk.xyz/v1/messages,认证头为 x-api-key: YOUR_API_KEY,并固定发送 anthropic-version: 2023-06-01 与 Content-Type: application/json。把真实 Key 放入 ANTHROPIC_API_KEY 私密环境变量,不要写入文件、日志或聊天。
| 模型 ID | 状态 | 动作 |
|---|---|---|
claude-fable-5 | available | 按最小合同验证 |
claude-opus-5 | available | 按最小合同验证 |
claude-opus-5-5 | available | 按最小合同验证 |
claude-sonnet-5 | available | 按最小合同验证 |
直接配置与最小验证
export ANTHROPIC_BASE_URL="https://yuqixk.xyz"
export ANTHROPIC_API_KEY="YOUR_API_KEY"
curl -fsS https://docs.yuqixk.xyz/api-contract.json
# 将真实 Key 保存在私密环境变量;不要写入文件、日志或聊天
Messages 最小请求
POST https://yuqixk.xyz/v1/messages
x-api-key: YOUR_API_KEY
anthropic-version: 2023-06-01
content-type: application/json
{"model":"EXACT_MODEL_ID","max_tokens":64,"messages":[{"role":"user","content":"..."}]}
必填字段是 model、max_tokens、messages。只发送本页 contract 明确列出的字段;收到 2xx 后按非流式响应或 SSE 终止事件判断,收到错误或未知结果则保留 request ID 并停止自动补提。
本文是客户接入配置合同,不公开供应商、渠道、价格或内部拓扑。运行时若返回 401/403/404/429/5xx,按错误表定位,不要猜新域名、模型别名或替代字段。
Grok 文字模型
当前精确型号为 grok-4.5、grok-4.6、grok-4.7,共用同一份 OpenAI 兼容 Chat 合同。Base URL 为 https://yuqixk.xyz/v1,使用 Authorization: Bearer YOUR_API_KEY,请求 POST /v1/chat/completions,JSON 必填 model 和 messages。新型号若出现在价格页,先查机器合同所属家族和状态。
curl -X POST "https://yuqixk.xyz/v1/chat/completions" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"grok-4.7","messages":[{"role":"user","content":"你好"}]}'
遇到超时、429、5xx 或响应结果未知,保留请求标识和错误信息,停止自动补提;不要根据相似名称改模型或猜测另一个接口。
Image2 与 GPT Image 2
gpt-image-2: available/allow_call;gpt-image-2-1K-medium: available/allow_call;gpt-image-2-2K: available/allow_call;gpt-image-2-4K: available/allow_call;image2: fail_closed/do_not_callimage2:同步文生图与图生图
image2 的公开合同仍固定为同步 Images 形状:文生图使用 POST /v1/images/generations;参考图编辑使用 multipart POST /v1/images/edits,文件字段为 image。只有 machine contract 标为 available/allow_call 时才可执行;当前状态下不要发送请求。
当前不可执行:image2 为 fail_closed/do_not_call。客户端只保留既有配置,不发送请求、不改成相似模型,也不从价格页推断可用性。
GPT Image 2 四款:文生图与图生图
逐模型状态:gpt-image-2: available/allow_call;gpt-image-2-1K-medium: available/allow_call;gpt-image-2-2K: available/allow_call;gpt-image-2-4K: available/allow_call
以下 4 个精确、区分大小写的 GPT Image 2 模型名分别独立生效。文生图走默认异步任务入口;上传参考图编辑固定走同步兼容的 multipart POST /v1/images/edits,并使用专用 Base URL https://yuqixk.xyz/v1。客户端请求超时必须设置为至少 600 秒。这个地址仍然进入本站中转、使用同一 API Key 和计费,只是为长同步请求使用不同公网入口;不要把图生图请求发到 /v1/videos,也不要把文生图发到 /v1/images/generations。
图生图结果未知时:HTTP 524、网络超时、503/504 或其它结果未知都不能作为自动重提依据。保存响应头 X-Image2-Trace-Id、错误体 error.task_id、Request-ID/X-Request-ID、HTTP 状态与脱敏错误 JSON;存在原任务 ID 时,只使用默认 API 入口 https://yuqixk.xyz/v1 的 GET /v1/videos/{task_id} 查询这个原任务。只有确认原任务没有创建上游任务、没有产生结果后才能人工重新提交。
curl --max-time 600 https://yuqixk.xyz/v1/images/edits \
-H "Authorization: Bearer $API_KEY" \
-F "model=gpt-image-2-1K-medium" \
-F "image[]=@./reference.png;type=image/png" \
-F "prompt=保留主体,把背景改成简洁的办公场景" \
-F "size=1024x1024"
| 模型 | 图生图 multipart | 异步文生图 JSON | 说明 |
|---|---|---|---|
gpt-image-2 | -F "size=1024x1024"、-F "size=1536x1024"、-F "size=1024x1536" | "size": "1024x1024"、"size": "1536x1024"、"size": "1024x1536" | 基础款 |
gpt-image-2-1K-medium | -F "size=1024x1024" | "size": "1024x1024" | 1K medium 档 |
gpt-image-2-2K | -F "size=2048x2048" | "size": "2048x2048" | 2K 档 |
gpt-image-2-4K | -F "size=2880x2880" | "size": "2880x2880" | 4K 档 |
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2-2K",
"prompt": "一张干净的企业 AI 工作台等距插画,青绿色点缀,白色背景",
"size": "2048x2048"
}'
size 与 aspect_ratio 最多只能传一个;两者都不传时由适配器使用默认值或参考图比例,同时传入即拒绝。这组规则同时适用于异步文生图 JSON 与图生图 multipart。4K 正方形示例使用 "size": "2880x2880";其他比例只能改传公开支持的顶层 aspect_ratio。
GPT Image 2 严格输入边界:文本字段只允许 model、prompt,以及最多一个 size 或 aspect_ratio;图生图文件字段只允许重复的精确 image[]。图生图的 response_format 可省略,或发送 url(大小写不敏感);b64_json 和其他值都会被拒绝。n、quality、resolution、detailLevel、aspectRatio、ratio、width、height、mask 和所有未知字段都会被拒绝;服务内部固定单图和 URL 结果。单次请求体最大 10 MiB,最多 6 张参考图,图片合计最大 7 MiB。只接受 JPEG、PNG、WebP;HEIC/HEIF、AVIF、GIF、BMP、TIFF、RAW 直接拒绝,不做静默转码。
合同隔离:同步模型 image2 继续使用本节上方既有的 image 文件字段与同步端点;它不经过这三个 GPT Image 2 适配器,也不得套用 image[] 规则。反过来,GPT Image 2 三档不接受单数 image。
验收分辨率时同时核对原请求模型名与返回的 size;1K、2K、4K 正方形分别应为 1024x1024、2048x2048、2880x2880。
curl "https://yuqixk.xyz/v1/videos/$TASK_ID" \
-H "Authorization: Bearer $API_KEY"
GPT Image 2 异步文生图完成后,以 status=completed 且存在顶层 url 或 image_url 为成功条件;progress 仅展示,progress=0 不能触发重复提交。失败时读取 error 并停止。
GPT Image 2.5:七个精确型号与三种固定接法
gpt-image-2.5、gpt-image-2.5-flare-1k、gpt-image-2.5-flare-2k、gpt-image-2.5-flare-4k、gpt-image-2.5-sunburst-1k、gpt-image-2.5-sunburst-2k、gpt-image-2.5-sunburst-4k。不存在公开泛型号 gpt-image-2.5-flare 或 gpt-image-2.5-sunburst,不得删掉分辨率后缀。两站使用同一套客户合同,只替换当前站点的 API Base URL。所有请求都使用 Authorization: Bearer YOUR_API_KEY;一次业务请求只允许一次生成 POST,超时、连接中断或结果未知时不得自动重复提交。
接法 A:异步文生图
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2.5-flare-4k",
"prompt": "一只白色陶瓷杯放在木桌上",
"size": "2880x2880",
"n": 1
}'
保存响应中的 id 或明确返回的 task_id,然后只查询原任务:GET https://yuqixk.xyz/v1/videos/{task_id}。只有最终状态为 completed 或等价成功状态,并且存在 data[].url,才算成功;排队、运行中、提交成功或进度数值都不代表已出图。
接法 B:同步文生图
curl -X POST "https://yuqixk.xyz/v1/images/generations" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2.5-sunburst-2k",
"prompt": "月光下的湖面,真实摄影风格",
"size": "2048x2048",
"n": 1
}'
保持 HTTP 连接并直接等待 data[].url;这条接法不需要客户轮询。
接法 C:同步图生图
curl -X POST "https://yuqixk.xyz/v1/images/edits" \
-H "Authorization: Bearer $API_KEY" \
-F "model=gpt-image-2.5-flare-2k" \
-F "prompt=保留人物和构图,改成水彩插画" \
-F "image[]=@./reference-1.png;type=image/png" \
-F "image[]=@./reference-2.png;type=image/png" \
-F "response_format=url"
最多上传 9 张参考图,每张都必须重复使用 multipart 文件字段 image[]。直接等待同步响应中的 data[].url;不要调用 /v1/videos,也不要轮询。
| 规则 | GPT Image 2.5 固定合同 |
|---|---|
| 输出数量 | n=1;不得传 n=4 |
| 尺寸与比例 | size 与 aspect_ratio 最多传一个,不得同时发送;文生图可两者都省略 |
| 比例格式 | aspect_ratio 必须是精确的 ASCII 宽:高 字符串,并且命中对应型号白名单;不得传小数、空格、中文冒号、别名或未公开比例,也不得依赖服务自动归一化 |
| 比例白名单 | 基础型号支持 1:1、5:4、9:16、21:9、16:9、3:2、4:3、4:5、3:4、2:3;六个 K 档型号额外支持 7:6 |
| 基础型号尺寸 | 1024x1024、1536x1024、1536x864、1536x1152、1152x1536、1280x1024、1024x1280、1536x656、1024x1536、auto |
| K 档尺寸格式 | 宽x高,宽高必须是正整数且均为 16 的倍数;最长边不超过 3840,长短边比例不超过 3:1;总像素范围:1K 为 655,360–1,048,576,2K 为 655,360–4,194,304,4K 为 655,360–8,294,400 |
| 默认正方形档位 | 1K:1024x1024;2K:2048x2048;4K:2880x2880 |
| 图生图输入 | 1–9 个真实上传文件;不接受 JSON 图片数组、Base64、图片 URL 或本地路径字符串 |
| 图生图结果格式 | response_format 可省略;如发送,只允许 url |
| 结果未知 | 保存请求时间、请求标识和已返回的任务标识;异步只查原任务,同步不得重新 POST |
图生图也允许同时省略 size 与 aspect_ratio,但只有全部参考图比例一致且服务能够识别时才会自动推断;比例不一致或无法识别时返回 HTTP 400 size_required,此时应修正原请求,不得自动重复提交。
与 image2 隔离:image2 继续使用单数文件字段 image;GPT Image 2.5 只接受重复字段 image[]。两份合同不得互相套用。
千问图像 3.0 异步生图
qwen-image-3.0、qwen-image-3.0-pro-1K 与 qwen-image-3.0-pro 都使用异步任务接口。提交后读取响应中的 id,只轮询这个原任务 ID。任务查询记录与成品临时地址仅保证 24 小时,请及时下载保存。
| 模型 | 公开调用规格 |
|---|---|
千问 Image 3.0qwen-image-3.0 | 文生图/图生图;支持 1K/2K |
千问 Image 3.0 Pro 1Kqwen-image-3.0-pro-1K | 文生图/图生图;固定 1K 档 |
千问 Image 3.0 Pro 2Kqwen-image-3.0-pro | 文生图/图生图;固定 2K 档 |
IDEMPOTENCY_KEY="qwen-$(uuidgen)"
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $IDEMPOTENCY_KEY" \
-d '{
"model": "qwen-image-3.0",
"prompt": "一张干净的企业 AI 工作台等距插画,青绿色点缀,白色背景",
"size": "1024x1024"
}'
提交图生图任务
在同一个请求中传入顶层 images 数组,提供 1–3 张有序参考图;服务会按数组顺序传给千问。元素可为公网 HTTPS URL,或完整的 data:image/...;base64, Data URI;不接收 HTTP、裸 Base64、带账号密码或片段的 URL。单张 Data URI 解码后不得超过 10 MB,整个请求体不得超过 14 MiB:JPEG、PNG、WebP、GIF、BMP、TIFF、HEIC/HEIF 与 AVIF 会在受限进程中校验并归一化,SVG、PDF、PSD 与 RAW 默认拒绝。prompt_extend_mode 使用 direct,图生图不支持 agent。
IDEMPOTENCY_KEY="qwen-$(uuidgen)"
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $IDEMPOTENCY_KEY" \
-d '{
"model": "qwen-image-3.0-pro-1K",
"prompt": "保留人物主体,把背景改为简洁的企业办公场景",
"images": [
"https://example.com/person.png",
"https://example.com/style.png",
"https://example.com/background.png"
],
"size": "1024x1024",
"prompt_extend_mode": "direct"
}'
curl "https://yuqixk.xyz/v1/videos/$TASK_ID" \
-H "Authorization: Bearer $API_KEY"
当 status=completed 且顶层存在 url 或 image_url 时读取成品地址;queued、processing 时继续查询。progress 只作展示,queued + progress=0 正常;failed 时读取 error 并停止。若返回 submission_outcome_unknown,从同一响应的 task_id 或 error.task_id 取原任务 ID;没有原任务 ID 时也必须停单并保留 request_id,不得猜 ID 或补单。
标准版只传本站已验证的 size(1024x1024、2048x2048)或省略使用默认值;不要猜测未列出的比例或尺寸。Pro 1K 固定 1024x1024,Pro 2K 固定 2048x2048;任何跨档尺寸都会被拒绝。
图生图只接受顶层 images 数组;image、image_url、input_image、reference_image_url 与消息内容中的嵌套图片字段会被拒绝。Data URI 会校验真实文件签名、声明 MIME、像素数与体积;公网 HTTPS URL 由图像生成服务校验。允许字段为 model、prompt、images、n、size/resolution、aspect_ratio/aspectRatio、prompt_extend、watermark、negative_prompt、prompt_extend_mode、seed、idempotency_key;其中 n 固定为 1,需要多张结果时提交多个独立任务。客户优先使用请求头 Idempotency-Key;请求体同名字段是兼容写法,两处同时发送时必须一致。
每个新的逻辑任务必须生成新的 8–128 位 Idempotency-Key;只有重试完全相同的请求体时才复用原键。客户端和 AI 不得把示例键固化为全局常量。同键同请求返回原任务,同键不同请求返回 409。收到 429 时按 Retry-After 等待;若响应包含 submission_outcome_unknown,从响应中的 task_id 或 error.task_id 继续轮询原任务;没有任务 ID 时停单并保留 request_id,不要猜 ID 或自动补单。
Nano Banana 异步图片生成
POST /v1/videos;提交响应顶层的 id 是任务 ID。可用模型:nano_banana_2、nano_banana_2-2K、nano_banana_2-4K、nano_banana_pro-1K、nano_banana_pro-2K、nano_banana_pro-4K。请求体只使用本节列出的字段;分辨率由完整模型名决定,不要另外传 size 或 resolution。
文生图
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nano_banana_2",
"prompt": "一只橘猫坐在窗边晒太阳,写实摄影风格"
}'
图生图
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nano_banana_2",
"prompt": "保留人物主体,把背景改成日落海边",
"images": ["https://example.com/input.png"]
}'
图生图的 images 只能放一张无需登录即可访问的公网 HTTPS 图片。不要传 HTTP、Data URI、裸 Base64、本地路径或多张图片。
查询任务
curl "https://yuqixk.xyz/v1/videos/$TASK_ID" \
-H "Authorization: Bearer $API_KEY"
提交后保存顶层 id,只查询 GET /v1/videos/{task_id}。queued、processing 时继续查询;只有 status=completed 且返回 url 或 image_url 才算成功。progress=0 可能只是排队,不能因此重复提交。
可灵视频与动作迁移
POST /v1/videos 提交,再用 GET /v1/videos/{task_id} 轮询。通用 OpenAI Chat 客户端若只会调用 /v1/chat/completions 或 /v1/responses,不能直接调用可灵。先按目标选择精确模型:可灵 2.6 使用 kling-v2-6;可灵 3.0 Turbo 的 720P 与 1080P 是两个独立模型,分别使用 kling-3.0-turbo 与 kling-3.0-turbo-1080p;动作迁移使用独立的 kling-motion-control。不要用 resolution 参数切换 3.0 分辨率。
| 模型 ID | 规格 | 价格 | 公开请求 |
|---|---|---|---|
kling-v2-6 | 可灵 2.6 | ¥0.36/秒 | |
kling-3.0-turbo | 可灵 3.0 Turbo(固定 720P) | ¥0.96/秒 | |
kling-3.0-turbo-1080p | 可灵 3.0 Turbo(固定 1080P) | ¥1.20/秒 | |
kling-motion-control | 可灵动作迁移 | ¥0.60/秒 |
| 能力 | 模型 | 公开请求字段 |
|---|---|---|
| 可灵 2.6 文生视频 | kling-v2-6 | model、prompt、seconds |
| 可灵 3.0 Turbo 720P 文生视频 | kling-3.0-turbo | model、prompt、seconds |
| 可灵 3.0 Turbo 1080P 文生视频 | kling-3.0-turbo-1080p | model、prompt、seconds |
| 人物动作迁移 | kling-motion-control | model、image_url、video_url、character_orientation、mode、seconds,可选 keep_original_sound |
三种文生视频模型的客户字段固定为 model、prompt、seconds;示例使用 5 秒,按秒计费。不要发送上游字段 duration、resolution,也不要提交供应商名称或内部渠道编号。
kling-v2-6
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v2-6",
"prompt": "对需要生成的画面和动作的明确描述",
"seconds": 5
}'
kling-3.0-turbo
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-3.0-turbo",
"prompt": "对需要生成的画面和动作的明确描述",
"seconds": 5
}'
kling-3.0-turbo-1080p
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-3.0-turbo-1080p",
"prompt": "对需要生成的画面和动作的明确描述",
"seconds": 5
}'
提交后只轮询返回的原任务 ID:GET /v1/videos/{task_id}。失败、取消、超时或结果未知时保留原任务 ID、错误信息和请求时间,不要自动补提第二单。
kling-motion-control
使用参考图片确定人物与画面,再迁移动作视频中的动作。seconds 是本站必填的任务时长字段,必须与本次采用的参考视频时长一致:至少 3 秒;character_orientation=image 时最多 10 秒,设为 video 时最多 30 秒。本站内部负责转换私有字段,客户只发送本页列出的公开字段。
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-motion-control",
"image_url": "https://example.com/person.jpg",
"video_url": "https://example.com/motion.mp4",
"character_orientation": "image",
"mode": "std",
"seconds": 5,
"keep_original_sound": "no"
}'
curl "https://yuqixk.xyz/v1/videos/$TASK_ID" \
-H "Authorization: Bearer $API_KEY"
image_url 必须是公网可直接访问的 HTTPS 图片直链,只接受真实 MIME 为 image/jpeg 或 image/png 的 JPG/JPEG/PNG;HEIC、WEBP、AVIF 等必须先转换,不能只改后缀。URL 若需要登录、已过期、返回 HTML 或响应 MIME 不匹配,均应在提交前判为输入错误。
video_url 必须是公网可直接访问的参考视频直链;本站当前不公开推断其它视频格式字段。keep_original_sound 是可选字段,只允许 yes 或 no;当前公开稳定模式固定为 mode=std。图片应清晰包含完整上半身或全身,动作视频只能有一个清晰人物。
提交、轮询与终态响应
提交成功后保存响应中的顶层 id,它就是后续唯一允许轮询的 task_id。任务处于 queued、pending、processing、running 或 in_progress 时继续轮询;progress=0 不是失败。只在 completed 且结果中存在视频 URL 时判定成功;达到客户端安全上限后停单并保留原任务信息,不自动补单。
{
"id": "task_example_123",
"object": "generation.task",
"model": "kling-v2-6",
"status": "queued",
"progress": 0,
"created_at": 1787000000
}
{
"id": "task_example_123",
"object": "generation.task",
"model": "kling-v2-6",
"status": "processing",
"progress": 42,
"created_at": 1787000000
}
{
"id": "task_example_123",
"object": "generation.task",
"model": "kling-v2-6",
"status": "completed",
"progress": 100,
"completed_at": 1787000120,
"result": {
"type": "video",
"data": [{"url": "https://example.com/result.mp4", "format": "mp4"}]
}
}
{
"id": "task_example_123",
"object": "generation.task",
"model": "kling-v2-6",
"status": "failed",
"progress": 100,
"error": {"code": "generation_failed", "message": "具体失败原因"}
}
HTTP 401 表示当前站点 API Key 无效;HTTP 402/429 表示余额或限额;HTTP 503 表示服务暂时不可用。客户端不得把这些错误统一改写成“模型服务额度不足”,应保留 HTTP 状态、error.code、error.message 与 Request ID。
四个公开模型都按请求中的真实 seconds 计费,公开每秒价格见上表,实际最终扣费以控制台账单/使用记录为准。失败不等于自动退款;在原 task_id 的终态、视频 URL 和最终账单未核清前,不得自动补单,也不得用静态价格反推实际扣费。
Grok 视频五个规格
两站使用同一套客户接口。1.0 提供 grok-video-1.0-480p、grok-video-1.0-720p;1.5 提供 grok-video-1.5-480p、grok-video-1.5-720p、grok-video-1.5-1080p。分辨率由完整模型名确定;基础名与 grok-video-1.0-1080p 不属于公开型号。
curl -X POST "https://yuqixk.xyz/v1/videos" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"grok-video-1.5-720p","prompt":"一只纸飞机穿过晴朗的城市上空","seconds":5}'
curl "https://yuqixk.xyz/v1/videos/$TASK_ID" \
-H "Authorization: Bearer $API_KEY"
提交后保存响应顶层 id,只查询这个任务。queued、pending、processing、running、in_progress 继续等待;只有 completed 且存在可访问的视频 URL 才算成功。progress=100、HTTP 200 和任务 ID 都不能单独作为成功依据。失败或结果未知时保留原任务 ID、请求时间和错误信息,不自动提交第二单。按 seconds 计费,查询不重复计费;不要传 duration 或 resolution。
Python 与 OpenAI SDK
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://yuqixk.xyz/v1",
)
completion = client.chat.completions.create(
model="gpt-5.6-terra",
messages=[{"role": "user", "content": "写一段产品更新说明。"}],
)
print(completion.choices[0].message.content)
Node.js、Postman、Cherry Studio、LobeChat 等客户端可复用相同的 Base URL 与 Bearer Key;文字模型可使用 OpenAI Chat/Responses 兼容调用。可灵不属于 Chat 模型,客户端必须额外支持异步 /v1/videos 提交与轮询。密钥建议以环境变量或客户端的私密凭据区保存。
错误排查与安全
| 现象 | 优先检查 |
|---|---|
401 Invalid token | 确认使用控制台新建的 Key,鉴权头为 Bearer 加密钥,且没有多余空格。 |
401 Incorrect API key provided,错误信息出现 api.openai.com 或 platform.openai.com | 请求仍发往 OpenAI 官方,本服务 Key 不会被官方接受。不要反复更换 Key;把客户端 Base URL 精确设置为 https://yuqixk.xyz/v1,并确认实际请求 Host 只属于 yuqixk.xyz。 |
404,实际路径出现 /v1/v1/... | OpenAI 兼容 SDK 的 Base URL 已经以 /v1 结尾,SDK 会继续追加资源路径,不要再手工追加第二个 /v1。直接 HTTP 请求则使用本页给出的完整 /v1/... 路径。Claude Code 的 Base URL 不带 /v1。 |
503 服务暂时不可用 | 先到模型广场核对完整模型名并保存 Request ID;只有确认原请求没有创建任务后才能重新提交,不得换错误端点或盲目重试。 |
| 客户端显示“模型服务额度不足”,但服务端没有可灵请求 | 这是客户端的泛化错误,不代表真实余额不足。确认实际请求为 POST https://yuqixk.xyz/v1/videos,模型名为本页列出的可灵型号,并让客户端保留原始 HTTP 状态、错误 JSON 与 Request ID;若只调用 Chat/Responses,必须改造为异步视频任务流程。 |
给 2.6/3.0 增加 image_url 后失败 | 当前公开合同只保证 5 秒文生视频,图生视频扩展未开放。删除未公开字段;不要把其它能力的字段套入这两个模型。 |
| 动作迁移提示图片格式或无法获取素材 | 确认 image_url 是无需登录的公网 HTTPS 直链,响应真实 MIME 为 image/jpeg 或 image/png;HEIC/WEBP/AVIF 先转换。输入校验失败不代表上游余额不足。 |
| GPT Image 请求路径错误 | GPT Image 2 tier models 文生图使用异步 /v1/videos 并轮询;上传参考图的图生图使用 multipart /v1/images/edits,每张文件都必须使用精确字段 image[]。单数 image 只属于独立的同步 image2 合同。 |
| 千问 Pro 提示尺寸与计费档不匹配 | qwen-image-3.0-pro-1K 固定使用 1K 档,qwen-image-3.0-pro 固定使用 2K 档。请保持 size 与精确模型名一致,或改用标准版 qwen-image-3.0。 |
| Nano 请求立即报错或路径错误 | 确认提交地址是 POST /v1/videos,查询地址是 GET /v1/videos/{task_id}。 |
| 图片或视频结果无法显示 | 先保存响应中的结果数据或 URL;确认客户端没有拦截大响应体,并保存响应头或 JSON 中的 Request ID。结果 URL 可能是临时地址,应立即下载。 |
| GPT Image 2 图生图出现 524、网络超时或结果未知 | 仅适用于 GPT Image 2 tier models multipart 同步图生图:确认 Base URL 为 https://yuqixk.xyz/v1、客户端 timeout 至少 600 秒;保存响应头 X-Image2-Trace-Id、错误体 error.task_id 与 Request-ID/X-Request-ID。用默认 API 入口的 GET /v1/videos/{task_id} 查询原任务,不得自动补提第二单。同步 image2 不使用这条异步回查规则。 |
| 额度消耗异常 | 核对模型、分辨率、质量、并发和重试策略。图片/视频失败重试前应先确认是否已创建任务。 |
- 每个应用或环境使用独立 Key,便于随时单独停用。
- 禁止把 Key 放在浏览器前端、移动端安装包、公开仓库和截图中。
- 服务端记录接口返回的请求 ID,提交工单时提供请求时间、模型名、接口和请求 ID,不要发送完整 Key。
- 模型广场用于确认型号与客户价格;生产可用性还必须结合鉴权、服务状态和真实请求的 Request ID 判断,不能只看“已上架”。
企业 AI 中转服务