Commit Graph

19 Commits

Author SHA1 Message Date
indigo a598f89d99 Fix ltx-trainer ruff target-version and a hidden lint finding
The [tool.ruff] target-version was accidentally set to the package version
"1.1.7", which made ruff fail to parse the whole package's pyproject and
silently skip linting. Set it to "py310" to match requires-python >=3.10.

With ruff working again it flagged a too-many-branches finding in the Phase 3
SCAIL wiring: extract the driving + mask-channel loops from _process_modality
into a new _apply_scail_conditions helper. Behavior is unchanged (Phase 3 CPU
verification still passes); full `ruff check .` on the trainer now passes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 21:00:45 +08:00
indigo e03cc62548 Add SCAIL-2 training integration (Phase 3, ltx-trainer FlexibleStrategy)
Wire SCAIL-2 driving + in-context mask conditioning into the trainer via the
unified FlexibleStrategy, so the widened patchify_proj (Phase 2) can be trained.

- flexible.py: new DrivingConditionConfig (driving-latent concat with a RoPE
  width offset ΔW) and MaskChannelsConditionConfig (semantic masks -> per-token
  channels), added to the condition union and get_data_sources. Driving is
  prepended (cond-first, target stays at the tail for loss slicing); mask
  channels are written onto the driving tokens via Modality.cond_channels,
  reusing ltx-core encode_mask_channels. The noisy target keeps a zero mask.
- model_loader.load_transformer gains mask_conditioning_channels, widening the
  video patchify_proj with zero-init columns via a new live-module helper
  (widen_module_patchify_proj_for_mask_channels). ModelConfig exposes the field.
- trainer unfreezes patchify_proj in LoRA mode when mask channels are active
  (the new input columns are new base params LoRA cannot reach).
- configs/scail_animation_lora.yaml plus README / training-modes table rows.

Verified on CPU (verify_phase3_trainer.py): config round-trips, prepare_training
_inputs builds cond_channels [B,T,56] with the mask on the driving tokens, a tiny
widened model forwards and compute_loss returns a finite [B] loss, and the widen
helper is output-preserving at zero init. Real training needs Linux+GPU+checkpoint;
dataset preprocessing (driving latents + semantic masks) and validation-runner
wiring are left for later.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 10:09:40 +08:00
github-actions[bot] 63fd9a4f86 Automated PR - 2026-07-07 2026-07-07 16:57:50 +00:00
github-actions[bot] f4b06fb977 Automated PR - 2026-06-17 2026-06-17 14:21:07 +00:00
github-actions[bot] fe94199e5d Automated PR - 2026-05-28 2026-05-28 15:39:26 +00:00
github-actions[bot] 203d4842d4 Automated PR - 2026-05-28 2026-05-28 14:26:15 +00:00
github-actions[bot] 7df34dfa83 Automated PR - 2026-05-11 2026-05-11 13:14:05 +00:00
github-actions[bot] b604d3fab3 Automated PR - 2026-04-23 2026-04-23 12:43:54 +00:00
github-actions[bot] d887bbd1e0 Automated PR - 2026-04-13 2026-04-13 14:29:35 +00:00
github-actions[bot] f4d0c1ec0e Automated PR - 2026-03-30 2026-03-30 17:59:34 +00:00
sync-bot d230aec5cd Automated PR - 2026-03-05 2026-03-05 15:47:20 +00:00
sync-bot 822ce3c4b1 Automated PR - 2026-03-04 2026-03-04 19:34:46 +00:00
sync-bot 4dbd99e628 Automated PR - 2026-02-09 2026-02-09 12:03:47 +00:00
sync-bot ca1623ad2a Automated PR - 2026-01-29 2026-01-29 18:42:17 +00:00
sync-bot 310103a53e Automated PR - 2026-01-15 2026-01-15 19:19:42 +00:00
sync-bot a519c7c8f6 Automated PR - 2026-01-13 2026-01-13 13:09:02 +00:00
sync-bot e5a15a4777 Automated PR - 2026-01-12 2026-01-12 14:14:33 +00:00
sync-bot ac560b4775 Automated PR - 2026-01-08 2026-01-08 15:29:32 +00:00
sync-bot 9ce438b353 Automated PR - 2026-01-05 2026-01-05 20:10:38 +00:00