Worum es geht
Mit dem LoRA aus A3 kennt das Bildmodell seine Figur. Jetzt bekommt sie Orte und Kleidung: das Lehrerzimmer am Morgen, den Schulhof im Herbst, das Podcast-Studio. Du beschreibst die Szene in einem Satz, das Gesicht kommt vom Stichwort. Aus diesen Bildern entstehen später die Startbilder für Sprech-Clips (A6, A7).
Der Schritt selbst ist kurz. Die Arbeit steckt in zwei Dingen: die Szene so eindeutig zu beschreiben, dass das Modell nichts dazuerfindet, und die Stellen zu erkennen, an denen das LoRA mehr tut, als es soll.
Was vorher passiert ist
In A3 ist das LoRA entstanden: figur/lora/figur.safetensors, gewählt bei Schritt 1500. In A1 hast du ComfyUI
eingerichtet und Z-Image Turbo geladen. Beides nutzt diese Lektion; neue Modelle kommen nur für die Nachbearbeitung
dazu, und die kennst du aus A2.
Der Ablauf
1. Die Szene beschreiben
Das Skript setzt den Prompt zusammen: vorne Stichwort und Klasse aus figur.json (beim Beispiel a photo of l3hr3r, a man,),
dahinter dein Satz. Er
nennt Ort, Haltung und Kleidung – und den Ort so genau, dass es nur eine Lesart gibt. Englisch funktioniert am
verlässlichsten; Z-Image versteht auch andere Sprachen, getestet ist hier aber nur Englisch.
sitting behind the teacher's desk at the front of a bright modern classroom, a large green chalkboard
on the wall directly behind him, hands resting on the desk, wearing a navy V-neck sweater over a light blue shirt
2. Kandidaten erzeugen
Mit einem Seed entsteht ein Bild. Mit vier Seeds entstehen vier Kandidaten und ein Kontaktbogen – bei Startbildern für Clips lohnt sich das fast immer, denn Haltung, Hände und Hintergrund fallen jedes Mal anders aus.
3. Wählen und übernehmen
Du schaust auf den Kontaktbogen und kopierst den besten Kandidaten nach szenen/<name>.png. Die Wahl kommt als Zeile in
entscheidungen.md.

