Skip to content

LTX-2.3 22B Video to Video Trainer

Integrate

Model id ltx23-v2v-trainer
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/ltx23-v2v-trainer?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "training_data_url": "https://example.com/your-file.zip"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

This request: $27.00 27,000 API credits Run it on this page

Get API key
Lightricks Training 1–60 s #ltx2-video#fine-tuning#video-to-video

Trains an LTX-2.3 22B LoRA for video transformation or video-conditioned generation from reference videos

Lightricks · File

Your first result goes here

Build a request below and run it with your API key. Outputs are copied to our storage, kept forever or 7 days for free.

Build a request

Controls are generated from the model schema. The code and the price update as you change them.

resolution default medium

Training resolution. Increasing the resolution raises memory requirements.

aspect_ratio default 1:1

Training aspect ratio.

•required

ZIP archive URL for a dataset containing exclusively images or exclusively videos; mixed media datasets are unsupported. Aim for 10 files or more, preferably a larger collection. Accepted extensions are .png, .jpg, .jpeg for images and .mp4, .mov, .avi, .mkv for videos. Optional caption text files may accompany the media, with each caption file named to match its associated media file.

default 2000

Total count of training steps.

Advanced validation_negative_prompt · rank · validation_resolution · validation_aspect_ratio · trigger_phrase · learning_rate · number_of_frames · frame_rate · split_input_duration_threshold · first_frame_conditioning_p · validation_number_of_frames · validation_frame_rate · stg_scale · auto_scale_input · split_input_into_scenes · debug_dataset · validation
default worst quality, incons...

Negative prompt applied during validation.

rank default 32

LoRA adaptation rank, trading increased memory consumption for greater capacity as the setting rises.

validation_resolution default high

Resolution used during validation.

validation_aspect_ratio default 1:1

Aspect ratio used during validation.

default

LoRA style activation phrase, inserted at the start of captions during training.

default 0.0002

Optimization learning rate, balancing a possible speedup in training against the risk of overfitting when increased.

default 89

Frame count for each training sample. Dividing the count by 8 must leave a remainder of 1; examples include 1, 9, 17, 25, 33, 41, 49, 57, 65, 73, 81, 89, 97.

default 25

Target video frame rate, measured in frames per second.

default 30

Scene-splitting trigger expressed as a duration in seconds: only videos longer than the threshold are split.

default 0.1

Favor video-to-video transformation by reducing how often training uses first-frame conditioning; this value sets that probability.

default 89

Frame count for each validation video.

default 25

Target validation video frame rate, measured in frames per second.

default 1

Spatio-Temporal Guidance (STG) scale, with 1.0 recommended and 0.0 turning STG off.

default []

Validation input list containing prompts paired with reference videos.

POST /run/ltx23-v2v-trainer?wait=20 quote → $27.00
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/ltx23-v2v-trainer?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "training_data_url": "https://example.com/your-file.zip"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Run this request

Your key stays in this browser: it is sent only to the Doitong API and saved (localStorage) only if you tick Remember. Get an API key

About LTX-2.3 22B Video to Video Trainer

Trains a LoRA on the LTX-2.3 22B model for video transformation, using a zip of videos or images (mp4, mov, avi, mkv, png, jpg, jpeg) with at least about 10 files recommended. `number_of_steps` goes from 1 to 20000 (default 2000), and `frame_rate` defaults to 25. `first_frame_conditioning_p` defaults to 0.1. Validation takes up to 2 prompts with reference videos.

Parameters

