KovAPIKovAPI
gpt-image-2.6-flare-token

GPT Image 2.6 Flare · Token · API

POST https://kovapi.com/v1/images/generations

GPT Image 2.6 Flare(按 token 计费):和 gpt-image-2.6-flare 是同一个模型,按 OpenAI 返回的实际 token 用量计费,单价是官方的 72%。可以用 xhigh 和 max 画质,moderation: low 生效;1K / 2K / 4K、15 种比例,交付生成的原图,失败不收费。暂不支持 GIF。

在 Playground 试用 →

快速开始

三步跑通:提交任务 → 查询结果 → 拿到图片链接。把 YOUR_API_KEY 换成你的 Key,下面的命令可以直接运行。

第 1 步 · 提交任务(立刻返回任务号,HTTP 202)

curl
curl https://kovapi.com/v1/images/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "gpt-image-2.6-flare-token", "prompt": "极简风格的产品图:浅色背景上的一只白色陶瓷杯,柔和的侧光", "size": "16:9", "resolution": "2K"}'

返回(HTTP 202)

JSON
{
  "id": "img_7f3c9a1e2b4d6f8a0c1e3b5d",
  "object": "image.generation.job",
  "status": "queued",
  "created": 1791281400,
  "model": "gpt-image-2.6-flare-token"
}

第 2 步 · 每 2–3 秒查询一次,直到 status 变成 succeeded 或 failed

curl
curl https://kovapi.com/v1/images/jobs/img_7f3c9a1e2b4d6f8a0c1e3b5d \
  -H "Authorization: Bearer YOUR_API_KEY"

成功时的返回

JSON
{
  "id": "img_7f3c9a1e2b4d6f8a0c1e3b5d",
  "object": "image.generation.job",
  "status": "succeeded",
  "created": 1791281400,
  "model": "gpt-image-2.6-flare-token",
  "data": [
    {"url": "https://img.kovapi.com/i/2be8cd16d37f3a4b9c0e1f2a3b4c5d6e.png"}
  ],
  "usage": {"images": 1, "resolution": "2K", "model": "gpt-image-2.6-flare-token"}
}

第 3 步 · data[0].url 就是图片链接(PNG),保留 15 天;需要长期使用,请下载到你自己的存储。

完整示例(Python:提交 → 等待 → 保存到本地)

Python
import time
import requests

BASE = "https://kovapi.com/v1"
HEADERS = {"Authorization": "Bearer YOUR_API_KEY"}

# 1. 提交任务
job = requests.post(f"{BASE}/images/generations", headers=HEADERS, json={
    "model": "gpt-image-2.6-flare-token",
    "prompt": "极简风格的产品图:浅色背景上的一只白色陶瓷杯,柔和的侧光",
    "size": "16:9",
    "resolution": "2K",
}).json()
if "error" in job:
    raise SystemExit(job["error"]["message"])

# 2. 每 3 秒查询一次,直到结束
while job["status"] not in ("succeeded", "failed"):
    time.sleep(3)
    job = requests.get(f"{BASE}/images/jobs/{job['id']}", headers=HEADERS).json()

# 3. 下载图片
if job["status"] == "succeeded":
    url = job["data"][0]["url"]
    with open("gpt-image-2.6-flare-token.png", "wb") as f:
        f.write(requests.get(url).content)
    print("saved", url)
else:
    print("failed:", job["error"]["code"], job["error"]["message"])

认证

Header
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

在控制台创建 API Key 后即可调用。

请求参数

POST /v1/images/generations 的请求体(JSON):

参数类型必填说明
modelstring是模型 id:gpt-image-2.6-flare-token。
promptstring是画面描述。图生图时写清楚要怎么改。
sizestring否比例,表中 15 种之一,例如 16:9;也可以写像素尺寸,或写 auto(带参考图时跟随第一张参考图的比例)。不传时出 1:1。
resolutionstring否档位:1K(默认)、2K、4K。
qualitystring否画质:low、medium(默认)、high、xhigh、max 或 auto(由模型决定)。画质越高 token 越多:同尺寸下约为 medium 的 0.57 / 1 / 1.21 / 2.1 / 4.8 倍。
image / imagesstring / array否参考图,传了就是图生图:image 传一张,images 传多张(最多 16 张)。可以是公网图片链接、data: URI 或 base64。
ninteger否张数。建议不传:要多张图请同时提交多个任务。传了 n 时按 n 张预扣,按实际交付的张数结算。
callback_urlstring否任务结束时把结果推送到这个地址,见下文的 Webhook。
complexitystring否构思程度:low、medium 或 high。按 token 计费的版本目前不生效(传了不报错),不影响价格。
moderationstring否审核强度:auto(默认)或 low(放宽一些,仍然遵守 OpenAI 的内容政策)。
output_compressioninteger否压缩程度,0–100 的整数,只用于 jpeg / webp 输出,数值越小文件越小。
mask_urlstring否局部重绘的蒙版:一张和第一张参考图尺寸相同的 PNG,透明的部分是要改的区域。需要参考图;不能和 markup_url 同时用。模型会参考蒙版,但不保证严格只改透明区域。
markup_urlstring否标注层:一张透明 PNG,在要改的位置画圈或标记,叠在第一张参考图上,再在提示词里说怎么改,例如「把红圈里的花瓶改成蓝色,并去掉红圈」。需要参考图;不能和 mask_url 同时用;最多 1677 万像素。

