Appearance
Codex 生图指南
一句话方案
在 Codex 里生图,不要用对话(Chat / Responses)让它“聊”出图片。 正确做法:把 BASE_URL 和 API_KEY 配成系统环境变量,再让 Codex 读取这两个变量,通过 HTTP 直接调用 Images API 生图。
为什么必须这样做? 平台把上游号池拆成了 生图号池 和 文本号池。走 /v1/chat/completions、/v1/responses 等文本接口会进入文本链路,容易请求失败、超时,或报“模型不支持生图”。只有直接调用 Images API 才会稳定命中生图链路。
生图只用两个接口:
| 需求 | 接口 |
|---|---|
| 文生图 | POST /v1/images/generations |
| 图生图 / 改图 | POST /v1/images/edits(multipart/form-data,需上传参考图) |
三步快速生图
第一步:选线路 + 配置环境变量
接入线路任选其一作为 BASE_URL(末尾不要带 /v1):
| 线路 | BASE_URL |
|---|---|
| 国际加速 | https://us-la.we-token.cc |
| 亚太加速 | https://asian-acc.we-token.cc |
| 国内加速 | https://sub2api.we-token.cc |
| Aitu 独立站点 | https://sub2api.aitu.art |
we-token.cc三条线路用户体系相同,只是加速区域不同;sub2api.aitu.art是独立站点,账号与余额请以对应后台为准。
Windows(PowerShell,永久写入):
powershell
[Environment]::SetEnvironmentVariable("BASE_URL", "https://us-la.we-token.cc", "User")
[Environment]::SetEnvironmentVariable("API_KEY", "你的 API Key", "User")macOS(zsh,永久写入):
bash
echo 'export BASE_URL="https://us-la.we-token.cc"' >> ~/.zshrc
echo 'export API_KEY="你的 API Key"' >> ~/.zshrc
source ~/.zshrc必读
配置后必须 重新打开终端或重启 Codex,新变量才会生效。API_KEY 只放在环境变量里,不要写进代码、截图或聊天。
第二步:把这段话发给 Codex
文生图和改图都用这一段,按需修改 prompt 即可:
txt
请用系统环境变量 BASE_URL 和 API_KEY 生图,不要走 /v1/chat/completions 或 /v1/responses。
- 文生图:HTTP POST ${BASE_URL}/v1/images/generations
- 改图 / 图生图:HTTP POST ${BASE_URL}/v1/images/edits(multipart/form-data,上传参考图)
请求头:Authorization: Bearer ${API_KEY}
模型 model=gpt-image-2,size 按需(例如 2048x1152)。
prompt:<写清楚主体、构图、风格、背景、光线、禁止项>
请把返回的 data[0].b64_json 解码保存为本地 PNG;如果失败,输出 HTTP 状态码和 error.message。第三步:拿结果
图片结果在响应的 data[0].b64_json(base64 字符串),让 Codex 解码保存为本地 PNG 即可。
参数速查
| 参数 | 建议 |
|---|---|
model | 固定用 gpt-image-2 |
size | 不确定先用 1024x1024 测通;常用 1536x1024、1024x1536、2048x1152、2048x2048 |
n | 先从 1 开始,批量任务再逐步增加 |
image | 仅 /v1/images/edits 需要;格式用 PNG / JPEG / WebP |
prompt | 写清主体、构图、风格、背景、光线、文字要求和禁止项,别只写“帮我生成好看的图” |
更详细的尺寸约束、错误码、提示词技巧和完整 curl 示例,见 生图接入指南。
排错速查
| 现象 | 处理 |
|---|---|
Codex 找不到 BASE_URL / API_KEY | 变量名大小写要一致;配置后重开终端或重启 Codex;macOS 桌面应用读不到时,从已 export 变量的终端启动 Codex |
返回 401 | 检查请求头是否为 Authorization: Bearer YOUR_API_KEY,不要漏掉 Bearer |
返回 404 / 路径不存在 | BASE_URL 末尾不要带 /v1,否则会拼成 /v1/v1/... 重复路径 |
| 请求超时 | 先把 n 降到 1、用 1024x1024 测通、把超时设到 30 分钟左右;若提示上游繁忙或限流,稍后重试 |