115 lines
6.3 KiB
Markdown
115 lines
6.3 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.
|