NameType DefaultAllowed Description
training_data_urlrequired
Typestring
ZIP archive URL for a dataset containing exclusively images or exclusively videos; mixed media datasets are unsupported. Aim for 10 files or more, preferably a larger collection. Accepted extensions are .png, .jpg, .jpeg for images and .mp4, .mov, .avi, .mkv for videos. Optional caption text files may accompany the media, with each caption file named to match its associated media file.
rankoptional
Typeenum
Default32
8163264128
LoRA adaptation rank, trading increased memory consumption for greater capacity as the setting rises.
number_of_stepsoptional
Typeinteger
Default2000
1 – 20,000
Total count of training steps.
learning_rateoptional
Typenumber
Default0.0002
0.000001 – 1
Optimization learning rate, balancing a possible speedup in training against the risk of overfitting when increased.
number_of_framesoptional
Typeinteger
Default89
9 – 121
Frame count for each training sample. Dividing the count by 8 must leave a remainder of 1; examples include 1, 9, 17, 25, 33, 41, 49, 57, 65, 73, 81, 89, 97.
frame_rateoptional
Typeinteger
Default25
8 – 60
Target video frame rate, measured in frames per second.
resolutionoptional
Typeenum
Defaultmedium
lowmediumhigh
Training resolution. Increasing the resolution raises memory requirements.
aspect_ratiooptional
Typeenum
Default1:1
16:91:19:16
Training aspect ratio.
trigger_phraseoptional
Typestring
Default
LoRA style activation phrase, inserted at the start of captions during training.
auto_scale_inputoptional
Typeboolean
Defaultfalse
Automatic video adjustment to match the requested FPS and frame count when enabled; image datasets remain unchanged.
split_input_into_scenesoptional
Typeboolean
Defaulttrue
Scene splitting for videos exceeding a duration threshold, enabled when true.
split_input_duration_thresholdoptional
Typenumber
Default30
1 – 60
Scene-splitting trigger expressed as a duration in seconds: only videos longer than the threshold are split.
debug_datasetoptional
Typeboolean
Defaultfalse
Preprocessing inspection mode for checking videos, images, and captions before a full training run. Enabling it makes the trainer return the processed training dataset in a downloadable archive for manual review.
first_frame_conditioning_poptional
Typenumber
Default0.1
0 – 1
Favor video-to-video transformation by reducing how often training uses first-frame conditioning; this value sets that probability.
validationoptional
Typeobject[]
Default[]
≤ 2 items
Validation input list containing prompts paired with reference videos.
validation[].promptrequired
Typestring
Prompt used during validation.
validation[].reference_video_urlrequired
Typeurl · video
≥ 1 characters
Supply the video to be transformed during IC-LoRA validation via its URL.
validation_negative_promptoptional
Typestring
Defaultworst quality, inconsistent motion, blurry, jittery, distorted
Negative prompt applied during validation.
validation_number_of_framesoptional
Typeinteger
Default89
9 – 121
Frame count for each validation video.
validation_frame_rateoptional
Typeinteger
Default25
8 – 60
Target validation video frame rate, measured in frames per second.
validation_resolutionoptional
Typeenum
Defaulthigh
lowmediumhigh
Resolution used during validation.
validation_aspect_ratiooptional
Typeenum
Default1:1
16:91:19:16
Aspect ratio used during validation.
stg_scaleoptional
Typenumber
Default1
0 – 3
Spatio-Temporal Guidance (STG) scale, with 1.0 recommended and 0.0 turning STG off.
required

Output

GET /requests/req_8k2m4q7x1z9c3v5b6n0p2r4t
{
  "id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
  "object": "request",
  "model": "ltx23-v2v-trainer",
  "status": "succeeded",
  "created_at": "2026-10-20T12:00:00Z",
  "started_at": "2026-10-20T12:00:02Z",
  "completed_at": "2026-10-20T12:00:09Z",
  "queue_position": null,
  "cost": {
    "credits": 27000,
    "usd": "27.00",
    "charged": 27000,
    "refunded": 0
  },
  "input": {
    "training_data_url": "https://example.com/your-file.zip"
  },
  "output": {
    "video": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
      "content_type": "image/jpeg",
      "file_name": "0-output.jpeg",
      "file_size": 1843200
    },
    "lora_file": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
      "content_type": "image/jpeg",
      "file_name": "0-output.jpeg",
      "file_size": 1843200
    },
    "config_file": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
      "content_type": "image/jpeg",
      "file_name": "0-output.jpeg",
      "file_size": 1843200
    },
    "debug_dataset": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
      "content_type": "image/jpeg",
      "file_name": "0-output.jpeg",
      "file_size": 1843200
    }
  },
  "outputs": [
    {
      "type": "file",
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
      "content_type": "image/jpeg",
      "file_size": 1843200,
      "stored": true
    }
  ],
  "error": null,
  "metrics": {
    "inference_seconds": 6.8
  },
  "urls": {
    "self": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
    "cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
  }
}
Your files, your choiceEvery outputs[].url is a copy on our storage: kept forever (paid per GB-month) or 7 days for free, by your account setting or ?storage=.
Same shape on every modeltype, url, content_type, width, height and duration, for images, video and audio alike. output is the model’s own result object.
Fields of output
video
object {url, content_type, file_name, file_size} | nullURL for any available validation videos, shown alongside their reference videos.
lora_file
object {url, content_type, file_name, file_size}URL for the trained IC-LoRA weight file in .safetensors format.
config_file
object {url, content_type, file_name, file_size}Configuration for inference endpoint setup.
debug_dataset
object {url, content_type, file_name, file_size} | nullDownloadable debug archive, available only for inputs that enable `debug_dataset`; its training-data contents have been preprocessed and include videos in decoded form.

For AI agents: this page as Markdown is at https://doitong.com/developers/models/ltx23-v2v-trainer.md. All models and guides: https://doitong.com/developers/llms.txt