GPT-Image 图片编辑

通过图片与文本指令完成局部或整体编辑

1. 概述

使用 GPT-Image 模型,结合原始图片和文本指令完成图片编辑。

  • baseUrl:https://token.soar.qjclouds.cn/laserEr/00000000/v1
  • completionsPath:/image/generations/{apiType}
  • apiType:ImageEdit
  • 标准地址:POST {baseUrl}{completionsPath}
  • 鉴权:Authorization: Bearer <api_key>
  • 请求体:标准 GPT-Image 图片编辑 JSON

地址拼接:{baseUrl}{completionsPath},其中 apiType=ImageEdit,即 https://token.soar.qjclouds.cn/laserEr/00000000/v1/image/generations/ImageEdit。

2. 鉴权

请求 Header 中需携带平台生成的 API Key:

HTTP
Authorization: Bearer <api_key>
Content-Type: application/json
Accept: application/json

3. 请求与响应示例

Header 参数

字段 类型 必填 说明
Content-Type string 是 示例:application/json
Authorization string 是 示例:Bearer {YOUR_API_KEY}

Body 参数

字段 类型 必填 说明
model string 是 模型名称
prompt string 是 图片生成提示词
image string 是 输入的图片信息,支持 URL 或 Base64 编码。支持单图或多图输入。
单图:"image":"https://example.com/image.png"
多图:"image":["main.png","ref.png"]
quality string 否 输出质量。支持 low、medium、high、auto;默认 auto。
可选值:auto、high、medium、low
默认值:auto
允许为空。
mask string 否 可选遮罩图片。支持公网 URL、base64 data URI 或纯 base64;建议使用带透明通道且与输入图片尺寸一致的 PNG,透明区域表示需要编辑的部分。通过 URL 提供时大小上限为 40MB。
n integer 否 生成图片数量。必须为正整数;不传时由上游使用默认值 1。
默认值:1
范围:最小 1,最大 10
格式:int32
允许为空。
size string 否 生成图片的尺寸。
对于`gpt-image-2`,以下约束支持任意解析:
- 这两个边必须是 16 像素的倍数。
- 最长边最多 3840 像素(支持 4K)。
- 纵横比高达 3:1。
- 655,360 到 8,294,400 之间的总像素计数。

对于 `GPT-image-1` 系列模型,请将生成图像的大小指定为 `1024x1024`、`1024x1536` 或 `1536x1024` 中的一个。 方形图像生成速度更快。
允许为空。
output_format string 否 指定生成的图像的格式。 支持的格式是 PNG 和 JPEG。 默认值为 PNG。不支持 WEBP 图像。
可选值:png、jpeg
默认值:png
允许为空。
background string 否 图片背景类型 auto(自动)/opaque(不透明)/transparent(透明)。如果设置为transparent(透明),输出的图片格式需要支持透明度,因此应设置为png。
可选值:auto、transparent、opaque
默认值:auto
允许为空。
moderation string 否 控制由GPT图像模型生成的图像的内容审核级别。
可选值:low、auto
默认值:auto
允许为空。
output_compression integer 否 指定生成的映像的压缩级别。 在两者之间输入一个整数0~100,其中0没有压缩,并且100是最大压缩。 默认值为 100。仅对jpeg格式图片有效
范围:最小 0,最大 100
格式:int32
允许为空。
user string 否 最终用户标识,用于追踪和滥用检测
允许为空。

响应状态

HTTP 状态码 说明
200 图片编辑结果
400 Bad Request

成功响应参数

字段 类型 必填 说明
created integer 否 Unix 时间戳(秒)
data array<object> 否
data[].b64_json string 否 图片的 base64 数据
usage object 否 本次图片请求的用量。
usage.total_tokens integer 否 总 Token 数,通常等于 input_tokens 与 output_tokens 之和。
usage.input_tokens integer 否 输入 Token 总量。
usage.output_tokens integer 否 输出 Token 总量。
usage.input_tokens_details object 否 输入 Token 的分类明细,已包含在 input_tokens 中。
usage.input_tokens_details.text_tokens integer 否 文本输入 Token 数。
usage.input_tokens_details.image_tokens integer 否 图片输入 Token 数。
usage.output_tokens_details object 否 输出 Token 的分类明细,已包含在 output_tokens 中。
usage.output_tokens_details.text_tokens integer 否 文本输出 Token 数。
usage.output_tokens_details.image_tokens integer 否 图片输出 Token 数。
background string 否 背景类型
quality string 否 图像质量
size string 否 图像尺寸
output_format string 否 输出图像格式

请求示例

JSON
{
  "model": "gpt-image-1-mini",
  "prompt": "把图中的狗替换成一只橘猫,保持整体构图与光影一致。",
  "image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241022/emyrja/dog_and_girl.jpeg",
  "size": "1024x1024",
  "quality": "low",
  "output_format": "png"
}

响应示例

JSON
{
  "created": 1788750472,
  "data": [{ "b64_json": "base64 data" }],
  "usage": {
    "total_tokens": 649,
    "input_tokens": 377,
    "output_tokens": 272,
    "input_tokens_details": { "text_tokens": 54, "image_tokens": 323 },
    "output_tokens_details": { "text_tokens": 0, "image_tokens": 272 }
  },
  "background": "opaque",
  "quality": "low",
  "size": "1024x1024",
  "output_format": "png"
}

4. 调用提示

图片可使用平台支持的 URL 或数据格式,具体限制以参数说明文档为准。