transformer_2 (low-noise refiner) 를 HCPT 학습/추론 경로에 통합transformer_2 subfolder 없으면 자동 fallback — 기존 single-expert 체크포인트 그대로 동작Wan 2.2 I2V A14B 체크포인트는 transformer/ (high-noise expert, denoising 처음 90%)와 transformer_2/ (low-noise refiner, 마지막 10%) 두 개의 WanTransformer3DModel을 갖고 있다. model_index.json에 boundary_ratio: 0.9가 정의되어 있다.
sft_trainer.py의 load_components()가 transformer subfolder만 로드하고 transformer_2는 완전히 무시했다. 학습/추론 모두 high-noise expert 하나로만 동작 중 — low-noise refinement 단계 누락으로 디테일 품질 저하 가능성.현재 설치된 diffusers 0.34.0에는 dual expert 지원이 없어 수동 구현이 필요하다. EgoX2_exp2는 HCPT (Height-Concat Point Map + ego Prior) 구조를 사용하므로 exp1과 다른 코드 경로를 갖는다.
core/finetune/schemas/args.pyArgs 모델에 boundary_ratio: float = 0.9 필드 추가 (LoRA 섹션 바로 아래). argparse에 --boundary_ratio 인자 추가. 변경 라인: +4.
core/finetune/schemas/components.pyWan_Components에 transformer_2: Any = None 필드 추가. 기존 vars(self) 순회 로직이 device 관리를 자동으로 처리하므로 추가 변경 불필요. 변경 라인: +1.
core/finetune/models/wan_i2v/sft_trainer.py (5곳)transformer, 10% 확률로 transformer_2가 선택된다. inference denoising loop에서는 index 기반으로 결정론적으로 전환.| 파일 | 변경 라인 | 검증 방법 | 결과 |
|---|---|---|---|
| args.py | +4 | python -m ast | 통과 |
| components.py | +1 | python -m ast | 통과 |
| sft_trainer.py | ~+30 (net) | python -m ast | 통과 |
components.transformer_2 = None, boundary_step = len(timesteps) → 기존 single-expert 동작과 100% 동일. grep 검증으로 필드 반영 확인.Wan 2.2 A14B의 dual expert 구조를 HCPT 학습 파이프라인에 통합하기 위한 핵심 switching 로직이 완성됐다. transformer_2가 없는 기존 체크포인트에서는 자동 fallback되므로 기존 smoke test / checkpoint에 영향이 없다. training loop의 expert 선택(timestep_idx vs boundary_idx)이 inference denoising loop의 expert 선택(step index vs boundary_step)과 자연스럽게 대응된다는 점이 설계의 핵심.
trainer.py: transformer_2에 LoRA config 적용, optimizer에 포함, find_unused_parameters=True (매 step에 한 expert만 active), save/load hooks (별도 pytorch_lora_weights_transformer_2.safetensors), eval/train 모드 전환.
infer.py: transformer_2 로드 + LoRA fuse, --boundary_ratio argparse.
configs/egoexo4d_hcpt.yaml: boundary_ratio: 0.9 추가.
Steps 4–6 완료 후 5-clip mini manifest로 dual expert smoke test 실행. 양 expert 모두 forward/backward 확인, loss 단조 감소, checkpoint 저장 후 transformer_2 LoRA 별도 파일 존재 확인.