Instructions to use RuneXX/LTX-2.3-Workflows with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- LTX-2
How to use RuneXX/LTX-2.3-Workflows with LTX-2:
# Install the LTX-2 pipelines git clone https://github.com/Lightricks/LTX-2.git cd LTX-2 uv sync --extra natten
# Download weights from this repo # Substitute filenames from this repo's "Files and versions" if they differ hf download RuneXX/LTX-2.3-Workflows \ diffusion_models/<distilled-transformer>.safetensors \ text_encoders/gemma4-12b-with-proj-ltx-2.5-bf16.safetensors \ vae/<video-vae>.safetensors \ vae/<audio-vae>.safetensors \ latent_upscale_models/<spatial-upsampler>.safetensors \ latent_upscale_models/<temporal-upsampler>.safetensors \ --local-dir models/LTX-2.3-Workflows # DFR requires the detailing IC-LoRA (separate repo; strength is fixed at 0.5) hf download Lightricks/LTX-2.5-22b-IC-LoRA-Pixel-Spatial-Upscaler --local-dir models/LTX-2.5-22b-IC-LoRA-Pixel-Spatial-Upscaler# Distilled LTX-2.5 pipeline (fast) uv run python -m ltx_pipelines.distilled \ --transformer-path models/LTX-2.3-Workflows/diffusion_models/<distilled-transformer>.safetensors \ --text-encoder-path models/LTX-2.3-Workflows/text_encoders/gemma4-12b-with-proj-ltx-2.5-bf16.safetensors \ --video-vae-path models/LTX-2.3-Workflows/vae/<video-vae>.safetensors \ --audio-vae-path models/LTX-2.3-Workflows/vae/<audio-vae>.safetensors \ --spatial-upsampler-path models/LTX-2.3-Workflows/latent_upscale_models/<spatial-upsampler>.safetensors \ --num-frames 121 \ --prompt "A beautiful sunset over the ocean" \ --output-path output.mp4 # For image-to-video, add: --image path/to/image.jpg 0 0.8# DFR pipeline (higher detail fidelity; optional temporal 2x/4x) uv run python -m ltx_pipelines.dfr_pipeline \ --transformer-path models/LTX-2.3-Workflows/diffusion_models/<distilled-transformer>.safetensors \ --text-encoder-path models/LTX-2.3-Workflows/text_encoders/gemma4-12b-with-proj-ltx-2.5-bf16.safetensors \ --video-vae-path models/LTX-2.3-Workflows/vae/<video-vae>.safetensors \ --audio-vae-path models/LTX-2.3-Workflows/vae/<audio-vae>.safetensors \ --spatial-upsampler-path models/LTX-2.3-Workflows/latent_upscale_models/<spatial-upsampler>.safetensors \ --temporal-upsampler-path models/LTX-2.3-Workflows/latent_upscale_models/<temporal-upsampler>.safetensors \ --detailing-lora models/LTX-2.5-22b-IC-LoRA-Pixel-Spatial-Upscaler/ltx-2.5-22b-ic-lora-pixel-spatial-upscaler-x2-1.0.safetensors \ --spatial-upscalings 1 \ --temporal-upscalings 1 \ --height 1088 \ --width 1920 \ --num-frames 121 \ --prompt "A beautiful sunset over the ocean" \ --output-path output.mp4 # For 4K: --spatial-upscalings 2 --width 3840 --height 2176 # For image-to-video, add: --image path/to/image.jpg 0 0.8 - Notebooks
- Google Colab
- Kaggle
Workflow : FL2V & FML2V First (Middle) Last Frame
FLF2V & FMLF2V - First-Last Frame & First-Middle-Last Frame
Frame Injection (In-Place) & Guider versions
https://huggingface.co/RuneXX/LTX-2.3-Workflows
I2V works fine, but this FL workflow does not work well at all. At least when both images are identical.
At least when both images are identical.
the images shouldn't be identical ;-) rather direct the video by giving different input image frames
I was hoping LTX is capable of decent loops, but doesn't look like it. At least 2.3 is good for memes.
Is "FMF2V" a possible "thing?"
As in provide the first frame and a middle frame but NOT a "last" frame so the video continues from middle and finishes where you prompt it to?
Edit: moved this to its own thread.