[refactor]: group model-family settings under pipeline.model
pipeline.model is a tagged union: a mapping with exactly one key, which names the model family (ltx2, minimax_h3, longcat, or generic) and selects that family's options class. The former sibling sections pipeline.ltx2, pipeline.minimax_h3, and pipeline.longcat, and the DiT/VAE architecture override dicts pipeline.dit and pipeline.vae, live inside the family block. The parser implements tagged unions as a general mechanism (a dataclass with a TAGS table); the family is readable as pipeline.model.family. Resolution validates the tag against the family that the registry chose for model_path (validate_model_family raises and names the registry class and the right block) and fills the family's empty block when the input has none (fill_model_family), so readers never see None. Family-only fills and derivations (the MiniMax-H3 parallel-VAE environment variables, the LTX-2 tile-size derivation and refine preset copy, the LongCat BSA mirrors) run only for their family. Against the3f6893a0goldens every PipelineConfig is identical and no other field differs beyond the allowed categories; family-only settings are no longer decided on models of another family. LingBot-Video reads its refiner switch from pipeline.preset_overrides.refine.enabled and loads the refiner by default when the checkpoint has one, as at3f6893a0. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CbSuTKA9oX4YsECdcBPAsX
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
a5aa64ab6b
commit
1ea7278c00
@@ -60,7 +60,7 @@ def basic_generation():
|
||||
"pin_cpu_memory": False,
|
||||
},
|
||||
},
|
||||
"pipeline": {"longcat": {"enable_bsa": False}},
|
||||
"pipeline": {"model": {"longcat": {"enable_bsa": False}}},
|
||||
})
|
||||
|
||||
output_path = "outputs_video/longcat_i2v_basic"
|
||||
@@ -113,7 +113,7 @@ def distill_refine_generation():
|
||||
},
|
||||
},
|
||||
"pipeline": {
|
||||
"longcat": {"enable_bsa": False},
|
||||
"model": {"longcat": {"enable_bsa": False}},
|
||||
"components": {
|
||||
"lora_path": "FastVideo/LongCat-Video-T2V-Distilled-LoRA",
|
||||
"lora_nickname": "distilled",
|
||||
@@ -171,11 +171,13 @@ def distill_refine_generation():
|
||||
},
|
||||
},
|
||||
"pipeline": {
|
||||
"longcat": {
|
||||
"enable_bsa": True,
|
||||
"bsa_sparsity": 0.875,
|
||||
"bsa_chunk_q": [4, 4, 4],
|
||||
"bsa_chunk_k": [4, 4, 4],
|
||||
"model": {
|
||||
"longcat": {
|
||||
"enable_bsa": True,
|
||||
"bsa_sparsity": 0.875,
|
||||
"bsa_chunk_q": [4, 4, 4],
|
||||
"bsa_chunk_k": [4, 4, 4],
|
||||
},
|
||||
},
|
||||
"components": {
|
||||
"lora_path": "FastVideo/LongCat-Video-T2V-Refinement-LoRA",
|
||||
|
||||
Reference in New Issue
Block a user