Skip to content

LTX-2.5 ships with NO checkpoint pin: docs/USAGE.md names six bare file names, no repo, no revision, no sha256 #1048

Description

@localai-bot

AGENTS.md §"Say which weights, and from where" requires every ported model to
document the checkpoints it was built and gated against in docs/USAGE.md: file
name, size, and the exact HuggingFace repo and revision, grouped by arm, with
a sha256 for a quantized artifact and the refused arms named beside them. A repo
id alone is not a pin, because checkpoints get re-quantized in place under an
unchanged name.

LTX-2.5 has no such table anywhere in docs/USAGE.md. Every LTX-2.5 recipe
in that file names bare .safetensors file names and nothing else. Measured on
origin/main at d1b0ea3a8:

line name repo revision sha256
663 ltx-2.5-22b-distilled-fp8.safetensors
664 ltx-2.5-transformer-config.json
666 ltx-2.5-video-vae-conv-bf16.safetensors
667 ltx-2.5-audio-vae-bf16.safetensors
668 ltx-2.5-latent-spatial-upscaler-x2-bf16-1.0.safetensors
670 ltx-2.5-gemma4-text-config.json
2183-2188 the same five, on the server recipe

grep -n sha256 docs/USAGE.md returns two checkpoint hashes, and both belong to
MiniMax-Music3 (:3127, :3269). MiniMax-H3 (:1950-1993) and MiniMax-Music3
(:3123-3149) each carry a full repo + revision + sha256 table. LTX-2.5, which
is the larger campaign, carries none.

This is not a request to invent one. No LTX-2.5 row in this campaign claims a
render on real weights — dgx.casa is down and every LTX-2.5 gate runs against a
reduced fixture — so there is no checkpoint any of them was gated against to pin.
The obligation this issue owns is to run the real-weights render and then record
what it ran on, in one change: repo, revision, size, sha256, per arm, with the
refused arms named.

Two smaller things fall out of the same gap and should be fixed by the same
change rather than separately:

  • The text-to-audio recipe added by LTX-2.5 text-to-audio (T2AOneStagePipeline) is absent: the DiT refuses a one-stream call, and enabled=false is NOT the same shape as video=None #1005 names ltx-2.5-dit.safetensors
    (docs/USAGE.md:853), a file name that appears nowhere else in the tree. Every
    other LTX-2.5 recipe names ltx-2.5-22b-distilled-fp8.safetensors together
    with the --dit-config its missing __metadata__ requires. The same recipe's
    gemma4-12b-with-proj.safetensors and gemma4.json are likewise short forms
    of names spelled in full elsewhere. A reader cannot tell a placeholder from a
    real artifact, which is exactly what the pin exists to prevent.
  • Whether the ltx2-gen text-to-audio arm actually runs without --dit-config
    on the shipped FP8 transformer is unverified. docs/USAGE.md:655-660 says the
    loader refuses that checkpoint without one.

Found while repairing the fresh review of #1039 on row/LTX25-T2A-ONE-STAGE
(PR #1032). Recorded rather than fixed there, because fixing it needs a GPU and a
real checkpoint, and neither is available on that branch. Owner: #644, the
LTX-2.5 full-port row that already owns "prove the prompted path on real
weights"; listed under ## Owed in
.agents/specs/ltx25-t2a-one-stage.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions