LTX-2 README

The project's README from github.com/Lightricks/LTX-2. As one markdown file: README.md.

LTX-2

Website Model Demo Paper Discord

LTX-2 is the first DiT-based audio-video foundation model that contains all core capabilities of modern video generation in one model: synchronized audio and video, high fidelity, multiple performance modes, production-ready outputs, API access, and open access.

🚀 Quick Start

Clone the repo

git clone https://github.com/Lightricks/LTX-2.git
cd LTX-2

Install the dependencies. The natten extra is the fastest backend for the diffusion video VAE below, and is Linux + CUDA only -- on Windows and macOS it is skipped automatically and decoding falls back to a Triton or eager implementation, so the same command works everywhere (see neighborhood attention backends)

uv sync --extra natten

Download the models or use the Hugging Face CLI

hf auth login
hf download Lightricks/LTX-2.5 \
    diffusion_models/ltx-2.5-22b-distilled-transformer-bf16.safetensors \
    text_encoders/gemma4-12b-with-proj-ltx-2.5-bf16.safetensors \
    vae/ltx-2.5-video-vae-bf16.safetensors \
    vae/ltx-2.5-audio-vae-bf16.safetensors \
    latent_upscale_models/ltx-2.5-latent-spatial-upscaler-x2-bf16-1.0.safetensors \
    --local-dir models/ltx-2.5

That is roughly 66 GiB. The CLI keeps the repository's folder layout under --local-dir, which is why the paths below include diffusion_models/, vae/ and so on.

If you get a 401/403, accept the model terms on Hugging Face and log in with a Read token (fine-grained tokens need the "read gated repos" scope enabled).

Generate

uv run python -m ltx_pipelines.distilled \
    --transformer-path       models/ltx-2.5/diffusion_models/ltx-2.5-22b-distilled-transformer-bf16.safetensors \
    --text-encoder-path      models/ltx-2.5/text_encoders/gemma4-12b-with-proj-ltx-2.5-bf16.safetensors \
    --video-vae-path         models/ltx-2.5/vae/ltx-2.5-video-vae-bf16.safetensors \
    --audio-vae-path         models/ltx-2.5/vae/ltx-2.5-audio-vae-bf16.safetensors \
    --spatial-upsampler-path models/ltx-2.5/latent_upscale_models/ltx-2.5-latent-spatial-upscaler-x2-bf16-1.0.safetensors \
    --num-frames 121 \
    --seed 42 \
    --output-path output.mp4 \
    --prompt "A medium close-up shot features a Caucasian man with a beard, wearing a green and white baseball cap without any letters on the front, and a light blue shirt over a white t-shirt. He is positioned in the center of the frame, looking intently directly at the camera, his eyes focused on camera. His facial expression is one of deep concentration, with his brow slightly raised. As he looks straight at the camera, a quick sniff sound is heard, and then he speaks with a deep male voice and a satisfied tone, saying, 'I think it's so good.' The camera remains static throughout, maintaining a shallow depth of field, which keeps the man in sharp focus while the background is softly blurred, showing a beige wall behind him. After a brief pause, another short, audible sniff is heard. The man then continues to speak, his voice maintaining the same quality, as he states, 'So good. So good.' He elaborates further, emphasizing his point with a final statement, 'This got to be, it's got to be the best tool I've ever seen.'"

In cases of GPU memory constraints, consider --quantization fp8-cast --offload {cpu, disk}. See additional flags.

This is DistilledPipeline: the fast starting point. For production quality (slower, more VRAM), run DFR below. For other capabilities, see Models and Pipelines.

DFR (production quality)

DFR (Diffusion Fidelity Rendering) is the production-quality text/image-to-video path. It uses the same distilled transformer as the command above, plus a detailing IC-LoRA — extra generated keyframes and a spatial detailing pass. Expect longer runtime and more VRAM, not a different prompting style. Do not pass the full (dev) transformer.

Reuse the text encoder, VAEs, spatial upscaler, and distilled transformer from the first download; add the detailing IC-LoRA (separate repository):

hf download Lightricks/LTX-2.5-22b-IC-LoRA-Pixel-Spatial-Upscaler \
    ltx-2.5-22b-ic-lora-pixel-spatial-upscaler-x2-1.0.safetensors \
    --local-dir models/ltx-2.5/loras
