Files
Athena-Deck/LTX_ORIGINAL.md
T

128 lines
7.1 KiB
Markdown

# LTX Original
LTX Original ist eine zusätzliche native Python-Laufzeit für die originale
LTX-Desktop-API. LTX DeskWEB bleibt eine separate Docker-Oberfläche. ComfyUI
bleibt verfügbar, wird nicht ersetzt und übernimmt weiterhin Bildgenerierung.
## Installation und Verwendung
1. **Einstellungen → Laufzeiten → LTX Original** öffnen und installieren.
Installation und Abbruch sind echte serverseitige Aktionen. Die eigene
Installationsausgabe, Phase und festgelegten Versionen werden angezeigt.
2. Im Bereich **Video → Laufzeit / Aktives Modell** `LTX Original` wählen.
Die Laufzeitauswahl ist nur im LLM-Modus möglich. Das heruntergeladene
LTX-2.5-Distilled-Modell aktivieren; fehlende Komponenten dort nachladen.
3. In der Übersicht auf **Video** wechseln. Deck beendet nur eigene GPU-Worker,
prüft freie GPUs, startet das Backend und wartet auf dessen Health-Endpunkt.
Gewichte laden bei Generierung, nicht beim API-Start.
4. LTX DeskWEB öffnen. Es leitet die originale API über den gemeinsamen
Deck-API-Port weiter. Auflösung, Dauer, Bilder und Audio gehören in DeskWEB.
5. Auf **LLM** wechseln: der komplette Backend-Prozess endet, einschließlich
seiner GPU-Allokationen. Ein Deck-Neustart beendet ebenfalls seinen Worker.
Laufzeitinstallation benötigt Debian/Linux, Git, Python >=3.12 und venv.
Die bestehende CUDA-/PyTorch-Umgebung der Bildlaufzeit wird über einen lesenden
Python-Suchpfad wiederverwendet; LTX-spezifische Pakete liegen in einem neuen
Overlay. ComfyUI-Pakete werden nicht geändert. Ohne vorhandene Umgebung werden
CUDA-Pakete separat installiert. Freier Platz: mindestens 5 bzw. 25 GiB.
Die Installation lädt keine Modellgewichte und startet keine Inferenz.
Quellen und unveränderliche Revisionen:
- [LTX Desktop](https://github.com/Lightricks/LTX-Desktop),
`68cd86c15e5fd25f56229ea63c0dbcb0338f7812` (passend zum DeskWEB-Import).
- [LTX-2](https://github.com/Lightricks/LTX-2),
`d151147788a9284cca791edc6ce898007e727fe6` / v1.2.0.
- Originale Lizenz/Notices bleiben im heruntergeladenen Checkout. Die
Modell-Lizenz ist davon unabhängig. Keine automatische Umstellung auf HEAD.
## Prozess und Speicher
`state/ltx-original-runtime/<id>` enthält Quellcode und Python-Umgebung;
`state/video/original-work` enthält Backend-Einstellungen, Ein-/Ausgaben und
Symlinks zur Deck-Bibliothek. Gewichte werden nicht kopiert.
Die logischen Geräte werden über GPU-UUIDs geordnet: CUDA0 ist RTX 5080,
CUDA1 ist RTX 3060. Transformer und VAE laufen auf CUDA0. Eine kleine
Deployment-Erweiterung des originalen PromptEncoder führt die Textkodierung auf
CUDA1 aus und überträgt ausschließlich das Conditioning zurück auf CUDA0.
API-Schemas und Generierungspipelines werden nicht in eine generische API übersetzt.
BF16-Transformer und BF16-Textencoder passen nicht vollständig in den VRAM.
Das originale `OffloadMode.DISK` streamt Gewichte über begrenzte CPU-Puffer.
Das ist absichtlich keine Zusage vollständiger GPU-Residenz oder der besten
Geschwindigkeit. Es vermeidet das vollständige Pinnen der riesigen BF16-Gewichte
im auf 32 GiB begrenzten Deck-Testcontainer. Die Auswirkungen auf Geschwindigkeit
müssen anhand echter Generierungen geprüft werden.
Der Backend-Port ist dynamisch und nur auf Loopback erreichbar. Der gemeinsame
Deck-Port leitet im Video-Modus die originale HTTP-API weiter und schützt sie
mit dem vorhandenen API-Token. ComfyUI verwendet weiterhin seine eigene API.
Die Web-Oberfläche selbst erhält keinen Docker-Socket oder GPU-Zugriff.
## DeskWEB anbinden
Backend-URL bleibt `http://127.0.0.1:8120` bei der aktuellen Athena-Installation.
Der Token bleibt serverseitig. Wichtig: UI und Backend müssen dieselben Medien
sehen. Für die native Laufzeit sind die neuen Mounts:
- Host `.../state/video/original-work/remote-inputs/deskweb` → Web `/data/inputs`.
- Host `.../state/video/original-work/outputs` → Web `/data/outputs:ro`.
- `BACKEND_INPUT_DIR=/var/lib/deck/video/original-work/remote-inputs/deskweb`
- `BACKEND_OUTPUT_DIR=/var/lib/deck/video/original-work/outputs`
Die Backend-Pfade beziehen sich auf die derzeitige Deck-Testcontaineransicht.
Beim nativen systemd-Produkt müssen die tatsächlichen absoluten Hostpfade gesetzt
werden. Schreibende Eingaben benötigen eine gemeinsame Gruppe; nur dieses neue
Medienverzeichnis provisionieren, keine rekursive Änderung alter LTX-Daten.
Vorhandene Projekte mit alten Medienpfaden migrieren nicht automatisch.
## Grenzen und API
Die fünf vorhandenen LTX-2.5-Dateien decken das Basisrezept ab. Zusätzliche
LoRAs, Control-Modelle, AutoDuration und lokale Prompt-Aufwertung können weitere
Gewichte benötigen. Die originale API meldet diese Voraussetzungen; das
Basisrezept behauptet nicht, alle optionalen Desktop-Funktionen freizuschalten.
Bisherige lokale Desktop-Erweiterungen sind nicht automatisch im Original-Backend.
- GET `/api/v1/ltx-original-runtime` / `/log`
- POST `/api/v1/ltx-original-runtime/install` / `/cancel` mit `{}`
- POST `/api/v1/video/runtime` mit `{"runtime":"original"}` oder `comfy`
- Bestehende `/api/v1/video/service` und `/mode` bleiben erhalten.
Alle Verwaltungsaktionen benötigen die Deck-Administratorsitzung und den
bestehenden POST-/Origin-Schutz. Backup exportiert Auswahl, Einstellungen und
festgelegtes Runtime-Rezept; Gewichte und Python-Pakete werden nachgeladen.
## Integrationsstand am 30.09.2026
Installation auf Athena, Import-/Abhängigkeitsprüfung und der Wechsel über die
Deck-Oberfläche wurden durchgeführt. DeskWEB verwendet die neuen Medien-Mounts;
sein authentifizierter Proxy erreicht die originale API. Ein synthetischer
Bild-Upload wurde auf dem gemeinsamen Datenträger geprüft.
Echte CUDA-Generierung: LTX 2.5 Fast, 540p, fünf Sekunden, 24 FPS, Seed 42,
ohne Audio; die originale API lieferte HTTP 200 und eine MP4-Datei. Textencoding
lief auf der 3060, Diffusion auf der 5080. Nach Beenden des Testprozesses wurden
die GPU-Allokationen freigegeben. Optionalfunktionen sind damit nicht geprüft.
Die gezielten 21 Gerätepolicy-/Runtime-/Transporttests sind erfolgreich.
Der erste Versuch fand ein volles 256-MiB-Container-Temp-Verzeichnis: CUDA-,
Triton- und Torch-Caches sowie temporäre Dateien liegen nun unter
`video/original-work`, auf dem Datenträger statt im kleinen tmpfs.
Der Docker-Helfer erhält sein Socket-Verzeichnis über Dienstneustarts hinweg,
damit dessen Verzeichnis-Mount im Deck-Testcontainer gültig bleibt.
## Rückbau des alten Studio-Containers am 30.09.2026
Nach ausdrücklicher Freigabe entfernt: Container `mike-ai-ltx2-studio`,
Image `mike-ai/ltx2-studio:1.2.7` sowie unter `/data/video/ltx-desktop`
die alten Verzeichnisse `LTXDesktop/models`, `LTXDesktop/python`, `cache`,
`home/.nv` und `home/.triton`. Das alte Compose-Manifest wurde zu
`compose.yaml.retired-20260930` umbenannt. Historischer Quellcode bleibt erhalten.
Alte Projekte, Eingaben und Ausgaben wurden nicht entfernt. Die neue Deck-Laufzeit,
Deck-Gewichte und DeskWEB bleiben erhalten; beide Oberflächen antworteten mit HTTP 200.
Der freie Hostspeicher stieg dabei von ungefähr 17 auf 19 GiB; die großen
Verzeichnisgrößen dürfen nicht als exklusiv freigegebener Speicher ausgelegt werden.
Weitere Backups oder gemeinsame Daten wurden nicht gelöscht.