# SEKTION 06 — CHATBOX · VORRAT · VIDEO

> des Nutzers drei eigene Ideen. Alle drei gehören ins Programm.

---

## 6.1 Die Chatbox, die Workflows BAUT

> *„Mich nervt, dass ich immer Workflows habe, aber keine Chatbox, um
> Workflows zu erstellen."*

Heute kann Qwirbel einen **vorhandenen** Workflow gegen die Hardware prüfen
und empfehlen. Er kann keinen **neuen** bauen. Das ist die Lücke.

**Ablauf:**

```
„ich will Banner in 1200×628 mit Text drauf, schnell"
        ↓
  Katalog lesen (GET /katalog) — jeder Node, jeder Eingang, jeder Hinweis
  Hardware lesen (GET /system) — VRAM gemessen, nicht geglaubt
        ↓
  Graph aus GEPRÜFTEN BAUSTEINEN zusammensetzen
        ↓
  POST /graf/pruefen  +  POST /graf/plan
        ↓
  passt      → speichern, sofort nutzbar
  passt nicht → EHRLICH ablehnen mit Grund
```

**Die eiserne Regel dabei: der Graph wird ZUSAMMENGESETZT, nicht erfunden.**

Das Modell wählt aus dem Katalog und füllt Werte — es schreibt **kein
Workflow-JSON frei**. Ein halluziniertes Workflow-JSON war in Qwirbel
(Session 10g) schon einmal der Fehler: erfundene Node-Namen, erfundene Pfade,
15-Byte-PNGs. Der Katalog mit seinen `hinweis`-Texten ist genau deshalb
maschinenlesbar (Sektion 01).

**Rückfrage statt Raten:** Ist unklar, was entstehen soll (Bild? Video?
Musik?), wird **gefragt** — mit 2–3 Optionen. Ein falsch geratener Typ
kostet einen 12-Minuten-Lauf.

**Und die Ansage, die der Nutzer ausdrücklich will:** sichtbar sagen, dass die
Hardware angesehen wurde und welche Schwellen daraus folgen — nicht
stillschweigend. *„Ich habe deine Hardware angesehen: 17,1 GB VRAM … daraus
nehme ich …"*

## 6.2 Der Vorrat (Seed-Bank)

> des Nutzers Idee: 50 Durchläufe je Modell, dabei Latents und ausgewertete
> Prompts sammeln.

**Was die Messung dazu sagt** (12.08., ehrlich):

- **Als Beschleuniger trägt der Vorrat nicht.** Der Prompt-Encode kostet
  **1,6 s von 29,1 s (5 %)**. Selbst komplettes Überspringen ändert wenig.
  Nebenbei: ComfyUI cacht Conditioning bei gleichem Prompt bereits selbst.
- **Als Trefferquote trägt er sehr wohl.** Bei Wenig-Schritt-Modellen (Turbo,
  Lightning, 4–8 Schritte) bestimmt das Startrauschen stark, ob die
  Komposition sitzt. Ein kuratierter Vorrat („diese Rauschbilder haben bei
  diesem Modell in dieser Auflösung wiederholt gute Ergebnisse gebracht")
  spart den zweiten und dritten Anlauf — und das ist in der Praxis mehr wert
  als eine Sekunde.

**Also gebaut als: Seed-Bank.**

- `vorrat/<modell>/<auflösung>/*.latent` + eine Bewertung je Eintrag
- Eingang `aus_vorrat` steht bereits am Node `latent.leer`
- Sammeln läuft nebenbei mit: gelungene Läufe können ihr Startrauschen
  behalten (auf Knopfdruck, nicht heimlich)

**Was NICHT gebaut wird:** zufällig gezogene **Conditionings** als Regelfall.
Das Conditioning IST der Bildinhalt — wer „Fuchs im Schnee" eingibt und ein
gespeichertes „Cyberpunk-Stadt" bekommt, sieht eine Cyberpunk-Stadt.
Als **Überraschungs-Modus auf Knopfdruck**: gerne.

## 6.3 Video in Happen

> *„Ein Motion Control, was du so lange haben willst, das wird in schlauen,
> guten Happen gemacht."*

**Das ist genau richtig** — und es löst gleich zwei Probleme: Speicher und
Länge.

**Endframe-Kette** als erstklassiger Bürger, nicht als Nachbau:
der letzte Frame eines Abschnitts wird zum Startbild des nächsten. Aus
8-Sekunden-Stücken wird eine durchgehende Szene. Für 100 Sekunden also
13 Abschnitte **in Kette**.

Der Graph beschreibt die Kette selbst — Abschnittslänge, Überlappung,
Übergabe. Kein Sonderweg im Code, kein verstecktes Skript.

**Warum nicht mischen:** die Latents eines Videos sind zeitlich
zusammenhängend, Frame 41 folgt aus Frame 40. Frames aus zehn Videos zu
mischen ergibt **Zappen zwischen zehn Szenen**, kein langes Video.

**Der Vorrat hilft trotzdem** — als **Bewegungs-Vorrat** je Motivart
(„ruhiger Schwenk", „Kamerafahrt nach vorn"), nicht als Frame-Salat.

**Speicher-Vorteil obendrein:** ein Abschnitt passt in den VRAM, ein
100-Sekunden-Stück nie. `bei_engpass: stueckeln` ist dafür schon vorgesehen.

## 6.4 Checks für diese Sektion

- [ ] Die Chatbox baut aus einem Satz einen Graphen, der `/graf/pruefen`
      besteht
- [ ] Sie erfindet **nie** einen Node-Typ, der nicht im Katalog steht
      (Gegenprobe: erfundener Wunsch → ehrliche Rückfrage statt Fantasie)
- [ ] Passt es nicht auf die Hardware → Absage **mit Grund**, kein stilles
      Kleinrechnen
- [ ] Die Hardware-Ansage ist sichtbar, nicht nur im Log
- [ ] Seed-Bank: `aus_vorrat` zieht wirklich aus dem Vorrat, und ein Eintrag
      überlebt den Neustart
- [ ] Endframe-Kette: der letzte Frame von Abschnitt n ist bitgenau das
      Startbild von n+1
- [ ] Ein 30-Sekunden-Video entsteht aus Abschnitten und **zappt nicht**
