核心概念与工作流(1/3)
Use LTX-2.3 in ComfyUI with native workflows for text-to-video, image-to-video, FLF2V, audio-driven video, IC-LoRA control, and ID-LoRA personalization.
LTX-2.3 is the latest evolution of Lightricks' open-source audio-video generation model, now natively supported in ComfyUI. Building on LTX-2, this release delivers major quality improvements across fine details, portrait video, audio quality, image-to-video consistency, prompt understanding, and text rendering.
ComfyUI ships with six native workflows for LTX-2.3, each designed for a specific generation mode:
- Text-to-Video (T2V): Generate videos from text prompts
- Image-to-Video (I2V): Generate videos from an input image
- FLF2V: Interpolate between a start and end image
- Image-Audio-to-Video (IA2V): Generate lip-synced videos from an image and audio
- IC-LoRA Union Control: Control video generation with depth, pose, or edge guidance
-
ID-LoRA: Generate personalized videos with synchronized audio from a reference image and audio clip
Make sure your ComfyUI is updated.
Workflows in this guide can be found in the Workflow Templates. If you can't find them in the template, your ComfyUI may be outdated.
If nodes are missing when loading a workflow, possible reasons:
- You are not using the latest ComfyUI version (Nightly version)
-
Some nodes failed to import at startup
-
Cloud will update after ComfyUI stable release.
So, if you find any core node missing in this document, it might be because the new core nodes have not yet been released in the latest stable version. Please wait for the next stable release.
Key features
- Finer details: New latent space and updated VAE for sharper textures, cleaner edges, and more precise visuals
- 9:16 Portrait support: Greatly improved quality for vertical portrait videos
- Better audio: Cleaner sound with reduced noise and enhanced dialogue
- Improved image-to-video: More consistent motion and fewer glitches
- Smarter prompt understanding: Improved text encoder for more accurate interpretation
- Native ComfyUI support: All workflows are built-in, no custom nodes required
Getting started
LTX-2.3 is natively supported in ComfyUI. To get started:
- Update ComfyUI to the latest version
- Go to Template Library > Video > choose any LTX-2.3 workflow
- Follow the pop-up to download models and run the workflow
ComfyUI Native Workflows
LTX-2.3 Text to Video (T2V)
Generate videos from text prompts with improved prompt understanding and text rendering.
<video />
LTX-2.3 Text to Video
Generate videos from text prompts with improved prompt understanding and text rendering.
<img alt="LTX-2.3 Text to Video ( workflow preview" />
Open in Comfy Cloud
Download JSON or search "LTX-2.3 T2V" in Template Library
Model downloads
Place in <code>ComfyUI/models/checkpoints/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/text\_encoders/</code>
Place in <code>ComfyUI/models/latent\_upscale\_models/</code>
Model storage
ComfyUI/
├── 📂 models/
│ ├── 📂 checkpoints/
│ │ └── ltx-2.3-22b-dev-fp8.safetensors
│ ├── 📂 loras/
│ │ ├── ltx_2.3_22b_distilled_1.1_lora_dynamic_fro09_avg_rank_111_bf16.safetensors
│ │ └── gemma-3-12b-it-abliterated_lora_rank64_bf16.safetensors
│ ├── 📂 text_encoders/
│ │ └── gemma_3_12B_it_fp4_mixed.safetensors
│ └── 📂 latent_upscale_models/
│ └── ltx-2.3-spatial-upscaler-x2-1.1.safetensors
Prompting tips
- Core Actions: Describe events and actions as they occur over time
- Visual Details: Describe all visual details you want to appear in the video
- Audio: Describe sounds and dialogue needed for the scene
LTX-2.3 Image to Video (I2V)
Generate videos from an input image with more consistent motion and smoother animations.
<video />
LTX-2.3 Image to Video
Generate videos from an input image with improved motion consistency.
<img alt="LTX-2.3 Image to Video ( workflow preview" />
Open in Comfy Cloud
Download JSON or search "LTX-2.3 I2V" in Template Library
Download the default input image, or use your own image.
Model downloads
The I2V workflow uses the same model set as Text-to-Video.
Place in <code>ComfyUI/models/checkpoints/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/text\_encoders/</code>
Place in <code>ComfyUI/models/latent\_upscale\_models/</code>
Model storage
ComfyUI/
├── 📂 models/
│ ├── 📂 checkpoints/
│ │ └── ltx-2.3-22b-dev-fp8.safetensors
│ ├── 📂 loras/
│ │ ├── ltx_2.3_22b_distilled_1.1_lora_dynamic_fro09_avg_rank_111_bf16.safetensors
│ │ └── gemma-3-12b-it-abliterated_lora_rank64_bf16.safetensors
│ ├── 📂 text_encoders/
│ │ └── gemma_3_12B_it_fp4_mixed.safetensors
│ └── 📂 latent_upscale_models/
│ └── ltx-2.3-spatial-upscaler-x2-1.1.safetensors
LTX-2.3 FLF2V
Interpolate between a start image and an end image to generate a smooth video transition.
<video />
LTX-2.3 First-Last Frame to Video
Interpolate between a start and end image.
<img alt="LTX-2.3 First-Last Frame to Video ( workflow preview" />
Open in Comfy Cloud
Download JSON or search "LTX-2.3 FLF2V" in Template Library
First frame of the video.
Last frame of the video.
Model downloads
The FLF2V workflow uses the distilled checkpoint instead of the dev checkpoint.
Place in <code>ComfyUI/models/checkpoints/</code>
Place in <code>ComfyUI/models/text\_encoders/</code>
Model storage
ComfyUI/
├── 📂 models/
│ ├── 📂 checkpoints/
│ │ └── ltx-2.3-22b-distilled-fp8.safetensors
│ └── 📂 text_encoders/
│ └── gemma_3_12B_it_fp4_mixed.safetensors
LTX-2.3 Image Audio to Video (IA2V)
Upload an image and an audio file to generate a high-quality video with synchronized lip movements.
<video />
LTX-2.3 Image and Audio to Video
Generate lip-synced videos from an image and audio.
<img alt="LTX-2.3 Image and Audio to Video ( workflow preview" />
Open in Comfy Cloud
Download JSON or search "LTX-2.3 IA2V" in Template Library
Reference image for the speaking character.
Audio track for lip synchronization.
Model downloads
The IA2V workflow uses the same model set as Text-to-Video.
Place in <code>ComfyUI/models/checkpoints/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/text\_encoders/</code>
Place in <code>ComfyUI/models/latent\_upscale\_models/</code>
Model storage
ComfyUI/
├── 📂 models/
│ ├── 📂 checkpoints/
│ │ └── ltx-2.3-22b-dev-fp8.safetensors
│ ├── 📂 loras/
│ │ ├── ltx_2.3_22b_distilled_1.1_lora_dynamic_fro09_avg_rank_111_bf16.safetensors
│ │ └── gemma-3-12b-it-abliterated_lora_rank64_bf16.safetensors
│ ├── 📂 text_encoders/
│ │ └── gemma_3_12B_it_fp4_mixed.safetensors
│ └── 📂 latent_upscale_models/
│ └── ltx-2.3-spatial-upscaler-x2-1.1.safetensors
LTX-2.3 IC-LoRA Union Control
Generate LTX-2.3 videos with IC-LoRA using aligned control inputs like depth, pose, or edges. IC-LoRA is an in-context LoRA trained on top of LTX-2.3 that applies structural guidance from a reference video. It accepts control signals from various preprocessors including depth maps, Canny edges, and pose skeletons. This workflow uses a subgraph for modular processing.

