概述
Grok Imagine 2 是 xAI 最新发布的第二代图像生成模型,相比初代在参数可控性与编辑能力上是整代升级:宽高比与分辨率参数真实生效、2K 档可用、单次最多出 10 张、参考图编辑能真正保留原图特征。 API易 提供grok-imagine-image(标准)与 grok-imagine-image-quality(高质量)两个型号,共用同一套接口与参数,区别只在画质档位与价格。
2。产品代号叫 Grok Imagine 2,但调用时的模型名是 grok-imagine-image 和 grok-imagine-image-quality——不要写成 grok-imagine-2-image,那样会因模型不存在而返回 503。文生图 API
图片编辑 API
为什么选 API易 的 Grok Imagine 2
OpenAI 兼容格式
/v1/images/generations 与 /v1/images/edits,请求体与响应字段与 OpenAI Images API 一致,可直接用 OpenAI SDK 调用,迁移零改造。不限并发 · 企业可放量
按次计费 · 成本可预测
全球零门槛接入
api.apiyi.com,免去出海改造。模型生态齐全
专业服务 · 企业陪跑
核心特性
双档分辨率
1k 约 1 兆像素、2k 约 4.2–4.5 兆像素(16:9 达 2816×1584),两档同价5 种宽高比
1:1 / 16:9 / 9:16 / 4:3 / 3:4,实测像素与请求值精确吻合单次最多 10 张
n 支持 1–10,一次请求返回多张,适合批量选图出图快
真参考图编辑
多图融合
双返回格式
url 直链或 b64_json 纯 base64,两个端点都支持OpenAI SDK 直连
client.images.generate() / client.images.edit() 直接可用,无需自己拼 HTTP模型定价
- 不区分分辨率:
1k与2k同价,出 2K 不额外加钱。 - 按张计费:
n=4即按 4 张计费,与提示词长度无关。 - 编辑与文生图同价:走
/v1/images/edits不额外收费。 - 响应体里的
usage不能用来核账:prompt_tokens恒为1000 × n,是占位值,真实扣费以控制台账单为准。
分组介绍
Grok Imagine 2 在Default 默认分组(1.0x 倍率),与上方定价表一致,无需切换分组即可调用。
令牌「计费模式」推荐:选 按量优先(Pay-as-you-go Priority)—— 本系列是按次计费模型,按量优先与按次计费都能正常路由,选按量优先可以让同一把令牌兼容站内其它按 token 计费的模型。
技术规格
端点一览
从 GPT-Image-2 迁移
如果你已经接入了 GPT-Image-2,端点和调用方式完全一样(/v1/images/generations + /v1/images/edits,OpenAI SDK 直连),但参数体系是另一套,直接换模型名跑不通。下面是必须改的地方。
参数对照
三个最容易踩的坑
迁移前后代码对照
关键参数详解
aspect_ratio 与 resolution(输出尺寸)
两个参数组合决定实际输出像素。下表为实测值,与请求值精确吻合:
aspect_ratio(如 5:7、21:9)或 resolution(如 1K、1024x1024)都会静默回退默认值并正常出图。response_format 传非法值同样静默回退为 url。所以拿到的图不符合预期时,先检查参数拼写。唯一的例外是 resolution: "4k" —— 它会返回 503 model_service_unavailable,这是该档位不支持,不是渠道故障,改回 1k / 2k 即可。n(单次出图数量)
取值 1–10,返回的 data 数组长度等于 n,按张计费。传 0 会静默按 1 处理;传 11 及以上返回 400。
最佳实践
先明确是「生成」还是「编辑」
/v1/images/generations;有参考图(哪怕只是想微调一处)→ /v1/images/edits。选错端点不会报错,只会拿到不符预期的图。客户端超时设到 360 秒
用 aspect_ratio 控制构图,不要写进提示词
aspect_ratio: "16:9" 比在提示词里写「横版构图」可靠得多。按带宽选择分辨率档
编辑时明确写「其余保持不变」
多图融合时在提示词里显式指代
image[] 的上传顺序就是「图1 / 图2 / 图3」,在提示词里写明「把图1的主体放进图2的场景」,比让模型自己猜要稳。不要依赖 seed 做复现
seed,同一提示词两次调用结果不同。需要固定素材请把出图结果存下来,而不是指望重跑复现。批量出图直接并发
错误码与重试
400 与 415 是确定性错误,重试没有意义,应直接告警。只有 429 和网络层超时值得重试,建议指数退避、最多 3 次。注意 400 invalid_request 同时承载「参数错误」和「内容被审核拦截」两种语义,错误体无法区分。经验判据是耗时:被审核拦截通常在 5–6 秒返回,比正常出图(约 9 秒)更快,因为拦截发生在生成之前。常见问题
为什么我按厂商文档发 JSON 到 /v1/images/edits 就报 400?
为什么我按厂商文档发 JSON 到 /v1/images/edits 就报 400?
multipart/form-data,而上游厂商文档写的是 JSON + 公网图片 URL 的形式。这两种口径不一致,请以本站文档为准。正确写法是文件上传:我给文生图接口传了参考图,返回 200 但图完全不对?
我给文生图接口传了参考图,返回 200 但图完全不对?
/v1/images/generations 收到 image / image_url / images 时会静默忽略它们,只按提示词重新生成,并且照常计费。因为没有任何错误信号,很容易误以为”编辑功能有问题”。只要涉及参考图,请改用 /v1/images/edits。编辑接口传了 resolution / aspect_ratio 为什么不生效?
编辑接口传了 resolution / aspect_ratio 为什么不生效?
resolution 与 aspect_ratio 在这个端点上传了不报错也不起作用。需要改变输出画幅,请先自行裁剪或缩放参考图再上传。响应里为什么没有 revised_prompt?
响应里为什么没有 revised_prompt?
revised_prompt,也不返回 respect_moderation 等字段。data[] 里每项只有 url 或 b64_json 二选一(取决于 response_format),不会同时出现。解析响应时请不要假设这些字段存在。usage 里的 token 数能用来核对账单吗?
usage 里的 token 数能用来核对账单吗?
usage.prompt_tokens 恒为 1000 × n,与提示词实际长度无关,是占位值。本系列是按次计费(按张固定价),真实扣费请以 API易 控制台的账单记录为准。为什么 1K 出 JPEG、2K 出 PNG?体积差很多
为什么 1K 出 JPEG、2K 出 PNG?体积差很多
resolution: 1k 返回 JPEG(约 220–300 KB),resolution: 2k 返回 PNG 无损(约 5–6 MB),体积相差约 20 倍。返回的 URL 扩展名、HTTP Content-Type 与实际字节格式三者是一致的,可以直接按 Content-Type 分支处理。如果你的场景对带宽敏感(移动端、批量回传),建议用 1k——两档同价,选择只取决于画质需求。传 resolution: 4k 报 503,是渠道挂了吗?
传 resolution: 4k 报 503,是渠道挂了吗?
4k 不是本系列支持的档位,网关会返回 503 model_service_unavailable。这个错误码看起来像服务故障,但实际是参数问题,重试无效,改回 1k 或 2k 即可。支持的档位只有 1k 和 2k 两个。为什么参数写错了不报错,只是图不对?
为什么参数写错了不报错,只是图不对?
aspect_ratio(如 5:7)、resolution(如 1K、1024x1024)、response_format(如 base64)都会静默回退到默认值并正常出图,不会返回 400。所以拿到的图不符合预期时,第一步先检查参数拼写,特别注意 resolution 的值是小写 1k / 2k。单次最多能出几张?
单次最多能出几张?
n 支持 1–10,返回的 data 数组长度等于 n,按张计费。传 0 会静默按 1 处理;传 11 及以上返回 400 invalid_request。支持 seed 复现吗?
支持 seed 复现吗?
seed 不会报错,但也不生效——相同提示词、相同 seed 的两次调用会得到不同的图。需要复用某张图请把结果保存下来,不要指望通过重跑复现。能用 OpenAI 官方 SDK 直接调用吗?
能用 OpenAI 官方 SDK 直接调用吗?
base_url 指向 https://api.apiyi.com/v1 即可:aspect_ratio / resolution 不是 OpenAI SDK 的标准字段,需要放进 extra_body 传递。有并发限制吗?批量出图会不会被限流?
有并发限制吗?批量出图会不会被限流?
timeout:图片 API 是同步调用,建议客户端超时设到 360 秒,避免请求还在正常处理就被本地超时掐断——被掐断的请求仍然会计费。内容审核是怎样的?被拦了怎么判断?
内容审核是怎样的?被拦了怎么判断?
400 invalid_request,与参数错误使用完全相同的错误码和提示文案,从响应体无法区分。实用判据是耗时:审核拦截通常在 5–6 秒返回(拦截发生在生成之前),而正常出图约 9 秒。另外,审核结果具有一定随机性,个别边界内容多次重试的结果可能不一致,因此不要根据单次结果就下判断。确认参数无误后仍持续报 400,通常就是提示词触发了审核,建议调整表述。能用 /v1/chat/completions 对话方式出图吗?
能用 /v1/chat/completions 对话方式出图吗?
content 是一个 markdown 图片链接:/v1/images/generations 与 /v1/images/edits)——参数更完整、响应结构更稳定,也与本文档的说明一致。相关文档
- Grok Imagine 2 文生图 API - 带 Playground 的接口参考
- Grok Imagine 2 图片编辑 API - 参考图编辑与多图融合
- Grok 系列模型调用指南 - xAI 文本模型
- 图片 API 调用须知与最佳实践 - 超时、断连、压缩通用建议
- API 使用手册
- 充值加赠活动