跳转到主要内容
POST /v1/images/generations 根据文字描述生成图片,POST /v1/images/edits 编辑你上传的一张或多张图片。两个接口都遵循 OpenAI Images API,因此官方 OpenAI SDK 只需把 base URL 设为 https://api.omnirelay.ai/v1、使用 OmniRelay API Key 即可调用。 Key 的规则与文本模型相同:有效期、IP 白名单、可调用模型限制、预算以及请求频率与并发。写代码之前,也可以先在控制台的「模型体验」里试用这两个接口。

模型

图片模型会出现在你自己的 GET /v1/models 列表中,带有 capabilities.image_generation: true 以及本工作区的每张单价。

价格

图片按实际返回的张数计费,不按 token 计费。请求的 size 决定本次调用中每张图片的档位: quality 不影响价格,折扣与文本模型相同。调用发出前按档位预留 n 张的费用,结算时只对实际返回的图片扣费,扣费金额见响应中的 cost_microusd。详见用量与计费。

生成图片

编辑图片

以 multipart/form-data 上传原图,字段名为 image(多张时用 image[]);可选的 mask 中透明区域表示要修改的位置。整个请求最大 20 MiB。

参数

响应

  • data[].b64_json 是按 output_format 编码的 base64 图片;不会以链接形式返回。
  • usage 是模型报告的 token 数,仅供参考;实际扣费以 cost_microusd 为准,按张计。
  • 与文本模型一样,发送 X-Gateway-Metadata: enabled 可额外返回 gateway_metadata(同时以旧名 omnirelay_metadata 返回)。

长耗时调用

图片调用通常需要 15–90 秒,高质量或 4K 可能更久。若约 25 秒后仍未完成,OmniRelay 会先返回 200,并持续发送空格直到 JSON 正文就绪,避免代理断开空闲连接。JSON 解析器和 OpenAI SDK 都会忽略开头的空格。 由于状态码已经发出,此后发生的失败会以 200 正文中的错误对象返回。读取 data 之前,务必先检查解析后的正文里是否有 error:
HTTP 客户端的超时请设为至少 3 分钟。

失败与扣费

即使结果没有送达,服务方完成的图片仍会计费,因此 OmniRelay 不会自动释放 image_call_held 的调用,预留会保留到对账完成;若长时间未处理,请带上 request_id 联系支持。不要循环重发同一请求:每次调用都会单独计费。参见错误。

限制

  • 每次最多 4 张;每个请求最大 20 MiB;提示词最多 32,000 个字符。
  • 图片调用与文本调用一样计入工作区、成员和 Key 的每分钟请求数和并发数。
  • OmniRelay 不保存图片,请自行保存 b64_json。