6.4 KiB
Qwen-Image-2.1 auf Athena
Stand: 21. September 2026. Qwen-Image-2.1 ist der produktive Bildworker des Routers. FLUX.2 Klein 9B FP8 bleibt als gestoppter Rückfallcontainer erhalten.
Gepinnter Stand
- ComfyUI: Commit
b0f4b7b294ce482a2e071d9d762c133d38c7aa07 - Modell-Repository:
Comfy-Org/Qwen-Image-2.1, Revisionace0edeb3791a594ddfa36ed5f41a178a394e921 - Transformer:
qwen_image_2.1_int8_convrot.safetensors(cb74113cb03faecd79611b01fd7fd642f0aa60d6f0b95086abee214d75eaa57d) - Textencoder:
qwen3vl_8b_int8_convrot.safetensors(8bfd0f6e12abf2d2d697ecc888e5e90b0d6741d6708f05799f53afa560452e8f) - VAE:
qwen_image_2.1_vae_bf16.safetensors(bb21f7473051e1ac368515dd3f2e15cd44d7a11748ee8823e1ddca3e4876b7c9) - Pipeline: 25 Schritte, CFG 1, Euler/Simple,
--lowvram - GPU: ausschließlich Athena-GPU 1, die RTX 5080 mit 16 GB
Die Gewichte liegen außerhalb von Git unter
/data/models/Qwen-Image-2.1-ComfyUI. Der Adapter
platform/docker/qwen-image-worker/qwen_image_worker.py stellt vor ComfyUI
die bestehende private Worker-API auf Port 8086 bereit. Der öffentliche
Routervertrag bleibt damit /v1/images/generations und /v1/images/edits.
Der Container läuft wie der Router mit UID/GID 10002:10002, damit beide das
gemeinsame Bild-Volume ohne erweiterte Linux-Capabilities verwenden können.
Lebenszyklus
Ein Bildauftrag läuft transaktional:
- Der Router merkt sich das aktive Textprofil.
- Der Profile Controller stoppt LLM, TTS und andere GPU-Spezialworker.
mike-ai-image-workerstartet Qwen Image auf der RTX 5080.- Der Adapter erzeugt das Bild oder bearbeitet bis zu vier Referenzbilder.
- Der Qwen-Worker wird vollständig gestoppt.
- Das vorherige Textprofil und Qwen3-TTS werden wiederhergestellt.
Der Container ist außerhalb eines Auftrags gestoppt. Das ist der Sollzustand.
Reproduzierbare Vorbereitung
cd /opt/mike-ai/stack
sudo ./scripts/prepare-qwen-image-21.sh
Das Skript lädt fehlende Dateien mit festen SHA-256-Prüfsummen, baut den produktiven Qwen-Worker und legt Qwen sowie FLUX gestoppt an. Es lädt dabei kein Modell in den VRAM.
Funktionsprobe über den echten Routerweg
curl -sS http://127.0.0.1:8081/v1/images/generations \
-H 'Content-Type: application/json' \
-d '{
"model":"Qwen-Image-2.1-int8",
"prompt":"Fotorealistisches rotes Haus bei Tageslicht",
"size":"1024x1024",
"steps":25,
"guidance":1.0,
"response_format":"url"
}'
Nach dem Lauf müssen mike-ai-image-worker und
mike-ai-flux-image-worker gestoppt sein und das vorherige LLM-Profil wieder
gesund laufen.
OpenClaw 2026.9.5
OpenClaws eingebautes Werkzeug image_generate verwendet den separaten
Medienmodell-Eintrag. Er muss auf den OpenAI-kompatiblen Athena-Router zeigen:
openclaw config set agents.defaults.mediaModels.image.primary \
openai/Qwen-Image-2.1-int8
openclaw config set agents.defaults.mediaModels.image.fallbacks '[]' \
--strict-json
Der Provider models.providers.openai.baseUrl bleibt
http://192.168.1.212:8081/v1. openclaw models set-image ist hierfür nicht
der richtige Befehl: Er schreibt agents.defaults.imageModel, nicht den von
image_generate verwendeten Medienmodell-Eintrag. Ein alter Wert unter
agents.defaults.imageModel wird mit folgendem Befehl entfernt:
openclaw config unset agents.defaults.imageModel
Die leere Fallbackliste verhindert, dass OpenClaw bei einem lokalen Fehler
unbemerkt auf openai/gpt-image-2 ausweicht.
OpenClaw überträgt Referenzbilder an /v1/images/edits als
OpenAI-kompatibles Multipart-Formular mit dem Feld image[]. Der Router
akzeptiert dort ein bis vier Referenzbilder und normalisiert numerische
Formularwerte wie n und steps. Der ältere JSON-/Base64-Weg bleibt für
bestehende Clients erhalten.
Beim ersten Wechsel von FLUX auf Qwen funktionierten Referenzbilder deshalb
nicht: Der neue Qwen-Pfad verstand zunächst nur den älteren JSON-/Base64-Weg.
Zusätzlich war anfangs agents.defaults.imageModel gesetzt, obwohl
OpenClaws image_generate den Eintrag unter
agents.defaults.mediaModels.image verwendet. Das waren Lücken der neuen
Qwen-Integration. Der zuvor produktive FLUX-Pfad war davon nicht betroffen.
Produktionsvalidierung vom 21. September 2026
Beide öffentlichen Routerpfade wurden auf Athena mit dem produktiven Stack geprüft:
- Text zu Bild: gültiges PNG mit 1024×1024 Pixeln, 25 Schritte,
Qwen-Image-2.1-int8; 48,9 Sekunden reine Bildpipeline und 71,6 Sekunden für den vollständigen transaktionalen Routerlauf. - Bildbearbeitung: gültiges PNG mit 1024×1024 Pixeln aus einem Referenzbild,
25 Schritte,
Qwen-Image-2.1-int8; 76,3 Sekunden für den vollständigen Routerlauf.
Nach beiden Aufträgen waren Qwen und FLUX gestoppt. mike-ai-llama-medium,
Qwen3-TTS, Router und Profile Controller liefen anschließend wieder gesund.
Damit sind Erzeugung, Referenzbildübergabe und Wiederherstellung des zuvor
aktiven Textprofils über den echten Routerweg bestätigt.
Zusätzlich wurde image_generate am 21. September 2026 über einen isolierten
OpenClaw-agent exec-Lauf geprüft. OpenClaw rief
openai/Qwen-Image-2.1-int8 einmal auf; Athena erzeugte das PNG und stellte
Medium sowie Qwen3-TTS nach 72,5 Sekunden wieder gesund her.
Auch die Referenzbildbearbeitung wurde anschließend über das echte
OpenClaw-Werkzeug image_generate geprüft. OpenClaw übergab ein Referenzbild
als image[]; der Router erzeugte mit Qwen-Image-2.1-int8 ein gültiges
PNG mit 1024×1024 Pixeln und meldete im Sidecar mode: image-edit sowie
reference_images: 1. Medium und Qwen3-TTS liefen nach dem Auftrag wieder
gesund, der Bildworker wurde erwartungsgemäß gestoppt.
FLUX-Rückfallpfad
FLUX verwendet weiterhin das Image mike-ai/image-worker:local, die
bestehenden Modellverzeichnisse und den Container
mike-ai-flux-image-worker. Er hat das Controller-Label flux-standby und
kann deshalb nicht durch einen normalen Router-Bildauftrag gestartet werden.
Eine manuelle Diagnose ist nur über den allowlist-beschränkten Controllerpfad
/workers/flux-standby/start möglich. Für eine dauerhafte Rückschaltung müssen
Service-DNS, Modellname und Schrittzahl gemeinsam in Compose auf FLUX gesetzt
und anschließend Router und Controller neu ausgerollt werden. Keine dieser
Änderungen erfolgt automatisch.
Historische FLUX-Messwerte und Grenzen stehen in FLUX_9B_BETA.md und FLUX_RESOLUTION_TEST_20260912.md.