background 可以写 transparent(透明背景,请配 PNG 或 WebP 输出);output_format 可选 png(默认)、jpeg 或 webp。n 只能是 1。表里没有的参数会在提交时返回 400 unsupported_image_parameter,不扣费;结果通过 url 返回,usage 里有本次的 token 数和扣费。

按 token 计费

提交时按尺寸、画质和参考图张数预扣一个上限,出图后按 OpenAI 返回的实际用量结算,多扣的当场退回;失败全额退回。每百万 token 的价格:

计费项我们的价格OpenAI 官方价
图片输出$21.6$30
图片输入(参考图)$5.76$8
文字输入$3.6$5

实测输出 token 与费用(不含输入)

sizequalityoutput tokensUSD
1024x1024low824$0.018
1024x1024medium1,449$0.031
1024x1024high1,758$0.038
1024x1024xhigh3,122$0.067
1024x1024max7,024$0.152
2048x2048medium2,944$0.064
2048x2048max14,272$0.308
3840x2160medium2,855$0.062
3840x2160max13,342$0.288
3840x1280medium1,096$0.024

同样的尺寸和画质,输出 token 每次都一样,和提示词无关;参考图每张约 700–1,600 个图片输入 token。

比例、分辨率与输出尺寸

size 写比例,resolution 写档位。交付生成的原图,不裁切、不缩放,尺寸见下表:宽高都是 16 的倍数,4K 单边不超过 3840、总像素约 830 万以内。

比例1K2K4K
1:11024x10242048x20482880x2880
3:4768x10241536x20482480x3312
4:31024x7682048x15363312x2480
2:3672x10241360x20482336x3520
3:21024x6722048x13603520x2336
9:16608x10881152x20482160x3840
16:91088x6082048x11523840x2160
4:5816x10241632x20482576x3216
5:41024x8162048x16323216x2576
1:2576x11521024x20481920x3840
2:11152x5762048x10243840x1920
9:21544x1264880x20481648x3840
21:91264x5442048x8803840x1648
1:3480x1440672x20161280x3840
3:11440x4802016x6723840x1280
  • 支持表中 15 种比例,其他比例在提交时返回 400,不扣费。size 写 auto 并带参考图时,按第一张参考图最接近的比例出图;不带参考图时出 1:1。1K 的几种窄长比例低于模型的最小像素,按表中放大后的尺寸出图(如 16:9 出 1088×608)。
  • size 也可以写像素尺寸(如 1536x1024),比例要是表中 15 种之一:宽高向下取到 16 的倍数,超出该档上限时等比缩小,太小时等比放大到模型的最小像素(约 65.5 万)。档位按 resolution 定;没写 resolution 时看长边:不超过 1536 为 1K,不超过 2048 为 2K,更大为 4K。长边范围:1K 为 512–1536,2K 为 2016–2304,4K 为 2049–4096,超出时提交即返回 400,不扣费。

画质与原生分辨率

  • 不传 quality 时按 medium 出图。画质只影响 token 用量和价格,不影响尺寸;auto 由模型自己决定,预扣按 max 估算,结算按实际用量。
  • quality 写成 1K、2K 或 4K、又没传 resolution 时,按分辨率档处理(出图尺寸和价格都按这一档)。
  • 忙时任务会排队等候,不会立刻失败;等太久(约 15 分钟)仍出不了图就失败并全额退款,可原样重新提交。