uv run python -m ltx_pipelines.dfr_pipeline \
    --transformer-path       models/ltx-2.5/diffusion_models/ltx-2.5-22b-distilled-transformer-bf16.safetensors \
    --text-encoder-path      models/ltx-2.5/text_encoders/gemma4-12b-with-proj-ltx-2.5-bf16.safetensors \
    --video-vae-path         models/ltx-2.5/vae/ltx-2.5-video-vae-bf16.safetensors \
    --audio-vae-path         models/ltx-2.5/vae/ltx-2.5-audio-vae-bf16.safetensors \
    --detailing-lora         models/ltx-2.5/loras/ltx-2.5-22b-ic-lora-pixel-spatial-upscaler-x2-1.0.safetensors \
    --spatial-upsampler-path models/ltx-2.5/latent_upscale_models/ltx-2.5-latent-spatial-upscaler-x2-bf16-1.0.safetensors \
    --num-frames 121 \
    --seed 42 \
    --output-path output_dfr.mp4 \
    --prompt "A medium close-up shot features a Caucasian man with a beard, wearing a green and white baseball cap without any letters on the front, and a light blue shirt over a white t-shirt. He is positioned in the center of the frame, looking intently directly at the camera, his eyes focused on camera. His facial expression is one of deep concentration, with his brow slightly raised. As he looks straight at the camera, a quick sniff sound is heard, and then he speaks with a deep male voice and a satisfied tone, saying, 'I think it's so good.' The camera remains static throughout, maintaining a shallow depth of field, which keeps the man in sharp focus while the background is softly blurred, showing a beige wall behind him. After a brief pause, another short, audible sniff is heard. The man then continues to speak, his voice maintaining the same quality, as he states, 'So good. So good.' He elaborates further, emphasizing his point with a final statement, 'This got to be, it's got to be the best tool I've ever seen.'"

Defaults are 1024×1536 at 24 fps (--temporal-upscalings 0). UHD 4K is --width 3840 --height 2176 (not 2160). --temporal-upscalings 1 or 2 needs the temporal upscaler. Size, fps, and memory notes: Running DFR.

Full Model List

LTX-2.5 is the recommended model, and what the Quick Start uses. Its weights are published as one file per component, so you download only the parts your pipeline needs.

Download from the LTX-2.5 HuggingFace repository:

Transformer (choose and download one of the following)

Text Encoder - Gemma 4 12B, fine-tuned for LTX, with the text projection bundled in; required by every pipeline. It is bundled with the model, so no separate Gemma download is needed. Google's stock Gemma 4 release is not a substitute: loading checks the encoder's version against the one the checkpoint was trained with (gemma4-12b-ltx-v1)

Video VAE (choose and download one of the following)

Audio VAE - required by the pipelines that generate or decode audio

Spatial Upscaler - required by the two-stage pipeline implementations in this repository

Temporal Upscaler - required by DFRPipeline when running temporal refine rounds (--temporal-upscalings)

Distilled LoRA - required by the two-stage pipeline implementations that run the full model in stage 1 (TI2Vid two-stage / HQ, Keyframe, A2Vid; not DistilledPipeline, DFRPipeline, ICLoraPipeline, or DubItPipeline)

Detailing IC-LoRA - required by DFRPipeline's refinement stage (--detailing-lora). It lives in its own repository, LTX-2.5-22b-IC-LoRA-Pixel-Spatial-Upscaler

Duration Head - optional; lets you omit --num-frames and have the clip length predicted from the prompt

Legacy: LTX-2.3

Every pipeline in this repository also runs on LTX-2.3. Its checkpoints are single files bundling the transformer, VAEs and text projection, with the Gemma 3 text encoder downloaded separately. Files are not interchangeable between the two models, and a LoRA only works with the model it was trained on.

See LTX-2.3 models for the full list.

Available Pipelines

⚡ Optimization Tips

✍️ Prompting for LTX-2

When writing prompts, focus on detailed, chronological descriptions of actions and scenes. Include specific movements, appearances, camera angles, and environmental details - all in a single flowing paragraph. Start directly with the action, and keep descriptions literal and precise. Think like a cinematographer describing a shot list. Keep within 200 words. For best results, build your prompts using this structure:

For additional guidance on writing a prompt please refer to https://ltx.io/blog/prompting-guide-for-ltx-2

Automatic Prompt Enhancement

LTX-2 pipelines support automatic prompt enhancement via an enhance_prompt parameter.

🔌 ComfyUI Integration

To use our model with ComfyUI, please follow the instructions at https://github.com/Lightricks/ComfyUI-LTXVideo/.

📦 Packages

This repository is organized as a monorepo with three main packages:

Each package has its own README and documentation. See the Documentation section below.

📚 Documentation

Each package includes compre

LTX-2 (Lightricks/LTX-2)

Searching Database…

9.8K ·GitHub
Что это такое?Официальный Python-пакет для LTX-2 — аудиовидеомодели-фундамента от Lightricks: одна модель на базе DiT, которая генерирует видео со синхронизированным звуком из текста или картинки, в нескольких режимах качества и скорости.
Это библиотека для программирования, CLI-утилита или сами веса модели?Это Python-монорепозиторий: ltx-core (внутренности модели), ltx-pipelines (готовые пайплайны генерации) и ltx-trainer (дообучение). Веса модели скачиваются отдельно с Hugging Face, около 66 ГиБ.
Как запустить это у себя?Склонируйте репозиторий, установите зависимости, затем скачайте компоненты модели через Hugging Face CLI. Репозиторий закрытый: нужно принять условия использования модели и войти с Read-токеном, у которого есть права 'read gated repos'.
Можно ли смешивать чекпойнты или LoRA между LTX-2.3 и LTX-2.5?Нет — файлы этих двух моделей не взаимозаменяемы, а LoRA работает только с той моделью, на которой обучалась. LTX-2.5 — рекомендуемая модель, именно её использует Quick Start.
Какое железо нужно, чтобы это запустить?По-настоящему нужна видеокарта NVIDIA с CUDA — быстрый VAE-бэкенд natten работает только на Linux + CUDA; на Windows и macOS декодирование автоматически переключается на Triton или eager. Если мало видеопамяти: --quantization fp8-cast плюс --offload cpu или disk.
Чем отличается DistilledPipeline от DFR?DistilledPipeline — быстрый стартовый вариант (8 шагов на этапе 1, 4 шага на этапе 2). DFR — путь для продакшн-качества: тот же дистиллированный трансформер плюс проход детализации IC-LoRA, так что готовьтесь к более долгой работе и большему расходу видеопамяти.
Что он умеет, кроме text-to-video?Image-to-video, video-to-video и HDR-преобразования видео, интерполяцию ключевых кадров, генерацию видео из аудио, пересъёмку (retakes) конкретного временного участка, а также Dub-It — переозвучку диалога с сохранением голоса говорящего и движений губ.
Какое разрешение и частоту кадров он выдаёт?По умолчанию 1024×1536 при 24 fps; UHD 4K — это --width 3840 --height 2176 (не 2160). Больше fps требует временного апскейлинга (1 или 2 прохода), а для него нужна отдельная модель temporal upscaler.
Поддерживаются ли HDR-процессы?Да. Стандартные пайплайны принимают EXR-кадры и папки с EXR-кадрами с --hdr SRGBLINEAR, ACESCG или ACESCCT и умеют записывать EXR-кадры в half-float плюс мастер в BT.2020/HLG.
Как правильно писать промпты для него?Как раскадровку у оператора: один связный абзац до 200 слов — сначала главное действие, затем движения, внешность, ракурсы камеры, свет и внезапные изменения в хронологическом порядке. Пайплайны могут ещё и автоматически улучшать промпт через параметр enhanceprompt.
Можно ли дообучить его на своих видео?Да — пакет ltx-trainer поддерживает LoRA, полное дообучение и обучение IC-LoRA.
Можно ли использовать LTX-2 внутри ComfyUI?Да, есть официальная интеграция с ComfyUI; в README есть ссылка на инструкции по настройке.
Creator
Lightricks
Size
1.9 MB
Stars
9.8K
Age
9mo
Commits · 90 Days