--- title: LTX-2.3 Multi-Effect Workflow emoji: 🎬 colorFrom: indigo colorTo: green sdk: gradio sdk_version: 6.13.0 python_version: "3.12" app_file: app.py pinned: false hardware: zero-a10g short_description: LTX-2.3 video restoration LoRA workflow models: - diffusers/LTX-2.3-Distilled-Diffusers - Lightricks/LTX-2.3-22b-IC-LoRA-Decompression - Lightricks/LTX-2.3-22b-IC-LoRA-Deblur - Lightricks/LTX-2.3-22b-IC-LoRA-Colorization --- # LTX-2.3 Multi-Effect Video Workflow Upload a video once, then run Decompress, Deblur, or Colorize from the same page. Each completed render becomes the current input video for the next iteration. Render history is stored under the mounted `/data/ltxvideo-renders` bucket path. The page shows a sequential list of available renderings and rebuilds a download-all zip after every successful run. The approximately 50 GB text encoder, tokenizer, and downloaded LoRAs are cached persistently under `/data/ltx-model-cache`. Startup copies those components into `/tmp/ltx-model` and loads the encoder into RAM first. It then removes those local staging files before downloading and loading the remaining model components. This sequential disk use avoids both the 100 GB workload limit and slow safetensors memory mapping through the bucket mount. Xet's duplicate chunk cache is disabled. Set `LTX_MODEL_CACHE_ROOT`, `LTX_RUNTIME_MODEL_ROOT`, or `LTX_RUNTIME_HF_CACHE_ROOT` only when different cache paths are required. Each effect processes the uploaded video's complete duration at 24 fps. There is no manual frame limit; the app only rounds to the nearest frame count accepted by LTX (`8k+1`). Longer videos take proportionally more time and memory. The restoration LoRAs are gated. Add a Space secret named `HF_TOKEN` with a read token from an account that has accepted the relevant Lightricks model terms. The app also recognizes `HUGGINGFACE_HUB_TOKEN`, `HUGGING_FACE_HUB_TOKEN`, and `HUGGINGFACE_TOKEN`.