Erster Versuch mit „am Lehrerpult im Klassenzimmer“: Das Modell setzt ihn an einen Schülertisch, die Tafel hängt hinten im Raum. Wo das Pult steht, hatte der Satz offengelassen.
KI-generiert.
Zweiter Versuch mit „hinter dem Lehrerpult vorne im Klassenzimmer, die Tafel direkt hinter ihm“. Jetzt stimmt der Raum. Seed 64 wurde das Startbild für den Clip auf der Startseite; Seed 77 fiel wegen der Schrift an der Tafel raus.
KI-generiert.4. Nachbearbeiten, wo nötig
Stehen andere Menschen im Bild, haben sie oft Züge der Figur übernommen. Das zweite Skript tauscht ihre Gesichter mit Qwen-Image-Edit aus und lässt die Figur unverändert. Wörter auf Tafeln oder Büchern, die genau so dastehen müssen, kommen besser nachträglich als Einblendung ins Bild (siehe Fallstricke).
Von Hand: der ganze Weg
Alles läuft über zwei Skripte im Kit. szene.py erzeugt die Bilder, nachbearbeiten.py ändert ein Bild per
Anweisung. Mit -v siehst du jeden Befehl, den sie ausführen; mit --zeigen nur die Befehle, ohne etwas zu tun. Nach
jedem Lauf liegt ein Protokoll im Ergebnisordner, zum Beispiel szenen/pult/protokoll_szene.sh.
Im Terminal, im Kursordner
# 1. Vier Kandidaten für eine Szene (für ein Clip-Startbild: --format clip)
python3 skripte/szene.py -v --name pult --seeds 37,41,64,77 --format clip \
--szene "sitting behind the teacher's desk at the front of a bright modern classroom, a large green chalkboard on the wall directly behind him, hands resting on the desk, wearing a navy V-neck sweater over a light blue collared shirt"
# 2. Kontaktbogen ansehen, wählen und übernehmen
xdg-open szenen/pult/kontaktbogen.jpg
cp szenen/pult/seed_64.png szenen/pult.png
echo "| A4 | $(date +%F) | Szene pult: Seed 64 | Pult vorne, Tafel direkt dahinter, Tafel ohne Schrift |" >> entscheidungen.md
# 3. Nur falls nötig: fremde Gesichter austauschen, die Figur bleibt
python3 skripte/nachbearbeiten.py -v szenen/kollegen.png --anweisung "Change the faces of the two men on the left and on the right so that they are clearly different people. Keep the man in the middle, his face, hair and clothes, and everything else in the image exactly unchanged."
python3 skripte/pruefen.py A4So sieht der Anfang der Ausgabe mit -v aus. Beim ersten Mal lädt das Skript die Modelle und verlinkt das LoRA für
ComfyUI, danach schreibt es den Auftrag als Datei und schickt ihn ab:
# Prompt: a photo of l3hr3r, a man, sitting behind the teacher's desk at the front of …, looking directly
# into the camera with a friendly, relaxed expression, mouth closed, medium close-up from the chest up
# Format clip (768×1344), LoRA-Stärke 1, Seeds 37, 41, 64, 77
▸ hf download Comfy-Org/z_image_turbo split_files/diffusion_models/z_image_turbo_bf16.safetensors --local-dir modelle/Comfy-Org/z_image_turbo
▸ ln -sf ../../../../modelle/Comfy-Org/z_image_turbo/split_files/diffusion_models/z_image_turbo_bf16.safetensors werkzeuge/ComfyUI/models/diffusion_models/z_image_turbo_bf16.safetensors
…
▸ ln -sf ../../../../figur/lora/figur.safetensors werkzeuge/ComfyUI/models/loras/figur.safetensors
▸ python3 skripte/werkzeuge/comfy.py laeuft
▸ cat > szenen/pult/auftrag_seed_37.json <<'EOF'
…
▸ python3 skripte/werkzeuge/comfy.py ausfuehren szenen/pult/auftrag_seed_37.json --ziel szenen/pult/seed_37.png
…
▸ werkzeuge/ComfyUI/venv/bin/python skripte/werkzeuge/kontaktbogen.py szenen/pult/seed_37.png … --aus szenen/pult/kontaktbogen.jpg --spalten 4Der Auftrag ist ein ComfyUI-Graph im API-Format: Z-Image Turbo, das LoRA mit Stärke 1,0, 8 Schritte, CFG 1. Du kannst
ihn öffnen, ändern und mit comfy.py ausfuehren erneut abschicken.
Entscheidungen
Wie stark soll das LoRA wirken?
Stärke 1,0
Im Vergleich von 1,0 und 0,8 über acht Szenen war kaum ein Unterschied zu sehen. Bei 1,0 sitzt die Identität am sichersten, also bleibt es dabei.
Wie kommt Ausdruck ins Bild?
Deutlich im Prompt, nicht über die LoRA-Stärke
Ab Schritt 1500 macht das LoRA den Ausdruck etwas starrer (A3). „Laughing out loud with his mouth wide open“ holt das Lachen zurück; ein zaghaftes „smiling“ endet im Standardlächeln.
Wie genau beschreibe ich den Ort?
Mit Lage im Raum und dem, was direkt dahinter ist
„Am Lehrerpult“ reichte nicht, das Modell hat ihn an einen Schülertisch gesetzt (Abb. A4.1). „Vorne, die Tafel direkt hinter ihm“ lässt keine zweite Lesart.
Ein Bild oder mehrere?
Vier Seeds und ein Kontaktbogen, wenn das Bild wichtig ist
Ein Bild kostet Sekunden. Vier nebeneinander zeigen sofort, welches Hände, Blick und Hintergrund am besten trifft – die Wahl triffst du, nicht der Zufall.
Welches Format für Startbilder von Clips?
--format clip: 768 × 1344, Blick in die Kamera, Mund geschlossen
InfiniteTalk (A6) lässt das Bild sprechen. Ein ruhiger, frontaler Brustbild-Ausschnitt mit geschlossenem Mund gibt dem Modell den besten Ausgangspunkt.
Fallstricke
Sein Name steht auf der Tafel oder dem Buch
Z-Image schreibt das Stichwort gern auf alles, was beschriftet werden kann: „Fiibön. l3hr3r“ auf dem Buch, „l3hr3r“ im Tafelbild. Ein vorgegebener Buchtitel („Der Vorleser“) kam sauber an. Beim vorgegebenen Tafelbild stand das Stichwort trotzdem noch in einem der Kreise – verlässlich ist nur die leere Fläche.
LösungFläche ausdrücklich leer verlangen („completely clean, empty whiteboard“, „plain cover without any text“) oder den Text im Prompt vorgeben.

