通过模型生成或编辑图像,打造更具视觉表现力的 AI 应用。

图像生成工具允许你通过文本提示(prompt)和可选的图像输入来生成图像。它基于 GPT 图像模型,并自动优化文本输入以提升图像效果。

更多使用技巧可参考官方的图像生成指南


使用方式

只需在请求中引入 image_generation 工具,模型就能在对话中判断何时以及如何生成图像,结合你的提示语和输入图片自动处理。

返回结果中的 image_generation_call 类型将包含 base64 编码的图像数据。

示例:生成图像

JavaScript
import OpenAI from "openai";
const openai = new OpenAI({ baseURL: "https://api.aaaaapi.com" });

const response = await openai.responses.create({
    model: "gpt-4.1-mini",
    input: "生成一只拥抱着水獭的灰色虎斑猫,水獭戴着橙色围巾",
    tools: [{type: "image_generation"}],
});

const imageData = response.output
  .filter(output => output.type === "image_generation_call")
  .map(output => output.result);

if (imageData.length > 0) {
  const fs = await import("fs");
  fs.writeFileSync("otter.png", Buffer.from(imageData[0], "base64"));
}
Python
from openai import OpenAI
import base64

client = OpenAI(base_url="https://api.aaaaapi.com")

response = client.responses.create(
    model="gpt-4.1-mini",
    input="生成一只拥抱着水獭的灰色虎斑猫,水獭戴着橙色围巾",
    tools=[{"type": "image_generation"}],
)

image_data = [
    output.result for output in response.output if output.type == "image_generation_call"
]

if image_data:
    with open("otter.png", "wb") as f:
        f.write(base64.b64decode(image_data[0]))

如需支持图像编辑,也可以通过文件 ID 或 base64 数据传入输入图像。

可通过参数 tool_choice 强制调用图像生成工具:

"tool_choice": { "type": "image_generation" }

工具选项(可选参数)

你可以为图像生成工具设置以下参数(详见API文档):

  • size: 图像尺寸,如 1024x1024, 1024x1536

  • quality: 画质:low / medium / high

  • format: 输出格式:如 PNG, JPEG

  • compression: 压缩比(用于 JPEG/WebP)

  • background: 背景是否透明

sizequalitybackground 支持 auto,由模型自动判断最佳输出参数。


提示词自动优化

模型会自动重写提示词,以生成更优质图像。

{
  "revised_prompt": "一只拥抱水獭的灰色虎斑猫。水獭戴着橙色围巾。两只动物都非常可爱,风格温馨治愈。"
}

建议在提示中加入“绘制”、“编辑”等关键词以明确意图。


多轮图像编辑

你可以通过多轮对话持续修改图像 —— 通过上一轮的 response_idimage_id 实现精细化迭代。

示例:JavaScript 多轮编辑

const response = await openai.responses.create({
  model: "gpt-4.1-mini",
  input: "生成拥抱水獭的灰猫,水獭戴橙色围巾",
  tools: [{ type: "image_generation" }],
});

const followUp = await openai.responses.create({
  model: "gpt-4.1-mini",
  previous_response_id: response.id,
  input: "现在让图像更逼真",
  tools: [{ type: "image_generation" }],
});

Python 多轮编辑

response_fwup = client.responses.create(
    model="gpt-4.1-mini",
    previous_response_id=response.id,
    input="现在让图像更逼真",
    tools=[{"type": "image_generation"}],
)

流式图像生成(Streaming)

图像生成支持边生成边返回的流式输出,显著提升用户响应体验。

设置 partial_images 参数(最多 3 个)可获取中间生成结果:

stream = client.images.generate(
    prompt="画一条由白色猫头鹰羽毛构成的河流穿过冬季山谷",
    model="gpt-image-1",
    stream=True,
    partial_images=2,
)

你将实时获得 river0.png, river1.png, river2.png 等中间图像片段。


支持的模型

以下模型支持调用图像生成工具(主调用模型):

  • gpt-4o

  • gpt-4o-mini

  • gpt-4.1

  • gpt-4.1-mini

  • gpt-4.1-nano

  • o3

最终图像生成始终由 gpt-image-1 模型完成。


📌 提示:如果你希望稳定接入 OpenAI 全功能(包含图像生成功能),建议通过 这个中转接入地址 进行访问,支持自定义 API host,兼容 SDK,使用更灵活。

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