For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Hauptnavigation

Bildgenerierung

Ermögliche Modellen, Bilder zu generieren oder zu bearbeiten.

Mit dem Werkzeug zur Bildgenerierung kannst du Bilder anhand eines Text-Prompts und optionaler Bildeingaben generieren. Es verwendet GPT Image-Modelle, darunter gpt-image-2.5-sunburst, gpt-image-2.5-flare, gpt-image-2, gpt-image-1.5, gpt-image-1 und gpt-image-1-mini, und optimiert Texteingaben automatisch für bessere Ergebnisse.

Setze model für das Werkzeug image_generation auf gpt-image-2.5-sunburst, um Bilder präzise zu bearbeiten, oder auf gpt-image-2.5-flare, um schnell hochwertige Bilder zu generieren. Gib im Responses-Feld model auf oberster Ebene ein unterstütztes Hauptmodell an.

Mehr zur Bildgenerierung erfährst du in unserem ausführlichen Leitfaden zur Bildgenerierung.

Verwendung

Wenn du das Werkzeug image_generation in deine Anfrage aufnimmst, kann das Modell entscheiden, wann und wie es im Gespräch Bilder generiert. Dabei verwendet es deinen Prompt und alle bereitgestellten Bildeingaben.

Das Ergebnis des Werkzeugaufrufs image_generation_call enthält ein Base64-kodiertes Bild.

Ein Bild generieren
from openai import OpenAI
import base64

client = OpenAI()

response = client.responses.create(
    model="gpt-6-astra",
    input="Generate an image of gray tabby cat hugging an otter with an orange scarf",
    tools=[{"type": "image_generation", "model": "gpt-image-2.5-sunburst"}],
)

# Save the image to a file
image_data = [
    output.result
    for output in response.output
    if output.type == "image_generation_call"
]

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

Du kannst Eingabebilder bereitstellen, indem du Datei-IDs oder Base64-Daten verwendest.

Um den Aufruf des Werkzeugs zur Bildgenerierung zu erzwingen, kannst du den Parameter tool_choice auf {"type": "image_generation"} setzen.

Werkzeugoptionen

Du kannst die folgenden Ausgabeoptionen als Parameter für das Werkzeug zur Bildgenerierung konfigurieren:

  • Größe: Bildabmessungen, zum Beispiel 1024 × 1024 oder 1024 × 1536
  • Qualität: Rendering-Qualität, zum Beispiel niedrig, mittel oder hoch
  • Format: Dateiformat der Ausgabe
  • Komprimierung: Komprimierungsgrad (0–100 %) für die Formate JPEG und WebP
  • Hintergrund: transparent, undurchsichtig oder automatisch
  • Aktion: Ob automatisch entschieden, ein Bild generiert oder ein Bild bearbeitet werden soll

size, quality und background unterstützen die Option auto, bei der das Modell anhand des Prompts automatisch die beste Option auswählt.

Bei gpt-image-2.5-sunburst und gpt-image-2.5-flare akzeptiert quality auch xhigh und max. Frühere GPT Image-Modelle unterstützen diese Werte nicht. Die Standardqualität bleibt auto.

gpt-image-2 unterstützt flexible Werte für size, die seinen Auflösungsvorgaben entsprechen. Transparente Hintergründe sind als Vorschaufunktion verfügbar. Lege background: "transparent" fest, um einen transparenten Hintergrund anzufordern. Verwende png (den Standardwert) oder webp. jpeg wird bei transparenten Hintergründen nicht unterstützt.

Weitere Informationen zu den verfügbaren Optionen findest du im Leitfaden zur Bildgenerierung.

Wenn du das Werkzeug zur Bildgenerierung der Responses API verwendest, können unterstützte GPT Image-Modelle entscheiden, ob sie ein neues Bild generieren oder ein bereits im Gespräch vorhandenes Bild bearbeiten. Der optionale Parameter action steuert dieses Verhalten: Lass action auf auto eingestellt, damit das Modell zwischen Generieren und Bearbeiten entscheidet, oder setze ihn auf generate oder edit, um die jeweilige Aktion zu erzwingen. Wenn du keinen Wert angibst, gilt der Standardwert auto.

