Skip to content

编辑图片 ​

post /v1/images/edits

根据一张或多张源图像和文本提示,创建编辑或扩展后的图像。此端点支持 GPT 图像模型gp-im-2。

请求体参数 ​

  • images: array of object { file_id, image_url }

    要编辑的输入图像引用。对于 GPT 图像模型,最多可提供 16 张图像。

    • file_id: optional string

      已上传图像的 File API ID,用作输入。

    • image_url: optional string

      完整的 URL 或 base64 编码的 data URL。

  • prompt: string

    所需图像编辑的文本描述。

  • background: optional "transparent" 或 "opaque" 或 "auto"

    生成图像输出的背景行为。

    • "transparent"

    • "opaque"

    • "auto"

  • input_fidelity: optional "high" 或 "low"

    控制对原始输入图像的保真度。

    • "high"

    • "low"

  • mask: optional object { file_id, image_url }

    通过 URL 或上传的文件 ID 引用输入图像作为遮罩。请提供 image_url 或 file_id 中的一项。

    • file_id: optional string

      已上传图像的 File API ID,用作输入。

    • image_url: optional string

      完整的 URL 或 base64 编码的 data URL。

  • model: optional string 或 "gp-im-2"

    用于图像编辑的模型。

    • string

    • "gp-im-2"

      用于图像编辑的模型。

      • "gp-im-2"
  • moderation: optional "low" 或 "auto"

    GPT 图像模型的内容审核级别。

    • "low"

    • "auto"

  • n: optional number

    生成的编辑图像数量。

  • output_compression: optional number

    jpeg 或 webp 输出格式的压缩级别。

  • output_format: optional "png" 或 "jpeg" 或 "webp"

    输出图像格式。GPT 图像模型支持。

    • "png"

    • "jpeg"

    • "webp"

  • partial_images: optional number

    生成的中间过程图像数量。用于流式返回中间图像的场景。取值 0–3。设为 0 时,响应将在一次流事件中返回单张完整图像。注意:如果完整图像生成速度较快,最终图像可能会在达到指定中间图像数量之前发送。

  • quality: optional "low" 或 "medium" 或 "high" 或 "auto"

    GPT 图像模型的输出质量。

    • "low"

    • "medium"

    • "high"

    • "auto"

  • size: optional "auto" 或 "1024x1024" 或 "1536x1024" 或 "1024x1536"

    请求的输出图像尺寸。

    • "auto"

    • "1024x1024"

    • "1536x1024"

    • "1024x1536"

  • stream: optional boolean

    以流式事件返回中间图像结果。

  • user: optional string

    代表最终用户的唯一标识符,可帮助 OpenAI 监控和检测滥用行为。

返回结果 ​

  • ImagesResponse 对象 { created, background, data 等 }

    图像生成端点的响应。

    • created: number

      图像创建时的 Unix 时间戳(秒)。

    • background: optional "transparent" 或 "opaque"

      图像生成所使用的背景参数。transparent 或 opaque。

      • "transparent"

      • "opaque"

    • data: optional array of Image

      生成的图像列表。

      • b64_json: optional string

        生成图像的 base64 编码 JSON。GPT 图像模型默认返回此字段;对于 dall-e-2 和 dall-e-3,仅在 response_format 设为 b64_json 时存在。

      • revised_prompt: optional string

        仅 dall-e-3 支持,用于生成图像的修订后提示词。

      • url: optional string

        使用 dall-e-2 或 dall-e-3 时,如果 response_format 设为 url(默认值),返回生成图像的 URL。GPT 图像模型不支持此字段。

    • output_format: optional "png" 或 "webp" 或 "jpeg"

      图像生成的输出格式。可选 png、webp 或 jpeg。

      • "png"

      • "webp"

      • "jpeg"

    • quality: optional "low" 或 "medium" 或 "high"

      生成图像的质量。可选 low、medium 或 high。

      • "low"

      • "medium"

      • "high"

    • size: optional "1024x1024" 或 "1024x1536" 或 "1536x1024"

      生成图像的尺寸。可选 1024x1024、1024x1536 或 1536x1024。

      • "1024x1024"

      • "1024x1536"

      • "1536x1024"

    • usage: optional object { input_tokens, input_tokens_details, output_tokens 等 }

      仅 gpt-image-1 支持,图像生成的令牌用量信息。

      • input_tokens: number

        输入提示中的令牌数(图像和文本)。

      • input_tokens_details: object { image_tokens, text_tokens }

        图像生成的输入令牌详情。

        • image_tokens: number

          输入提示中的图像令牌数。

        • text_tokens: number

          输入提示中的文本令牌数。

      • output_tokens: number

        模型生成的输出令牌数。

      • total_tokens: number

        图像生成所使用的总令牌数(图像和文本)。

      • output_tokens_details: optional object { image_tokens, text_tokens }

        图像生成的输出令牌详情。

        • image_tokens: number

          模型生成的图像输出令牌数。

        • text_tokens: number

          模型生成的文本输出令牌数。

编辑图像 ​

bash
curl -s -D >(grep -i x-request-id >&2) \
  -o >(jq -r '.data[0].b64_json' | base64 --decode > gift-basket.png) \
  -X POST "https://https://neolink.com/api/v1/images/edits" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -F "model=gp-im-2" \
  -F "image[]=@body-lotion.png" \
  -F "image[]=@bath-bomb.png" \
  -F "image[]=@incense-kit.png" \
  -F "image[]=@soap.png" \
  -F 'prompt=将这四个物品组合成一个精美的礼品篮'
bash
curl -s -N -X POST "https://https://neolink.com/api/v1/images/edits" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -F "model=gp-im-2" \
  -F "image[]=@body-lotion.png" \
  -F "image[]=@bath-bomb.png" \
  -F "image[]=@incense-kit.png" \
  -F "image[]=@soap.png" \
  -F 'prompt=将这四个物品组合成一个精美的礼品篮' \
  -F "stream=true"

响应 ​

json
event: image_edit.partial_image
data: {"type":"image_edit.partial_image","b64_json":"...","partial_image_index":0}

event: image_edit.completed
data: {"type":"image_edit.completed","b64_json":"...","usage":{"total_tokens":100,"input_tokens":50,"output_tokens":50,"input_tokens_details":{"text_tokens":10,"image_tokens":40}}}
json
{
  "created": 0,
  "background": "transparent",
  "data": [
    {
      "b64_json": "b64_json",
      "revised_prompt": "revised_prompt",
      "url": "https://example.com"
    }
  ],
  "output_format": "png",
  "quality": "low",
  "size": "1024x1024",
  "usage": {
    "input_tokens": 0,
    "input_tokens_details": {
      "image_tokens": 0,
      "text_tokens": 0
    },
    "output_tokens": 0,
    "total_tokens": 0,
    "output_tokens_details": {
      "image_tokens": 0,
      "text_tokens": 0
    }
  }
}