Oben das Whiteboard: frei beschrieben, mit vorgegebenem Inhalt, ausdrücklich leer. Unten das Buch: frei, mit vorgegebenem Titel, ohne Titel. Nur die leere Tafel und der vorgegebene Buchtitel sind frei vom Stichwort.
KI-generiert.Deutsche Wörter kommen falsch an
Auf der Tafel steht „Verdunnstung“ und zweimal „Regen“, einmal davon als „Hegen“. Auch Qwen-Image-Edit schreibt deutsche Wörter fehlerhaft. Eine leere Tafel plus Einblendung im Schnitt ist schneller als zehn neue Versuche.
LösungTexte, die stimmen müssen, nachträglich als Einblendung setzen.
Andere Personen im Bild sehen ihm ähnlich
Das Stichwort wirkt auf das ganze Bild, nicht nur auf eine Person (A3). Qwen-Image-Edit tauscht die Gesichter der anderen zuverlässig aus, wenn die Anweisung genau sagt, wer sich ändert und wer gleich bleibt.
LösungMit nachbearbeiten.py die anderen Gesichter austauschen; die Figur bleibt unverändert.

Links das Original: Beide Kollegen haben Züge der Figur. Daneben zwei Varianten nach der Nachbearbeitung – dunkle Locken links, grauhaarig rechts, die Figur in der Mitte unverändert.
KI-generiert.Er sitzt am falschen Platz
Ein Klassenzimmer hat viele Tische. Ohne Angabe nimmt das Modell den, der im Bild am natürlichsten wirkt – oft einen Schülertisch in der Mitte.
LösungLage im Raum beschreiben: vorne, hinten, direkt davor, direkt dahinter.
Mit KI vereinfacht
Hier ist der Agent vor allem ein guter Texter und ein aufmerksamer Prüfer. Er übersetzt deine Szene in einen eindeutigen englischen Satz, erzeugt Kandidaten und schaut die Bilder an, bevor du es tust: steht irgendwo das Stichwort, sehen andere Personen der Figur ähnlich, stimmt der Ort?
Der Agent
- formuliert deine Szene eindeutig und auf Englisch
- erzeugt vier Kandidaten und den Kontaktbogen
- prüft jedes Bild auf Schrift, fremde Gesichter und den richtigen Ort
- schlägt Nachbearbeitung vor und führt sie aus
Du
- sagst, wo die Figur ist und was sie trägt
- wählst den Kandidaten
Ein Satz reicht, auch auf Deutsch:
Erzeuge mit skripte/szene.py vier Kandidaten: Er sitzt vorne am Lehrerpult, die Tafel direkt hinter ihm,
Pullover mit V-Ausschnitt über hellblauem Hemd. Prüf die Bilder auf Schrift und zeig mir den Kontaktbogen.Mit lokalem Qwen: Z-Image mit Textencoder braucht rund 20 GB Grafikspeicher, Qwen-Image-Edit für die
Nachbearbeitung noch mehr. Das Sprachmodell muss dafür entladen sein; mit OLLAMA_KEEP_ALIVE=0 aus der Einrichtung
geschieht das nach jeder Antwort.