图生图与参考图

  • 传 image(一张)或 images(多张,最多 16 张,多出的不用)就是图生图,在提示词里写清楚要怎么改。也可以调用 POST /v1/images/edits,参数相同。
  • 两个接口都只收 JSON 请求体,不支持 multipart 上传文件,所以 OpenAI SDK 的 images.edit() 不能直接用,请按下面的示例传链接或 base64。
  • 每张参考图可以是公网图片链接(http / https)、data: URI 或纯 base64,单张不超过 16MB,格式限 PNG、JPEG 或 WebP;其他格式的参考图会让任务失败并全额退款。
  • 链接要能直接下载到图片本身,不能是网页、需要登录或有防盗链的地址。读不到的参考图会在提交时直接返回 400,写明是哪一张、什么原因,不建任务、不扣费。
  • 输出比例由 size 决定,不跟随参考图;想保持原图比例,就把 size 设成和原图一样的比例。
  • 参考图由我们代为托管,保留 7 天。

两张参考图的图生图

curl
curl https://kovapi.com/v1/images/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "gpt-image-2.6-flare-token", "prompt": "保留画面里的人物,把背景换成夜晚的海边,加上暖色的灯串", "images": ["https://example.com/people.jpg", "https://example.com/beach.jpg"], "size": "3:4", "resolution": "2K"}'

任务状态与返回字段

GET /v1/images/jobs/{id} 返回的状态如下,每个字段的说明见 异步任务。建议每 2–3 秒查一次,或者用 Webhook。

状态含义
queued排队中。返回里带 queue_position(前面还有几个任务)和 eta_seconds(预计等待秒数)。
processing生成中。
succeeded已完成。结果在 data[0].url,计费明细在 usage。
failed失败。原因在 error,预扣的积分已全额退回。

同一个账号最多 50 个任务同时生成,更多的任务按提交顺序排队;排队超过 15 分钟还没开始的任务会自动失败并全额退款。任务记录保留 3 天,图片链接保留 15 天。

出图时间

从提交到拿到结果通常 20–60 秒;4K、多张参考图的改图和忙时排队会更久,个别任务要一两分钟。

错误与退款

提交时出错会直接返回 HTTP 4xx / 5xx,不建任务、不扣费;提交成功后的失败写在查询结果里,预扣的积分全额退回。全部错误码见 错误码。

提交时返回的错误

HTTPcode原因怎么办
400missing_prompt/v1/images/generations 没有 prompt。补上 prompt。
400invalid_request参考图读不到(链接打不开、不是图片、超过 16MB 等,message 写明是第几张、什么原因),/v1/images/edits 没带参考图,或请求体不是 JSON 对象、n 不是整数。按 message 修改后重新提交。
400model_not_found型号写错、没有传 model,或这个型号不能用在这个接口上(例如拿对话模型调生图接口)。以 GET /v1/models 或 API 手册 里的模型 id 为准。
401invalid_api_keyKey 不存在、已删除或已停用,或者账号已停用。到控制台「API Keys」页面检查这把 Key。
402insufficient_quota余额不够预扣这一单。网关先按这一单可能的最高费用预扣,同时发很多请求时也可能出现。如果是并发突发,稍等几秒重试;否则充值。
429rate_limit_exceeded超过了这把 Key 设置的每分钟请求数(按最近 60 秒计)。不带 Retry-After。等几秒再试,或在控制台调高这把 Key 的上限。
503model_maintenance型号维护中,暂停接单,期间不会改由其他模型作答。维护结束后重试,进度见 服务状态。
503service_unavailable我们这边临时出错,例如保存参考素材失败;/v1/responses 暂时无法处理时也返回 503,并带 Retry-After。稍后重试。

任务失败(status 为 failed)

code什么时候出现怎么办
moderation_blocked图片:模型方的安全审核拒绝了提示词或参考图(也可能是 content_policy_violation)。改写提示词或更换参考图;原样重交通常还会被拒。
upstream_error其他失败:自动重试后仍然失败、排队 15 分钟还没开始、上游拒绝但没有说明原因等,message 写明具体情况。通常重新提交就能成功。

用 Webhook 代替轮询

提交时加上 callback_url,任务一结束(成功或失败),网关就把和查询接口完全一样的结果推送到这个地址,带签名,失败会自动重试。也可以在控制台「设置 → Webhook」里配一个账户级地址。 Webhook 文档 →

curl · callback_url
curl https://kovapi.com/v1/images/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "gpt-image-2.6-flare-token", "prompt": "极简风格的产品图:浅色背景上的一只白色陶瓷杯,柔和的侧光", "size": "1:1", "callback_url": "https://your-domain.com/webhook"}'