图像生成指南
通过模型生成或编辑图像,打造更具视觉表现力的 AI 应用。图像生成工具允许你通过文本提示(prompt)和可选的图像输入来生成图像。它基于,并自动优化文本输入以提升图像效果。更多使用技巧可参考官方的。
通过模型生成或编辑图像,打造更具视觉表现力的 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: 背景是否透明
size、quality 和 background 支持 auto,由模型自动判断最佳输出参数。
提示词自动优化
模型会自动重写提示词,以生成更优质图像。
{
"revised_prompt": "一只拥抱水獭的灰色虎斑猫。水獭戴着橙色围巾。两只动物都非常可爱,风格温馨治愈。"
}
建议在提示中加入“绘制”、“编辑”等关键词以明确意图。
多轮图像编辑
你可以通过多轮对话持续修改图像 —— 通过上一轮的 response_id 或 image_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,使用更灵活。
更多推荐
所有评论(0)