Image-to-Video
Diffusers
LTX.io
text-to-video
video-to-video
image-text-to-video
audio-to-video
text-to-audio
video-to-audio
audio-to-audio
text-to-audio-video
image-to-audio-video
image-text-to-audio-video
ltx-2
ltx-video
ltxv
lightricks
ltx-2.3
Eval Results
Instructions to use Lightricks/LTX-2.3 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Diffusers
How to use Lightricks/LTX-2.3 with Diffusers:
pip install -U diffusers transformers accelerate
import torch from diffusers import DiffusionPipeline from diffusers.utils import load_image, export_to_video # switch to "mps" for apple devices pipe = DiffusionPipeline.from_pretrained("Lightricks/LTX-2.3", dtype=torch.bfloat16, device_map="cuda") pipe.to("cuda") prompt = "A man with short gray hair plays a red electric guitar." image = load_image( "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/guitar-man.png" ) output = pipe(image=image, prompt=prompt).frames[0] export_to_video(output, "output.mp4") - LTX.io
How to use Lightricks/LTX-2.3 with LTX.io:
# Install the LTX-2 pipelines git clone https://github.com/Lightricks/LTX-2.git cd LTX-2 uv sync --frozen
# Download the weights from this repo, plus the Gemma text encoder hf download Lightricks/LTX-2.3 --local-dir models/LTX-2.3 hf download google/gemma-3-12b-it-qat-q4_0-unquantized --local-dir models/gemma-3-12b
# Fast pipeline (distilled model, no distilled LoRA needed) uv run python -m ltx_pipelines.distilled \ --distilled-checkpoint-path models/LTX-2.3/<distilled-checkpoint>.safetensors \ --spatial-upsampler-path models/LTX-2.3/<spatial-upsampler>.safetensors \ --gemma-root models/gemma-3-12b \ --prompt "A beautiful sunset over the ocean" \ --output-path output.mp4 # For image-to-video, add: --image path/to/image.jpg 0 0.8# HQ pipeline (two-stage, higher quality) uv run python -m ltx_pipelines.ti2vid_two_stages_hq \ --checkpoint-path models/LTX-2.3/<checkpoint>.safetensors \ --distilled-lora models/LTX-2.3/<distilled-lora>.safetensors 0.8 \ --spatial-upsampler-path models/LTX-2.3/<spatial-upsampler>.safetensors \ --gemma-root models/gemma-3-12b \ --prompt "A beautiful sunset over the ocean" \ --output-path output.mp4 # For image-to-video, add: --image path/to/image.jpg 0 0.8 - Notebooks
- Google Colab
- Kaggle
TX-2.3 model fails to load with Diffusers - Missing model_index.json
#20
by sachin915t - opened
Description
The newly released Lightricks/LTX-2.3 model cannot be loaded using DiffusionPipeline.from_pretrained() because the repository structure lacks the required model_index.json file that Diffusers expects.
Error Reproduction
import torch
from diffusers import DiffusionPipeline
pipe = DiffusionPipeline.from_pretrained(
"Lightricks/LTX-2.3",
torch_dtype=torch.bfloat16
)
Expected Behavior
Model should load successfully like other LTX-Video models (Lightricks/LTX-Video, Lightricks/LTX-Video-0.9.7-dev).
Actual Behavior
RemoteEntryNotFoundError: 404 Client Error.
Entry Not Found for url: https://huggingface.co/Lightricks/LTX-2.3/resolve/main/model_index.json
Environment
- Diffusers version: 0.32.0
- Python version: 3.12
- Platform: Linux (Kaggle Notebook)
Model Repository Structure
The LTX-2.3 repo contains raw .safetensors files instead of Diffusers-compatible structure:
ltx-2.3-22b-dev.safetensors (46.1 GB)
ltx-2.3-22b-distilled.safetensors (46.1 GB)
ltx-2.3-22b-distilled-lora-384.safetensors (7.61 GB)
... (no model_index.json)
Possible Solutions
- Add Diffusers-compatible
model_index.jsonto the repository - Provide
from_single_file()loading support in Diffusers - Update documentation to clarify LTX-2.3 requires the official LTX-2 codebase instead of Diffusers
Additional Context
- The model card mentions Diffusers support but the repository structure doesn't match
- Other LTX-Video versions (0.9.5, 0.9.7) work correctly with Diffusers
- Model was released ~January 2026
Labels: bug, model loading, LTX-Video
+1
Please update this, Lightricks.