Bilderzeugung
Zwei Modellfamilien, drei Aufgaben.
Abgedeckte Modelle
| Modell-ID | Familie | Verwendung | Kosten (1024×1536, gemessen am 02.10.2026) |
|---|---|---|---|
gpt-image-2.5-sunburst | OpenAI (Images 2.5, 08.09.2026) | Standard. Alles, was ausgeliefert werden soll. Platz 1 in jeder großen Rangliste (Generierung, Bearbeitung, Textwiedergabe, Porträts) | max ≈ $0,165, ~90 s · high ≈ $0,041, ~35 s |
gpt-image-2.5-flare | OpenAI (Images 2.5) | Schnelle Entwürfe — Richtungen erkunden, Prompt testen. Gleiche Prompts wie Sunburst, ~2× schneller | medium ≈ $0,01, ~15 s |
gemini-3-pro-image | Google (Nano Banana Pro) | Nahaufnahmen natürlicher Haut/Haare, wenn Stimmen und Prüfer uneins sind; bis zu 14 Referenzen | $0,134 (1K/2K) · $0,24 (4K) |
gemini-3.1-flash-image | Google (Nano Banana 2) | Extreme Seitenverhältnisse (1:4…8:1), Bildsuche-Grounding | $0,067 (1K) |
gemini-3.1-flash-lite-image | Google (Nano Banana 2 Lite) | Günstigste Gemini-Erkundung; nur 1K, gibt JPEG aus | $0,034 |
gpt-image-2 funktioniert noch (nicht veraltet), ist aber einen Schritt unter beiden 2.5-Modellen. Die Gemini *-preview-IDs und alle Imagen-Modelle sind abgeschaltet — die Skripte lehnen sie ab.
Die drei Aufgaben dieser Skill
- Modell und Qualität auswählen für das Asset. Siehe reference/model-selection.md.
- Den Prompt schreiben gemäß den Hausregeln des Modells. Die beiden Anbieter wollen das Gegenteil:
- OpenAI GPT Image 2.5 möchte beschriftete Abschnitte (Szene / Subjekt / Details / Einschränkungen), genauen Text in Anführungszeichen und akzeptiert Inline-Ausschlüsse („kein zusätzlicher Text, keine Wasserzeichen“). Lies reference/openai-gpt-image.md.
- Gemini möchte narrative Absätze, negative Formulierungen schlagen fehl (schreibe „keine Personen“ um zu „leere Straße“), das Seitenverhältnis kommt in
imageConfig. Lies reference/gemini-image.md.
- Die API aufrufen über die gebündelten Skripte. Siehe scripts/README.md.
Qualität bei 2.5 – die Falle
Die 2.5-Qualitätsleiter wurde neu geschnitten. Bei gleicher Größe kauft 2.5 high etwa die Ausgabe-Tokens von gpt-image-2 medium; 2.5 max kauft das, was gpt-image-2 high tat (gemessen: Sunburst 1024×1536 high = 1.372 Ausgabe-Tokens, max = 5.488). Das Kopieren von „quality=high“ aus alten Gewohnheiten liefert stillschweigend ein Bild mit mittleren Details.
Befördere Entwürfe mit einer Bearbeitung und nicht mit einer Neugenerierung. Jede frische Generierung erzeugt ein neues Bild, daher ergibt das erneute Ausführen des Prompts eines genehmigten Entwurfs mit max ein anderes Bild. Gib stattdessen den gewählten Entwurf als Referenz an eine Sunburst max-Bearbeitung weiter, die nur die Render-Qualität ändert und alles andere beibehält. Verifiziert am 02.10.2026: Ein auf diese Weise beförderter Flare medium-Poster behielt seine Komposition, Personen, Posen, Farben und hebräischen Text bei und gewann an Textur und Detail ($0,18, 85 s).
| Stufe | Modell + Qualität | Warum |
|---|---|---|
| Richtungen erkunden, Prompt testen | Flare medium (--draft) | ~1¢ und ~15 s, also kosten 6 Richtungen weniger als eine finale |
| Ausgewählten Entwurf befördern | Sunburst max-Bearbeitung mit --ref <Entwurf> und dem Beförderungs-Prompt in reference/openai-gpt-image.md | Behält das vom Benutzer gewählte Aussehen bei, fügt volle Details hinzu |
| Finale Version direkt aus einem festgelegten Prompt | Sunburst max (Skript-Standard) | Volle Details; ~90 s, ~$0,17 |
| Sunburst, wenn Zeit wichtiger ist als feine Details | Sunburst high | Ein Viertel der Tokens, ~35 s |
Verwende niemals auto — es landet bei identischen Aufrufen auf unterschiedlichen Budgets.
Standard-Modellauswahl – die 30-Sekunden-Regel
Richtungen erkunden / „ein paar schnelle Optionen“ / testen, ob ein Prompt funktioniert?
JA → Flare medium (--draft). Befördere die Auswahl des Benutzers mit einer Sunburst max-Bearbeitung (--ref <Entwurf>).
NEIN ↓
Fotorealistisches menschliches Gesicht in Nahaufnahme, bei dem die Hauttextur entscheidend ist?
JA → Sunburst max zuerst (führt bei Porträts); wenn die Haut beim Zoomen überschärft wirkt,
vergleiche mit gemini-3-pro-image 4K und lass den Menschen wählen.
NEIN ↓
Ultrabreites/-hohes Banner jenseits von 3:1 (1:4, 4:1, 1:8, 8:1)?
JA → gemini-3.1-flash-image (GPT Image ist bei 3:1 gedeckelt).
NEIN ↓
Alles andere → Sunburst mit Qualität=max.
└── Transparentes PNG? Nativ: --background transparent (png/webp). Kein rembg nötig.
Vollständiger Entscheidungsbaum nach Asset-Typ: reference/model-selection.md.
Arbeitsablauf pro Anfrage
- Umfang bestätigen. Asset-Typ, Markenkontext, Farb-/Stilrichtung, Ziel-Seitenverhältnis + Größe, Speicherort. Wenn die Anfrage bereits alles enthält, fortfahren.
- Modell und Qualität auswählen. Die obige Regel verwenden; die Wahl in einem Satz erklären.
- Die modellspezifische Referenz lesen —
reference/openai-gpt-image.mdoderreference/gemini-image.md. Nicht aus dem Gedächtnis schreiben: Die beiden Anbieter wollen gegensätzliche Prompt-Strukturen, und die 2.5-Anleitung hat mehrere gpt-image-2-Gewohnheiten geändert. - Transparenter Hintergrund? Bei GPT Image 2.5 nativ. Lies reference/transparent-backgrounds.md nur für Gemini-Ausgaben oder zum Freistellen eines vorhandenen Bildes.
- Die passende Vorlage öffnen in
templates/und die Platzhalter ausfüllen. - Hebräischer oder RTL-Text im Bild? Lies zuerst reference/hebrew-rtl.md.
- Dem Benutzer den Prompt vor dem API-Aufruf zeigen, es sei denn, er sagte „mach einfach“. Eine Prompt-Überprüfung verhindert die meisten teuren Neugenerierungen.
- Das Skript ausführen. Speichern unter
./generated-images/<beschreibender-name>.pngim aktuellen Arbeitsverzeichnis, sofern nicht anders angegeben. Das OpenAI-Skript gibt Latenz, Ausgabe-Tokens und Kosten pro Aufruf aus – die laufende Summe notieren. - Das gespeicherte Bild mit dem Read-Tool lesen – Claude ist multimodal und sieht die Pixel tatsächlich. Gegen die Vorgaben prüfen: Komposition, Text genau wie zitiert und einmal vorkommend, Farben, Mängel (verunstaltete Buchstaben, zusätzliche Finger, kaputte Geometrie, Körnung in glatten Flächen). Probleme erkennen, bevor der Benutzer es muss.
- Dem Benutzer zeigen.
open <Pfad>, zusammenfassen, was zu sehen ist (gut und schlecht), und vorschlagen: ausliefern / mit einer bestimmten Änderung iterieren / neu schreiben.
Vorlagen nach Asset-Typ
| Asset | Vorlage |
|---|---|
| Markenlogo / Zeichen / Wortmarke | templates/logo.md |
| Symbol-Set (einheitlicher Stil über Symbole hinweg) | templates/icon-set.md |
| Mobile App UI-Bildschirm | templates/ui-mobile.md |
| Web-Dashboard / SaaS-UI | templates/ui-dashboard.md |
| Marketing-Hero-Image / Banner | templates/hero-image.md |
| Produktfotografie / Hero-Shot | templates/product-shot.md |
Für wortgetreue ausgearbeitete Beispiele siehe examples.md.
Wiederkehrende Figuren und Story-Panels
Für Comics, Storyboards und animierte Episoden, in denen dieselben Personen in vielen Bildern vorkommen:
-
Figuren aus Fotos. Niemals ganze Fotos als Referenzen übergeben: Der Bearbeitungs-Endpunkt gestaltet das Foto um (kopiert Pose, Kleidung und Hintergrund, fügt Bildunterschriftentext hinzu) anstatt die Person zu zeichnen. Die funktionierende Pipeline:
- Zuerst die Gesichter zuschneiden:
python3 <this-skill-dir>/scripts/crop_faces.py photos/ faces/ --sheet faces/_sheet.jpg. - Aus den Zuschnitten ein Anime-Gesicht erstellen.
- Dieses Gesicht in eine Halbkörper-Kostümkarte einfügen, wobei der Körpertyp angegeben wird.
- Menschliche Genehmigung einholen, dann befördern.
Prompts und der Prüfungsablauf: reference/characters-from-photos.md.
- Zuerst die Gesichter zuschneiden:
-
Szenen mit 2+ Figuren.
- Entwurf mit Sunburst
high, nicht mit Flare: Flare zeichnete nur Bild 1, draußen, mit Untertiteln. - Jeden Namen bei der ersten Erwähnung an seine Karte binden: „Dana (die Frau aus Bild 1)“.
- Untertitel in jeder Sprache verbieten.
- Telefon- und Tablet-Bildschirme von hinten rendern: Den Bildschirminhalt als eigenes Bild generieren und compositen.
Rezept: reference/multi-character-scenes.md.
- Entwurf mit Sunburst
-
Stapelabrechnung.
credit_balance_exhaustedbedeutet, dass das OpenAI-Konto kein Guthaben mehr hat, keine fehlerhafte Anfrage. Anhalten, auflisten, welche Aufnahmen fertig sind, und nach der Aufladung nur die fehlenden erneut ausführen.
API-Schlüssel und Abhängigkeiten
API-Schlüssel stammen aus Umgebungsvariablen, die im eigenen Secret-Store in der Shell gesetzt werden, die das Skript ausführt (jede neue Shell benötigt sie erneut):
OPENAI_IMAGE_API_KEYfürscripts/openai-image.shGEMINI_IMAGE_API_KEY(oderGEMINI_API_KEY) fürscripts/gemini-image.sh; derselbe Google AI Studio-Schlüssel funktioniert auch für generating-video-clips
Diese Schlüssel sind auf Image-Gen beschränkt. Sie nicht für Chat oder Embeddings wiederverwenden und niemals ausgeben – in eine Variable laden, nicht echoen.
Lokale Tools (nur zum Freistellen von Gemini-Ausgaben oder vorhandenen Bildern): rembg (pip install "rembg[cli]" onnxruntime), optional ImageMagick.
Ausgabe-Konvention
- Standard-Speicherort:
./generated-images/<beschreibender-name>.pngim aktuellen Arbeitsverzeichnis. - Dateiname: beschreibend in kebab-case (
logo-agentleh-monochrome-v1.png); Entwürfe erhalten-draft-N(logo-agentleh-draft-3.png). - Versionierung:
-v1,-v2, … anhängen, wenn iteriert wird. Niemals eine vorherige Generation ohne Nachfrage überschreiben. - Transparente Ausgaben:
-transparentnach der Version anhängen. open <Pfad>unter macOS, um dem Benutzer das Bild direkt nach der Generierung zu zeigen.
Iterationsmuster – autonome „bis zur Perfektion iterieren“-Schleife
Die Aufgabe des Agenten ist es, das Bild in den Zustand „gut genug zum Ausliefern“ zu bringen, bevor der Benutzer gefragt wird:
1. Generieren (Skript-Aufruf)
2. Die gespeicherte Datei mit dem Read-Tool lesen – Claude sieht die Pixel
3. Selbstkritik gegen die Vorgaben:
- Komposition getroffen? (Platzierung, Rahmung, Ausgewogenheit, Hierarchie, negativer Raum)
- Text genau wie zitiert, jede Zeichenkette einmal vorkommend, lesbar?
- Farben richtig? (Hex-Übereinstimmung, Palette eingehalten)
- Mängel? (verunstaltete Buchstaben, zusätzliche Finger, kaputte Geometrie, Körnung in Himmeln/Hintergründen)
- Vorgaben tatsächlich erfüllt?
4. Entscheiden:
- SHIP (ausliefern) → erfüllt die Vorgaben; dem Benutzer zeigen
- EDIT (bearbeiten) → eine lokalisierte Korrektur; bearbeiten mit --ref <vorheriges> und einem Prompt, der
„nur X ändern“ sagt und jede frühere Korrektur und jedes beibehaltene Detail WIEDERHOLT
- REWRITE (neu schreiben) → grundlegendes Prompt-Problem; von Grund auf neu schreiben, nicht optimieren
5. Anhalten, wenn: 5 Iterationen verwendet wurden, oder $3 für dieses Asset ausgegeben wurden (die Kostenzeilen des Skripts summieren),
oder es auslieferbar ist.
Der Benutzer ist der endgültige Richter – aber Claude ist der erste Richter. Kein fehlerhaftes Ergebnis zeigen und fragen „ist das gut?“ Zeige es erst, nachdem du verifiziert hast, dass es die Vorgaben erfüllt, oder mit deiner Kritik versehen („Der Wortmarken-Laufweite ist falsch; wird im nächsten Schritt korrigiert“).
Mechaniken nach Modell
- GPT Image 2.5 Bearbeitungen erfolgen über
/v1/images/editsviascripts/openai-image.sh --ref <Bild>(bis zu 16 Referenzen). Ohne Maske wird bei jedem Durchgang die gesamte Leinwand neu generiert, daher sammelt sich Drift an – jede frühere Änderung und jedes beibehaltene Detail bei jedem Durchgang wiederholen, nicht nur die neue Anfrage. Wenn eine Region pixelidentisch bleiben muss, das genehmigte Bild in das Original compositen, anstatt zu hoffen, dass der Prompt es hält. - Gemini Multi-Turn-Bearbeitung:
scripts/gemini-image.sh --ref <vorherige-Ausgabe> --prompt "ändere X, behalte Y", immer endend mit „Behalte alles andere im Bild genau gleich – Komposition, Beleuchtung, Farben, alle anderen Elemente.“ - Drift-Disziplin. Nach 3 erfolglosen Iterationen am selben Bild die Strategie wechseln: Den Basisprompt neu schreiben oder das Modell wechseln.
Preisgestaltung
GPT Image 2, 2.5 Flare und 2.5 Sunburst teilen sich Token-Raten ($30/1M Bildausgabe, $8/1M Bildeingabe, $5/1M Textingabe; Batch API halbiert sie), aber die Tokens pro Bild unterscheiden sich nach Qualität, Größe und Modell – also die Kosten lesen, die das Skript ausgibt, anstatt anzunehmen. Gemini wird pro Bild abgerechnet. Vollständige Tabelle und ausgearbeitete Szenarien: reference/pricing.md.
Hebräisch / RTL
Sunburst und Flare haben beide eine hebräische Überschrift in einem Test vom 02.10.2026 korrekt gerendert (richtige Buchstaben, richtige Reihenfolge, richtige Richtung, zusammen mit Englisch und einem Abzeichen). Zuerst die direkte Darstellung versuchen; bei langen hebräischen Zeilen oder einer erforderlichen lizenzierten Schriftart auf den Composite-Workflow ausweichen. Hebräisch steht nicht auf Googles Liste der Sprachen mit bester Leistung für Gemini-Bildmodelle – für hebräischen Text GPT Image bevorzugen. Siehe reference/hebrew-rtl.md.
Wann diese Skill NICHT verwendet werden soll
- Der Benutzer möchte bearbeitbare Vektordateien (SVG mit Pfaden). Diese Modelle geben Raster aus; verwende die
brand-assets-Skill oder Recraft V4.1 Vector (recraftv4_1_vector, natives SVG, nicht in diese Skripte eingebunden). - Der Benutzer möchte exakte Pixelmaße außerhalb der unterstützten Größen (z. B. 1200×630). Im nächstgelegenen unterstützten Seitenverhältnis generieren, dann zuschneiden/ skalieren.
- Der Benutzer möchte ein echtes Foto einer bestimmten realen Person. Beide Anbieter lehnen ab oder produzieren ungenaue Ähnlichkeiten, und es gibt Richtlinienprobleme.
- Der Benutzer möchte allgemeine „KI-Kunst“ ohne ein Design-Briefing – verweise ihn auf ChatGPT oder die Gemini-App; diese Skill ist für Designarbeit optimiert.