Überarbeiteter Prompt

Wenn du das Werkzeug zur Bildgenerierung verwendest, überarbeitet das Hauptmodell, zum Beispiel gpt-5.5, deinen Prompt automatisch für bessere Ergebnisse.

Den überarbeiteten Prompt findest du im Feld revised_prompt des Bildgenerierungsaufrufs:

{
  "id": "ig_123",
  "type": "image_generation_call",
  "status": "completed",
  "revised_prompt": "A gray tabby cat hugging an otter. The otter is wearing an orange scarf. Both animals are cute and friendly, depicted in a warm, heartwarming style.",
  "result": "..."
}

Tipps zum Formulieren von Prompts

Die Bildgenerierung funktioniert am besten, wenn du Begriffe wie draw oder edit in deinem Prompt verwendest.

Wenn du beispielsweise Bilder kombinieren möchtest, kannst du statt combine oder merge etwa Folgendes schreiben: „Bearbeite das erste Bild, indem du dieses Element aus dem zweiten Bild hinzufügst.“

Bearbeitung über mehrere Gesprächsrunden

Du kannst Bilder schrittweise bearbeiten, indem du auf die IDs früherer Antworten oder Bilder verweist. So kannst du Bilder über mehrere Gesprächsrunden hinweg verfeinern.

Bildgenerierung über mehrere Gesprächsrunden
from openai import OpenAI
import base64

client = OpenAI()

response = client.responses.create(
    model="gpt-6-astra",
    input="Generate an image of gray tabby cat hugging an otter with an orange scarf",
    tools=[{"type": "image_generation", "model": "gpt-image-2.5-sunburst"}],
)

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

if image_data:
    image_base64 = image_data[0]

    with open("cat_and_otter.png", "wb") as f:
        f.write(base64.b64decode(image_base64))


# Follow up

response_fwup = client.responses.create(
    model="gpt-6-astra",
    previous_response_id=response.id,
    input="Now make it look realistic",
    tools=[{"type": "image_generation", "model": "gpt-image-2.5-sunburst"}],
)

image_data_fwup = [
    output.result
    for output in response_fwup.output
    if output.type == "image_generation_call"
]

if image_data_fwup:
    image_base64 = image_data_fwup[0]
    with open("cat_and_otter_realistic.png", "wb") as f:
        f.write(base64.b64decode(image_base64))

Streaming

Das Werkzeug zur Bildgenerierung unterstützt das Streaming von Zwischenbildern, während es das endgültige Ergebnis generiert. So erhalten Nutzende schneller visuelles Feedback, und die wahrgenommene Wartezeit verkürzt sich.

Mit dem Parameter partial_images kannst du die Anzahl der Zwischenbilder (1–3) festlegen.

Ein Bild streamen
from openai import OpenAI
import base64

client = OpenAI()


def save_base64_image(filename, image_base64):
    image_bytes = base64.b64decode(image_base64)
    with open(filename, "wb") as f:
        f.write(image_bytes)


stream = client.responses.create(
    model="gpt-6-astra",
    input="Draw a gorgeous image of a river made of white owl feathers, snaking its way through a serene winter landscape",
    stream=True,
    tools=[
        {"type": "image_generation", "model": "gpt-image-2.5-sunburst", "partial_images": 2}
    ],
)

for event in stream:
    if event.type == "response.image_generation_call.partial_image":
        idx = event.partial_image_index
        save_base64_image(f"river-partial-{idx}.png", event.partial_image_b64)
    elif event.type == "response.completed":
        image_data = [
            output.result
            for output in event.response.output
            if output.type == "image_generation_call"
        ]

        if image_data:
            save_base64_image("river-final.png", image_data[0])

Unterstützte Modelle

Die folgenden Modelle unterstützen das Werkzeug zur Bildgenerierung:

  • gpt-5.5
  • gpt-5.4-mini
  • gpt-5.4-nano
  • gpt-5.2
  • gpt-5
  • gpt-5-nano
  • o3
  • gpt-4.1
  • gpt-4.1-mini
  • gpt-4.1-nano
  • gpt-4o
  • gpt-4o-mini