JackyZhuo's picture
PhysEdit#299: three validated logical Wan2.2-I2V-A14B LoRA conditions
52215b1 verified
|
Raw
History Blame Contribute Delete
2.88 kB
# PAWBench A-09 ratio-control LoRA conditions (Issue #299)
Model staging surface for the A-09 model-level ratio-control case study
([PhysEdit#293](https://github.com/Andrew0613/PhysEdit/issues/293), training
execution issue [#299](https://github.com/Andrew0613/PhysEdit/issues/299)).
Lives under the `PhysEdit` org (public) by the same operator decision as the
companion data repo `PhysEdit/PAWBench-A09-Ratio-Control-Data`.
## What this repository contains
- `conditions/lora20|lora50|lora80/` — the **three formal matched
conditions**: Wan2.2-I2V-A14B LoRA adapter pairs trained with
`P_train(falls_left)` = 0.2 / 0.5 / 0.8 over the complete 200-clip accepted
A-09 bank (every clip in every condition, matched exposures and optimizer
budget; only the exposure manifest differs).
- `conditions/lora100/` — an **operator-directed extension arm** trained on
left-falling clips only (20× each of the 100 left clips, right clips zero
exposure). It deliberately breaks the every-clip-in-every-condition
invariant of the formal design and must not be analyzed as part of the
matched trio.
- `conditions/lora0/` — the second **operator-directed extension arm**
(added 2026-07-17), the mirror of lora100: right-falling clips only
(20× each of the 100 right clips, left clips zero exposure). Same
deliberate invariant break, same matched exposures/optimizer budget;
likewise never part of the matched trio.
- Each condition folder holds `high_noise__step-2000.safetensors`,
`low_noise__step-2000.safetensors`, per-expert `training_args.json`, a
reload/minimal-render validation receipt, the validation render, and a
completion receipt binding dataset/exposure/config/framework/base hashes.
- `checkpoint_manifest.json` — top-level manifest binding every condition to
its adapter hashes, frozen-recipe hash, dataset hashes, base revision
`206a9ee1`, and DiffSynth-Studio commit `a1a20f7d`.
## Loading contract (one logical condition = BOTH adapters)
```python
from diffsynth.pipelines.wan_video import WanVideoPipeline, ModelConfig
pipe = WanVideoPipeline.from_pretrained(...) # Wan-AI/Wan2.2-I2V-A14B @ 206a9ee1
pipe.load_lora(pipe.dit, "conditions/lora20/high_noise__step-2000.safetensors", alpha=1)
pipe.load_lora(pipe.dit2, "conditions/lora20/low_noise__step-2000.safetensors", alpha=1)
```
Loading only one expert adapter is an incomplete condition and invalid for
any comparison.
## What this repository is NOT
- Not benchmark inputs, not training data (see the data repo), and not
evidence that probabilistic alignment works: checkpoint existence and the
single-seed validation renders are **not** paper evidence. The formal
Base-vs-LoRA K=50 evaluation belongs to the downstream issue (#300) and a
separate Claim Gate.
No credentials or secrets are stored here; receipts record credential
environment variable names only.