# LTX-2 > Text-to-video and image-to-video serving ## Summary - Vendor: Lightricks - Model: `Lightricks/LTX-2` - Task: Text-to-video generation and image-to-video generation - Mode: Online serving with the OpenAI-compatible video API - Maintainer: Community ## When to use this recipe Use this recipe when you want to deploy the base `Lightricks/LTX-2` model for both text-to-video and image-to-video generation. The same model ID is used for both tasks; switch the pipeline class with `--model-class-name` depending on whether you want T2V or I2V. ## References - Model: - User guide: [`docs/user_guide/examples/online_serving/text_to_video.md`](../../docs/user_guide/examples/online_serving/text_to_video.md) - Example guide: [`examples/online_serving/text_to_video/README.md`](../../examples/online_serving/text_to_video/README.md) [`examples/online_serving/image_to_video/README.md`](../../examples/online_serving/image_to_video/README.md) ## Hardware Support ## GPU ### 1x H200 141GB (Text-to-Video) #### Environment - OS: Ubuntu 22.04.5 LTS - Python: 3.12+ - Driver / runtime: NVIDIA CUDA environment with H200 141GB GPU - vLLM version: Match the repository requirements from your current checkout - vLLM-Omni version or commit: Use the commit you are deploying from #### Command ```bash vllm serve Lightricks/LTX-2 \ --omni \ --model-class-name LTX2Pipeline ``` #### Verification ```bash curl http://localhost:8000/health curl -X POST http://localhost:8000/v1/videos \ -F "prompt=A cinematic close-up of ocean waves at golden hour." \ -F "negative_prompt=worst quality, inconsistent motion, blurry, jittery, distorted" \ -F "width=512" \ -F "height=768" \ -F "num_frames=121" \ -F "fps=24" \ -F "num_inference_steps=40" \ -F "guidance_scale=4.0" \ -o ltx2_t2v_h200.mp4 ``` #### Notes - Memory usage: Model loads at ~73.5GB, peaks at ~73.5 GiB during inference. - Key flags: - `--model-class-name LTX2Pipeline` selects the text-to-video pipeline explicitly. - Known limitations: - This recipe is tested on 1x H200 validation; add measured latency and VRAM after running it on your target machine. ### 1x H200 141GB (Image-to-Video) #### Environment - OS: Ubuntu 22.04.5 LTS - Python: 3.12+ - Driver / runtime: NVIDIA CUDA environment with H200 141GB GPU - vLLM version: Match the repository requirements from your current checkout - vLLM-Omni version or commit: Use the commit you are deploying from #### Command ```bash vllm serve Lightricks/LTX-2 \ --omni \ --model-class-name LTX2ImageToVideoPipeline ``` #### Verification ```bash curl http://localhost:8000/health curl -X POST http://localhost:8000/v1/videos/sync \ -F "prompt=A plush toy astronaut gently waving while the camera slowly pushes in." \ -F "input_reference=@/absolute/path/to/reference.png" \ -F "width=512" \ -F "height=768" \ -F "num_frames=121" \ -F "fps=24" \ -F "num_inference_steps=40" \ -F "guidance_scale=4.0" \ -o ltx2_i2v_h200.mp4 ``` #### Notes - Memory usage: Model loads at ~73.5GB, peaks at ~73.5 GiB during inference. - Key flags: - `--model-class-name LTX2ImageToVideoPipeline` switches the same `Lightricks/LTX-2` weights into image-to-video mode. - `input_reference=@...` uploads the reference image directly - Known limitations: - Use `image_reference` when you want to pass a URL or JSON-safe image reference instead of uploading a file. - Do not send `input_reference` and `image_reference` in the same request. - This recipe is tested on 1x H200 validation; add measured latency and VRAM after running it on your target machine.