Open in Comfy Cloud
Download JSON or search "LTX-2.3 IC-LoRA" in Template Library
This workflow uses a Subgraph node for modular processing. Check out the Subgraph documentation to learn how to customize and extend the workflow.
Input materials
Driving video for control signal extraction.
Reference image for style and content.
Model downloads
Place in <code>ComfyUI/models/checkpoints/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/text\_encoders/</code>
Place in <code>ComfyUI/models/geometry\_estimation/</code>
Model storage
ComfyUI/
├── 📂 models/
│ ├── 📂 checkpoints/
│ │ └── ltx-2.3-22b-distilled-fp8.safetensors
│ ├── 📂 loras/
│ │ ├── ltx-2.3-22b-ic-lora-union-control-ref0.5.safetensors
│ │ └── gemma-3-12b-it-abliterated_lora_rank64_bf16.safetensors
│ ├── 📂 text_encoders/
│ │ └── gemma_3_12B_it_fp4_mixed.safetensors
│ └── 📂 geometry_estimation/
│ └── moge_2_vitl_normal_fp16.safetensors
Video editing with IC-LoRA
IC-LoRA weights are not limited to generation control. The Template Library includes ready-made LTX-2.3 IC-LoRA workflows for editing existing footage, and each one runs in Comfy Cloud or locally in ComfyUI. Community IC-LoRA checkpoints trained on top of LTX-2.3 (for example, the LTX2.3-ICEdit-Insight family) are also compatible with the native LTX-2.3 model.
Remove Subtitles from Video
Remove subtitles, captions, watermarks, or other text overlays from a video:
<img alt="LTX-2.3 Remove Subtitles workflow preview" />
Open in Comfy Cloud
Download JSON or search "Remove Subtitles" in Template Library
<details> <summary>Input materials</summary>
Download this sample input video to try the workflow:
Download sample input video
</details>
Remove Object from Video
Remove a specific object from the foreground of a video by describing it in the prompt:
<img alt="LTX-2.3 Remove Object workflow preview" />
Open in Comfy Cloud
Download JSON or search "Remove Object" in Template Library
<details> <summary>Input materials</summary>
Download this sample input video to try the workflow:
Download sample input video
</details>
Restore Archival Footage
Restore old or degraded archival footage:
<img alt="LTX-2.3 Restore Archival Footage workflow preview" />
Open in Comfy Cloud
Download JSON or search "Restore Archival" in Template Library
<details> <summary>Input materials</summary>
Download this sample input video to try the workflow:
Download sample input video
</details>
Video Outpainting
Expand a video in any direction using the LTX-2.3 Video Outpainting IC-LoRA:
<img alt="LTX-2.3 Video Outpainting workflow preview" />
Open in Comfy Cloud
Download JSON or search "Video Outpainting" in Template Library
<details> <summary>Input materials</summary>
Download this sample input video to try the workflow:
Download sample input video
</details>
Googly Eyes
Apply the Googlyeyes LTX-2.3 LoRA to an input video to give everyone in the frame googly eyes:
<img alt="LTX-2.3 Googly Eyes workflow preview" />
Open in Comfy Cloud
Download JSON or search "Googly Eyes" in Template Library
<details> <summary>Input materials</summary>
Download this sample input video to try the workflow:
Download sample input video
</details>
For community IC-LoRAs, place the editing LoRA in ComfyUI/models/loras/ and load it with a LoRA loader alongside the LTX-2.3 checkpoint, then run the workflow with your video as input and a prompt like:
Remove subtitles, captions, and related text occlusions from the video, restoring a clean and natural underlying image.
LTX-2.3 ID-LoRA
Generate personalized videos with synchronized audio from a text prompt, reference image, and short audio clip. Uses ID-LoRA to adapt a person's appearance and voice in a single generative model.
<video />
LTX-2.3 ID LoRA
Generate personalized videos with synchronized audio from a reference image and audio clip.
<img alt="LTX-2.3 ID LoRA ( workflow preview" />
Open in Comfy Cloud
Download JSON or search "LTX-2.3 ID-LoRA" in Template Library
Reference image for the character appearance.
Audio clip for voice cloning and lip sync.
Model downloads
Place in <code>ComfyUI/models/checkpoints/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/loras/</code>
Place in <code>ComfyUI/models/text\_encoders/</code>
Place in <code>ComfyUI/models/latent\_upscale\_models/</code>
Model storage
ComfyUI/
├── 📂 models/
│ ├── 📂 checkpoints/
│ │ └── ltx-2.3-22b-dev-fp8.safetensors
│ ├── 📂 loras/
│ │ ├── ltx_2.3_22b_distilled_1.1_lora_dynamic_fro09_avg_rank_111_bf16.safetensors
│ │ └── ltx-2.3-id-lora-talkvid-3k.safetensors
│ ├── 📂 text_encoders/
│ │ └── gemma_3_12B_it_fp4_mixed.safetensors
│ └── 📂 latent_upscale_models/
│ └── ltx-2.3-spatial-upscaler-x2-1.1.safetensors
Prompting tips
When writing prompts for LTX-2.3, focus on detailed, chronological descriptions of actions and scenes:
- Core Actions: Describe events and actions as they occur over time
- Visual Details: Describe all visual details you want to appear in the video
- Audio: Describe sounds and dialogue needed for the scene
Resources
Workflow JSON schema for the ComfyUI workflow file format (v1.0 plus legacy v0.4), covering nodes, links, groups, and version fields.
The workflow JSON is defined using JSON Schema. Changes to this schema will be discussed in the rfcs repo.
Version 1.0 (Latest)
{
"$ref": "#/definitions/ComfyWorkflow1_0",
"definitions": {
"ComfyWorkflow1_0": {
"type": "object",
"properties": {
"version": {
"type": "number",
"const": 1
},
"config": {
"anyOf": [
{
"anyOf": [
{
"not": {}
},
{
"type": "object",
"properties": {
"links_ontop": {
"type": "boolean"
},
"align_to_grid": {
"type": "boolean"
}
},
"additionalProperties": true
}
]
},
{
"type": "null"
}
]
},
"state": {
"type": "object",
"properties": {
"lastGroupid": {
"type": "number"
},
"lastNodeId": {
"type": "number"
},
"lastLinkId": {
"type": "number"
},
"lastRerouteId": {
"type": "number"
}
},
"additionalProperties": true
},
"groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"bounding": {
"type": "array",
"minItems": 4,
"maxItems": 4,
"items": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
]
},
"color": {
"type": "string"
},
"font_size": {
"type": "number"
},
"locked": {
"type": "boolean"
}
},
"required": [
"title",
"bounding"
],
"additionalProperties": true
}
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
]
},
"type": {
"type": "string"
},
"pos": {
"anyOf": [
{
"type": "object",
"properties": {
"0": {
"type": "number"
},
"1": {
"type": "number"
}
},
"required": [
"0",
"1"
],
"additionalProperties": true
},
{
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": [
{
"type": "number"
},
{
"type": "number"
}
]
}
]
},
"size": {
"anyOf": [
{
"type": "object",
"properties": {
"0": {
"type": "number"
},
"1": {
"type": "number"
}
},
"required": [
"0",
"1"
],
"additionalProperties": true
},
{
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": [
{
"type": "number"
},
{
"type": "number"
}
]
}
]
},
"flags": {
"type": "object",
"properties": {
"collapsed": {
"type": "boolean"
},
"pinned": {
"type": "boolean"
},
"allow_interaction": {
"type": "boolean"
},
"horizontal": {
"type": "boolean"
},
"skip_repeated_outputs": {
"type": "boolean"
}
},
"additionalProperties": true
},
"order": {
"type": "number"
},
"mode": {
"type": "number"
},
"inputs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"type": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "number"
}
]
},
"link": {
"type": [
"number",
"null"
]
},
"slot_index": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
]
}
},
"required": [
"name",
"type"
],
"additionalProperties": true
}
},
"outputs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"type": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "number"
}
]
},
"links": {
"anyOf": [
{
"type": "array",
"items": {
"type": "number"
}
},
{
"type": "null"
}
]
},
"slot_index": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
]
}
},
"required": [
"name",
"type"
],
"additionalProperties": true
}
},
"properties": {
"type": "object",
"properties": {
"Node name for S&R": {
"type": "string"
}
},
"additionalProperties": true
},
"widgets_values": {
"anyOf": [
{
"type": "array"
},
{
"type": "object",
"additionalProperties": {}
}
]
},
"color": {
"type": "string"
},
"bgcolor": {
"type": "string"
}
},
"required": [
"id",
"type",
"pos",
"size",
"flags",
"order",
"mode",
"properties"
],
"additionalProperties": true
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number"
},
"origin_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
]
},
"origin_slot": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
]
},
"target_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
]
},
"target_slot": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
]
},
"type": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "number"
}
]
},
"parentId": {
"type": "number"
}
},
"required": [
"id",
"origin_id",
"origin_slot",
"target_id",
"target_slot",
"type"
],
"additionalProperties": true
}
},
"reroutes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number"
},
"parentId": {
"type": "number"
},
"pos": {
"anyOf": [
{
"type": "object",
"properties": {
"0": {
"type": "number"
},
"1": {
"type": "number"
}
},
"required": [
"0",
"1"
],
"additionalProperties": true
},
{
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": [
{
"type": "number"
},
{
"type": "number"
}
]
}
]
},
"linkIds": {
"anyOf": [
{
"type": "array",
"items": {
"type": "number"
}
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"pos"
],
"additionalProperties": true
}
},
"extra": {
"anyOf": [
{
"anyOf": [
{
"not": {}
},
{
"type": "object",
"properties": {
"ds": {
"type": "object",
"properties": {
"scale": {
"type": "number"
},
"offset": {
"anyOf": [
{
"type": "object",
"properties": {
"0": {
"type": "number"
},
"1": {
"type": "number"
}
},
"required": [
"0",
"1"
],
"additionalProperties": true
},
{
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": [
{
"type": "number"
},
{
"type": "number"
}
]
}
]
}
},
"required": [
"scale",
"offset"
],
"additionalProperties": true
},
"info": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"author": {
"type": "string"
},
"description": {
"type": "string"
},
"version": {
"type": "string"
},
"created": {
"type": "string"
},
"modified": {
"type": "string"
},
"software": {
"type": "string"
}
},
"required": [
"name",
"author",
"description",
"version",
"created",
"modified",
"software"
],
"additionalProperties": true
},
"linkExtensions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number"
},
"parentId": {
"type": "number"
}
},
"required": [
"id",
"parentId"
],
"additionalProperties": true
}
},
"reroutes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number"
},
"parentId": {
"type": "number"
},
"pos": {
"anyOf": [
{
"type": "object",
"properties": {
"0": {
"type": "number"
},
"1": {
"type": "number"
}
},
"required": [
"0",
"1"
],
"additionalProperties": true
},
{
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": [
{
"type": "number"
},
{
"type": "number"
}
]
}
]
},
"linkIds": {
"anyOf": [
{
"type": "array",
"items": {
"type": "number"
}
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"pos"
],
"additionalProperties": true
}
}
},
"additionalProperties": true
}
]
},
{
"type": "null"
}
]
},
"models": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"hash": {
"type": "string"
},
"hash_type": {
"type": "string"
},
"directory": {
"type": "string"
}
},
"required": [
"name",
"url",
"directory"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"state",
"nodes"
],
"additionalProperties": true
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}
