diffsynth 2.0.18__tar.gz → 2.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {diffsynth-2.0.18 → diffsynth-2.1.1}/PKG-INFO +6 -1
- {diffsynth-2.0.18 → diffsynth-2.1.1}/README.md +185 -36
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/configs/model_configs.py +120 -3
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/configs/vram_management_module_maps.py +58 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/__init__.py +1 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/attention/attention.py +41 -3
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/device/npu_compatible_device.py +2 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/loader/config.py +59 -1
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/loader/file.py +5 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/loader/model.py +64 -8
- diffsynth-2.1.1/diffsynth/core/quant/__init__.py +3 -0
- diffsynth-2.1.1/diffsynth/core/quant/backends/__init__.py +1 -0
- diffsynth-2.1.1/diffsynth/core/quant/backends/bitsandbytes.py +152 -0
- diffsynth-2.1.1/diffsynth/core/quant/backends/torchao.py +121 -0
- diffsynth-2.1.1/diffsynth/core/quant/base.py +127 -0
- diffsynth-2.1.1/diffsynth/core/quant/config.py +425 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/vram/layers.py +159 -32
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/base_pipeline.py +5 -4
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/flow_match.py +10 -1
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/loss.py +32 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ideogram4_dit.py +56 -38
- diffsynth-2.1.1/diffsynth/models/ideogram4_text_encoder.py +137 -0
- diffsynth-2.1.1/diffsynth/models/lingbot_video_dit.py +623 -0
- diffsynth-2.1.1/diffsynth/models/minimax_h3_audio_vae.py +481 -0
- diffsynth-2.1.1/diffsynth/models/minimax_h3_dit.py +398 -0
- diffsynth-2.1.1/diffsynth/models/minimax_h3_text_encoder.py +231 -0
- diffsynth-2.1.1/diffsynth/models/minimax_h3_video_vae.py +552 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/model_loader.py +19 -4
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/qwen_image_vae.py +33 -0
- diffsynth-2.1.1/diffsynth/models/wan_animate_2_dit.py +913 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_dit.py +1 -1
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/flux_image.py +6 -0
- diffsynth-2.1.1/diffsynth/pipelines/lingbot_video.py +426 -0
- diffsynth-2.1.1/diffsynth/pipelines/minimax_h3_audio_video.py +884 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/wan_video.py +263 -8
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/data/audio_video.py +83 -7
- diffsynth-2.1.1/diffsynth/utils/data/minimax_h3.py +105 -0
- diffsynth-2.1.1/diffsynth/utils/lora/flux_timestep.py +150 -0
- diffsynth-2.1.1/diffsynth/utils/state_dict_converters/ideogram4_text_encoder.py +3 -0
- diffsynth-2.1.1/diffsynth/utils/state_dict_converters/lingbot_video_dit.py +11 -0
- diffsynth-2.1.1/diffsynth/utils/state_dict_converters/minimax_h3_audio_vae.py +9 -0
- diffsynth-2.1.1/diffsynth/utils/state_dict_converters/minimax_h3_text_encoder.py +27 -0
- diffsynth-2.1.1/diffsynth/utils/state_dict_converters/minimax_h3_video_vae.py +11 -0
- diffsynth-2.1.1/diffsynth/utils/tile/__init__.py +1 -0
- diffsynth-2.1.1/diffsynth/utils/tile/tile_worker.py +55 -0
- diffsynth-2.1.1/diffsynth/utils/xfuser/__init__.py +1 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/xfuser/xdit_context_parallel.py +13 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth.egg-info/PKG-INFO +6 -1
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth.egg-info/SOURCES.txt +23 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth.egg-info/requires.txt +6 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/pyproject.toml +8 -2
- diffsynth-2.0.18/diffsynth/models/ideogram4_text_encoder.py +0 -353
- diffsynth-2.0.18/diffsynth/utils/xfuser/__init__.py +0 -1
- {diffsynth-2.0.18 → diffsynth-2.1.1}/LICENSE +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/configs/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/attention/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/data/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/data/operators.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/data/unified_dataset.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/device/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/gradient/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/gradient/gradient_checkpoint.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/loader/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/npu_patch/npu_fused_operator.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/offload_training/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/offload_training/manager.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/offload_training/memory_buffer.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/offload_training/offloader.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/vram/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/vram/disk_map.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/core/vram/initialization.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/ddim_scheduler.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/dmd2.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/logger.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/parsers.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/runner.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/template.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/diffusion/training_module.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/aesthetic.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/base.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/bioclip.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/clip.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/fid.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/hpsv2.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/hpsv3.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/image_reward.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/lpips.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/pickscore.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/qwen_image_bench.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/unified_reward_2.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/metrics/unified_reward_edit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ace_step_conditioner.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ace_step_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ace_step_residual_fsq.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ace_step_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ace_step_tokenizer.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ace_step_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/aesthetic.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/anima_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/bioclip.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/boogu_image_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/clip.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/demucs.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/dinov3_image_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ernie_image_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ernie_image_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/fid.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux2_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux2_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux2_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_controlnet.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_infiniteyou.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_ipadapter.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_lora_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_lora_patcher.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_text_encoder_clip.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_text_encoder_t5.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/flux_value_control.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/general_modules.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/hidream_common.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/hidream_o1_image_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/hpsv2.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/hpsv3.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ideogram4_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/image_reward.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/joyai_image_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/joyai_image_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/krea2_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/krea2_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/longcat_video_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/lpips.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ltx2_audio_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ltx2_common.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ltx2_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ltx2_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ltx2_upsampler.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/ltx2_video_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/mova_audio_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/mova_audio_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/mova_dual_tower_bridge.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/nexus_gen.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/nexus_gen_ar_model.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/nexus_gen_projector.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/pickscore.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/qwen_image_bench.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/qwen_image_controlnet.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/qwen_image_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/qwen_image_image2lora.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/qwen_image_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/sd_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/siglip2_image_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/stable_diffusion_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/stable_diffusion_unet.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/stable_diffusion_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/stable_diffusion_xl_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/stable_diffusion_xl_unet.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/step1x_connector.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/step1x_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/unified_reward_2.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/unified_reward_edit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_animate_adapter.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_camera_controller.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_dit_s2v.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_image_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_mot.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_motion_controller.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_vace.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wan_video_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wantodance.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/wav2vec.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/z_image_controlnet.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/z_image_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/z_image_image2lora.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/models/z_image_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/ace_step.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/anima_image.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/boogu_image.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/ernie_image.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/flux2_image.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/hidream_o1_image.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/ideogram4.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/joyai_image.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/krea2.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/ltx2_audio_video.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/mova_audio_video.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/qwen_image.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/stable_diffusion.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/stable_diffusion_xl.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/pipelines/z_image.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/controlnet/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/controlnet/annotator.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/controlnet/controlnet_input.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/data/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/data/audio.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/data/media_io_ltx2.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/demucs/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/dequantizer/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/lora/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/lora/flux.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/lora/general.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/lora/krea2.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/lora/merge.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/lora/reset_rank.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/lora/sdxl.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/ses/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/ses/ses.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/__init__.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/ace_step_conditioner.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/ace_step_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/ace_step_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/ace_step_tokenizer.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/anima_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/dino_v3.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/ernie_image_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/flux2_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/flux_controlnet.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/flux_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/flux_infiniteyou.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/flux_ipadapter.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/flux_text_encoder_clip.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/flux_text_encoder_t5.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/flux_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/image_metrics.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/joyai_image_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/krea2_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/krea2_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/ltx2_audio_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/ltx2_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/ltx2_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/ltx2_video_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/nexus_gen.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/nexus_gen_projector.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/qwen_image_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/sdxl.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/sdxl_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/sdxl_text_encoder_2.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/sdxl_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/stable_diffusion_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/stable_diffusion_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/stable_diffusion_xl_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/step1x_connector.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/wan_video_animate_adapter.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/wan_video_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/wan_video_image_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/wan_video_mot.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/wan_video_vace.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/wan_video_vae.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/wans2v_audio_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/z_image_dit.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/utils/state_dict_converters/z_image_text_encoder.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth/version.py +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth.egg-info/dependency_links.txt +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/diffsynth.egg-info/top_level.txt +0 -0
- {diffsynth-2.0.18 → diffsynth-2.1.1}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: diffsynth
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.1.1
|
|
4
4
|
Summary: Enjoy the magic of Diffusion models!
|
|
5
5
|
Author: ModelScope Team
|
|
6
6
|
License: Apache-2.0
|
|
@@ -37,10 +37,15 @@ Requires-Dist: av; extra == "audio"
|
|
|
37
37
|
Requires-Dist: torchaudio; extra == "audio"
|
|
38
38
|
Requires-Dist: torchcodec; extra == "audio"
|
|
39
39
|
Requires-Dist: librosa; extra == "audio"
|
|
40
|
+
Provides-Extra: quant
|
|
41
|
+
Requires-Dist: bitsandbytes; extra == "quant"
|
|
42
|
+
Requires-Dist: torchao; extra == "quant"
|
|
40
43
|
Provides-Extra: all
|
|
41
44
|
Requires-Dist: av; extra == "all"
|
|
42
45
|
Requires-Dist: torchaudio; extra == "all"
|
|
43
46
|
Requires-Dist: torchcodec; extra == "all"
|
|
44
47
|
Requires-Dist: librosa; extra == "all"
|
|
45
48
|
Requires-Dist: streamlit; extra == "all"
|
|
49
|
+
Requires-Dist: bitsandbytes; extra == "all"
|
|
50
|
+
Requires-Dist: torchao; extra == "all"
|
|
46
51
|
Dynamic: license-file
|
|
@@ -36,6 +36,12 @@ We believe that a well-developed open-source code framework can lower the thresh
|
|
|
36
36
|
|
|
37
37
|
> Currently, the development personnel of this project are limited, with most of the work handled by [Artiprocher](https://github.com/Artiprocher) and [mi804](https://github.com/mi804). Therefore, the progress of new feature development will be relatively slow, and the speed of responding to and resolving issues is limited. We apologize for this and ask developers to understand.
|
|
38
38
|
|
|
39
|
+
- **August 7, 2026** We add support for Wan-Animate-2 in the Wan series. Given a reference image and a driving video, it makes the reference character perform the motions in the driving video, generating high-quality character animation, with both standard and distilled variants. For details, please refer to the [documentation](/docs/en/Model_Details/Wan.md) and [example code](/examples/wanvideo/).
|
|
40
|
+
|
|
41
|
+
- **August 3, 2026** MiniMax-H3 open-sourced, welcome a new member to the video model family! Support includes text-to-video-audio generation, keyframe-guided generation, reference-driven generation, low VRAM inference, and NF4-quantized inference. For details, please refer to the [documentation](/docs/en/Model_Details/MiniMax-H3.md) and [example code](/examples/minimax_h3/).
|
|
42
|
+
|
|
43
|
+
- **July 28, 2026** LingBot-Video open-sourced, welcome a new member to the video model family! This release includes two variants, Dense-1.3B and MoE-30B-A3B (30B total parameters, ~3B active per token), both supporting text-to-video, image-to-video and text-to-image generation, low VRAM inference, and LoRA / full training capabilities. For details, please refer to the [documentation](/docs/en/Model_Details/LingBot-Video.md) and [example code](/examples/lingbot_video/). Huge thanks to [NancyFyong](https://github.com/NancyFyong) for contributing the integration of this model!
|
|
44
|
+
|
|
39
45
|
- **July 21, 2026** We have open-sourced [DiffSynth-Studio Model Integration Skills](https://www.modelscope.cn/collections/DiffSynth-Studio/DiffSynth-Studio-Model-Integration-Skills). This is a composable collection of Agent Skills that automates the entire workflow of integrating external diffusion models into DiffSynth-Studio, significantly improving the standardization and efficiency of model integration. Get started with the [example](https://www.modelscope.cn/skills/DiffSynth-Studio/diffsynth-integrator/file/view/master/example.md?status=1)!
|
|
40
46
|
|
|
41
47
|
- **June 29, 2026** Boogu-Image open-sourced. Support includes text-to-image generation, image editing, low VRAM inference, and training capabilities. For details, please refer to the [documentation](/docs/en/Model_Details/Boogu-Image.md) and [example code](/examples/boogu_image/).
|
|
@@ -267,7 +273,7 @@ DiffSynth-Studio redesigns the inference and training pipelines for mainstream D
|
|
|
267
273
|
>
|
|
268
274
|
> ```python
|
|
269
275
|
> import os
|
|
270
|
-
> os.environ["
|
|
276
|
+
> os.environ["MODELSCOPE_ENDPOINT"] = "https://modelscope.ai"
|
|
271
277
|
> ```
|
|
272
278
|
>
|
|
273
279
|
> To download models from other sources, please modify the environment variable [DIFFSYNTH_DOWNLOAD_SOURCE](/docs/en/Pipeline_Usage/Environment_Variables.md#diffsynth_download_source).
|
|
@@ -1409,41 +1415,184 @@ Example code for Wan is available at: [/examples/wanvideo/](/examples/wanvideo/)
|
|
|
1409
1415
|
|
|
1410
1416
|
| Model ID | Extra Inputs | Inference | Low VRAM Inference | Full Training | Validation After Full Training | LoRA Training | Validation After LoRA Training |
|
|
1411
1417
|
|-|-|-|-|-|-|-|-|
|
|
1412
|
-
|[Wan-AI/Wan2.1-T2V-1.3B](https://modelscope.cn/models/Wan-AI/Wan2.1-T2V-1.3B)||[code](
|
|
1413
|
-
|[Wan-AI/Wan2.1-T2V-14B](https://modelscope.cn/models/Wan-AI/Wan2.1-T2V-14B)||[code](
|
|
1414
|
-
|[Wan-AI/Wan2.1-I2V-14B-480P](https://modelscope.cn/models/Wan-AI/Wan2.1-I2V-14B-480P)|`input_image`|[code](
|
|
1415
|
-
|[Wan-AI/Wan2.1-I2V-14B-720P](https://modelscope.cn/models/Wan-AI/Wan2.1-I2V-14B-720P)|`input_image`|[code](
|
|
1416
|
-
|[Wan-AI/Wan2.1-FLF2V-14B-720P](https://modelscope.cn/models/Wan-AI/Wan2.1-FLF2V-14B-720P)|`input_image`, `end_image`|[code](
|
|
1417
|
-
|[iic/VACE-Wan2.1-1.3B-Preview](https://modelscope.cn/models/iic/VACE-Wan2.1-1.3B-Preview)|`vace_control_video`, `vace_reference_image`|[code](
|
|
1418
|
-
|[Wan-AI/Wan2.1-VACE-1.3B](https://modelscope.cn/models/Wan-AI/Wan2.1-VACE-1.3B)|`vace_control_video`, `vace_reference_image`|[code](
|
|
1419
|
-
|[Wan-AI/Wan2.1-VACE-14B](https://modelscope.cn/models/Wan-AI/Wan2.1-VACE-14B)|`vace_control_video`, `vace_reference_image`|[code](
|
|
1420
|
-
|[PAI/Wan2.1-Fun-1.3B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-1.3B-InP)|`input_image`, `end_image`|[code](
|
|
1421
|
-
|[PAI/Wan2.1-Fun-1.3B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-1.3B-Control)|`control_video`|[code](
|
|
1422
|
-
|[PAI/Wan2.1-Fun-14B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-14B-InP)|`input_image`, `end_image`|[code](
|
|
1423
|
-
|[PAI/Wan2.1-Fun-14B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-14B-Control)|`control_video`|[code](
|
|
1424
|
-
|[PAI/Wan2.1-Fun-V1.1-1.3B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-1.3B-Control)|`control_video`, `reference_image`|[code](
|
|
1425
|
-
|[PAI/Wan2.1-Fun-V1.1-14B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-14B-Control)|`control_video`, `reference_image`|[code](
|
|
1426
|
-
|[PAI/Wan2.1-Fun-V1.1-1.3B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-1.3B-InP)|`input_image`, `end_image`|[code](
|
|
1427
|
-
|[PAI/Wan2.1-Fun-V1.1-14B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-14B-InP)|`input_image`, `end_image`|[code](
|
|
1428
|
-
|[PAI/Wan2.1-Fun-V1.1-1.3B-Control-Camera](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-1.3B-Control-Camera)|`control_camera_video`, `input_image`|[code](
|
|
1429
|
-
|[PAI/Wan2.1-Fun-V1.1-14B-Control-Camera](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-14B-Control-Camera)|`control_camera_video`, `input_image`|[code](
|
|
1430
|
-
|[DiffSynth-Studio/Wan2.1-1.3b-speedcontrol-v1](https://modelscope.cn/models/DiffSynth-Studio/Wan2.1-1.3b-speedcontrol-v1)|`motion_bucket_id`|[code](
|
|
1431
|
-
|[krea/krea-realtime-video](https://www.modelscope.cn/models/krea/krea-realtime-video)||[code](
|
|
1432
|
-
|[meituan-longcat/LongCat-Video](https://www.modelscope.cn/models/meituan-longcat/LongCat-Video)|`longcat_video`|[code](
|
|
1433
|
-
|[ByteDance/Video-As-Prompt-Wan2.1-14B](https://modelscope.cn/models/ByteDance/Video-As-Prompt-Wan2.1-14B)|`vap_video`, `vap_prompt`|[code](
|
|
1434
|
-
|[Wan-AI/Wan2.2-T2V-A14B](https://modelscope.cn/models/Wan-AI/Wan2.2-T2V-A14B)||[code](
|
|
1435
|
-
|[Wan-AI/Wan2.2-I2V-A14B](https://modelscope.cn/models/Wan-AI/Wan2.2-I2V-A14B)|`input_image`|[code](
|
|
1436
|
-
|[Wan-AI/Wan2.2-TI2V-5B](https://modelscope.cn/models/Wan-AI/Wan2.2-TI2V-5B)|`input_image`|[code](
|
|
1437
|
-
|[Wan-AI/Wan2.2-Animate-14B](https://www.modelscope.cn/models/Wan-AI/Wan2.2-Animate-14B)|`input_image`, `animate_pose_video`, `animate_face_video`, `animate_inpaint_video`, `animate_mask_video`|[code](
|
|
1438
|
-
|[Wan-AI/Wan2.2-
|
|
1439
|
-
|[
|
|
1440
|
-
|[
|
|
1441
|
-
|[PAI/Wan2.2-Fun-A14B
|
|
1442
|
-
|[PAI/Wan2.2-Fun-A14B-
|
|
1443
|
-
|[
|
|
1444
|
-
|[
|
|
1445
|
-
|[
|
|
1446
|
-
|[
|
|
1418
|
+
|[Wan-AI/Wan2.1-T2V-1.3B](https://modelscope.cn/models/Wan-AI/Wan2.1-T2V-1.3B)||[code](/examples/wanvideo/model_inference/Wan2.1-T2V-1.3B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-T2V-1.3B.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-T2V-1.3B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-T2V-1.3B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-T2V-1.3B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-T2V-1.3B.py)|
|
|
1419
|
+
|[Wan-AI/Wan2.1-T2V-14B](https://modelscope.cn/models/Wan-AI/Wan2.1-T2V-14B)||[code](/examples/wanvideo/model_inference/Wan2.1-T2V-14B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-T2V-14B.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-T2V-14B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-T2V-14B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-T2V-14B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-T2V-14B.py)|
|
|
1420
|
+
|[Wan-AI/Wan2.1-I2V-14B-480P](https://modelscope.cn/models/Wan-AI/Wan2.1-I2V-14B-480P)|`input_image`|[code](/examples/wanvideo/model_inference/Wan2.1-I2V-14B-480P.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-I2V-14B-480P.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-I2V-14B-480P.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-I2V-14B-480P.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-I2V-14B-480P.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-I2V-14B-480P.py)|
|
|
1421
|
+
|[Wan-AI/Wan2.1-I2V-14B-720P](https://modelscope.cn/models/Wan-AI/Wan2.1-I2V-14B-720P)|`input_image`|[code](/examples/wanvideo/model_inference/Wan2.1-I2V-14B-720P.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-I2V-14B-720P.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-I2V-14B-720P.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-I2V-14B-720P.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-I2V-14B-720P.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-I2V-14B-720P.py)|
|
|
1422
|
+
|[Wan-AI/Wan2.1-FLF2V-14B-720P](https://modelscope.cn/models/Wan-AI/Wan2.1-FLF2V-14B-720P)|`input_image`, `end_image`|[code](/examples/wanvideo/model_inference/Wan2.1-FLF2V-14B-720P.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-FLF2V-14B-720P.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-FLF2V-14B-720P.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-FLF2V-14B-720P.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-FLF2V-14B-720P.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-FLF2V-14B-720P.py)|
|
|
1423
|
+
|[iic/VACE-Wan2.1-1.3B-Preview](https://modelscope.cn/models/iic/VACE-Wan2.1-1.3B-Preview)|`vace_control_video`, `vace_reference_image`|[code](/examples/wanvideo/model_inference/Wan2.1-VACE-1.3B-Preview.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-VACE-1.3B-Preview.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-VACE-1.3B-Preview.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-VACE-1.3B-Preview.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-VACE-1.3B-Preview.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-VACE-1.3B-Preview.py)|
|
|
1424
|
+
|[Wan-AI/Wan2.1-VACE-1.3B](https://modelscope.cn/models/Wan-AI/Wan2.1-VACE-1.3B)|`vace_control_video`, `vace_reference_image`|[code](/examples/wanvideo/model_inference/Wan2.1-VACE-1.3B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-VACE-1.3B.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-VACE-1.3B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-VACE-1.3B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-VACE-1.3B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-VACE-1.3B.py)|
|
|
1425
|
+
|[Wan-AI/Wan2.1-VACE-14B](https://modelscope.cn/models/Wan-AI/Wan2.1-VACE-14B)|`vace_control_video`, `vace_reference_image`|[code](/examples/wanvideo/model_inference/Wan2.1-VACE-14B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-VACE-14B.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-VACE-14B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-VACE-14B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-VACE-14B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-VACE-14B.py)|
|
|
1426
|
+
|[PAI/Wan2.1-Fun-1.3B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-1.3B-InP)|`input_image`, `end_image`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-1.3B-InP.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-1.3B-InP.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-1.3B-InP.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-1.3B-InP.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-1.3B-InP.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-1.3B-InP.py)|
|
|
1427
|
+
|[PAI/Wan2.1-Fun-1.3B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-1.3B-Control)|`control_video`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-1.3B-Control.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-1.3B-Control.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-1.3B-Control.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-1.3B-Control.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-1.3B-Control.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-1.3B-Control.py)|
|
|
1428
|
+
|[PAI/Wan2.1-Fun-14B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-14B-InP)|`input_image`, `end_image`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-14B-InP.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-14B-InP.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-14B-InP.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-14B-InP.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-14B-InP.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-14B-InP.py)|
|
|
1429
|
+
|[PAI/Wan2.1-Fun-14B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-14B-Control)|`control_video`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-14B-Control.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-14B-Control.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-14B-Control.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-14B-Control.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-14B-Control.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-14B-Control.py)|
|
|
1430
|
+
|[PAI/Wan2.1-Fun-V1.1-1.3B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-1.3B-Control)|`control_video`, `reference_image`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-1.3B-Control.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-V1.1-1.3B-Control.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-1.3B-Control.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-1.3B-Control.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-1.3B-Control.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-1.3B-Control.py)|
|
|
1431
|
+
|[PAI/Wan2.1-Fun-V1.1-14B-Control](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-14B-Control)|`control_video`, `reference_image`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-14B-Control.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-V1.1-14B-Control.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-14B-Control.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-14B-Control.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-14B-Control.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-14B-Control.py)|
|
|
1432
|
+
|[PAI/Wan2.1-Fun-V1.1-1.3B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-1.3B-InP)|`input_image`, `end_image`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-1.3B-InP.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-V1.1-1.3B-InP.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-1.3B-InP.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-1.3B-InP.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-1.3B-InP.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-1.3B-InP.py)|
|
|
1433
|
+
|[PAI/Wan2.1-Fun-V1.1-14B-InP](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-14B-InP)|`input_image`, `end_image`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-14B-InP.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-V1.1-14B-InP.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-14B-InP.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-14B-InP.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-14B-InP.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-14B-InP.py)|
|
|
1434
|
+
|[PAI/Wan2.1-Fun-V1.1-1.3B-Control-Camera](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-1.3B-Control-Camera)|`control_camera_video`, `input_image`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-1.3B-Control-Camera.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-V1.1-1.3B-Control-Camera.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-1.3B-Control-Camera.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-1.3B-Control-Camera.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-1.3B-Control-Camera.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-1.3B-Control-Camera.py)|
|
|
1435
|
+
|[PAI/Wan2.1-Fun-V1.1-14B-Control-Camera](https://modelscope.cn/models/PAI/Wan2.1-Fun-V1.1-14B-Control-Camera)|`control_camera_video`, `input_image`|[code](/examples/wanvideo/model_inference/Wan2.1-Fun-V1.1-14B-Control-Camera.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-Fun-V1.1-14B-Control-Camera.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-Fun-V1.1-14B-Control-Camera.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-Fun-V1.1-14B-Control-Camera.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-Fun-V1.1-14B-Control-Camera.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-Fun-V1.1-14B-Control-Camera.py)|
|
|
1436
|
+
|[DiffSynth-Studio/Wan2.1-1.3b-speedcontrol-v1](https://modelscope.cn/models/DiffSynth-Studio/Wan2.1-1.3b-speedcontrol-v1)|`motion_bucket_id`|[code](/examples/wanvideo/model_inference/Wan2.1-1.3b-speedcontrol-v1.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.1-1.3b-speedcontrol-v1.py)|[code](/examples/wanvideo/model_training/full/Wan2.1-1.3b-speedcontrol-v1.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.1-1.3b-speedcontrol-v1.py)|[code](/examples/wanvideo/model_training/lora/Wan2.1-1.3b-speedcontrol-v1.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.1-1.3b-speedcontrol-v1.py)|
|
|
1437
|
+
|[krea/krea-realtime-video](https://www.modelscope.cn/models/krea/krea-realtime-video)||[code](/examples/wanvideo/model_inference/krea-realtime-video.py)|[code](/examples/wanvideo/model_inference_low_vram/krea-realtime-video.py)|[code](/examples/wanvideo/model_training/full/krea-realtime-video.sh)|[code](/examples/wanvideo/model_training/validate_full/krea-realtime-video.py)|[code](/examples/wanvideo/model_training/lora/krea-realtime-video.sh)|[code](/examples/wanvideo/model_training/validate_lora/krea-realtime-video.py)|
|
|
1438
|
+
|[meituan-longcat/LongCat-Video](https://www.modelscope.cn/models/meituan-longcat/LongCat-Video)|`longcat_video`|[code](/examples/wanvideo/model_inference/LongCat-Video.py)|[code](/examples/wanvideo/model_inference_low_vram/LongCat-Video.py)|[code](/examples/wanvideo/model_training/full/LongCat-Video.sh)|[code](/examples/wanvideo/model_training/validate_full/LongCat-Video.py)|[code](/examples/wanvideo/model_training/lora/LongCat-Video.sh)|[code](/examples/wanvideo/model_training/validate_lora/LongCat-Video.py)|
|
|
1439
|
+
|[ByteDance/Video-As-Prompt-Wan2.1-14B](https://modelscope.cn/models/ByteDance/Video-As-Prompt-Wan2.1-14B)|`vap_video`, `vap_prompt`|[code](/examples/wanvideo/model_inference/Video-As-Prompt-Wan2.1-14B.py)|[code](/examples/wanvideo/model_inference_low_vram/Video-As-Prompt-Wan2.1-14B.py)|[code](/examples/wanvideo/model_training/full/Video-As-Prompt-Wan2.1-14B.sh)|[code](/examples/wanvideo/model_training/validate_full/Video-As-Prompt-Wan2.1-14B.py)|[code](/examples/wanvideo/model_training/lora/Video-As-Prompt-Wan2.1-14B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Video-As-Prompt-Wan2.1-14B.py)|
|
|
1440
|
+
|[Wan-AI/Wan2.2-T2V-A14B](https://modelscope.cn/models/Wan-AI/Wan2.2-T2V-A14B)||[code](/examples/wanvideo/model_inference/Wan2.2-T2V-A14B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-T2V-A14B.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-T2V-A14B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-T2V-A14B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-T2V-A14B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-T2V-A14B.py)|
|
|
1441
|
+
|[Wan-AI/Wan2.2-I2V-A14B](https://modelscope.cn/models/Wan-AI/Wan2.2-I2V-A14B)|`input_image`|[code](/examples/wanvideo/model_inference/Wan2.2-I2V-A14B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-I2V-A14B.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-I2V-A14B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-I2V-A14B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-I2V-A14B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-I2V-A14B.py)|
|
|
1442
|
+
|[Wan-AI/Wan2.2-TI2V-5B](https://modelscope.cn/models/Wan-AI/Wan2.2-TI2V-5B)|`input_image`|[code](/examples/wanvideo/model_inference/Wan2.2-TI2V-5B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-TI2V-5B.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-TI2V-5B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-TI2V-5B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-TI2V-5B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-TI2V-5B.py)|
|
|
1443
|
+
|[Wan-AI/Wan2.2-Animate-14B](https://www.modelscope.cn/models/Wan-AI/Wan2.2-Animate-14B)|`input_image`, `animate_pose_video`, `animate_face_video`, `animate_inpaint_video`, `animate_mask_video`|[code](/examples/wanvideo/model_inference/Wan2.2-Animate-14B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-Animate-14B.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-Animate-14B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-Animate-14B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-Animate-14B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-Animate-14B.py)|
|
|
1444
|
+
|[Wan-AI/Wan2.2-Animate-2-14B](https://www.modelscope.cn/models/Wan-AI/Wan2.2-Animate-2-14B)|`animate2_reference_image`, `animate2_reference_video`, `animate2_prompt_ref`|[code](/examples/wanvideo/model_inference/Wan2.2-Animate-2-14B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-Animate-2-14B.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-Animate-2-14B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-Animate-2-14B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-Animate-2-14B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-Animate-2-14B.py)|
|
|
1445
|
+
|[Wan-AI/Wan2.2-Animate-2-14B: Distilled](https://www.modelscope.cn/models/Wan-AI/Wan2.2-Animate-2-14B)|`animate2_reference_image`, `animate2_reference_video`, `animate2_prompt_ref`|[code](/examples/wanvideo/model_inference/Wan2.2-Animate-2-14B-Distilled.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-Animate-2-14B-Distilled.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-Animate-2-14B-Distilled.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-Animate-2-14B-Distilled.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-Animate-2-14B-Distilled.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-Animate-2-14B-Distilled.py)|
|
|
1446
|
+
|[Wan-AI/Wan2.2-S2V-14B](https://www.modelscope.cn/models/Wan-AI/Wan2.2-S2V-14B)|`input_image`, `input_audio`, `audio_sample_rate`, `s2v_pose_video`|[code](/examples/wanvideo/model_inference/Wan2.2-S2V-14B_multi_clips.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-S2V-14B_multi_clips.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-S2V-14B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-S2V-14B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-S2V-14B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-S2V-14B.py)|
|
|
1447
|
+
|[PAI/Wan2.2-VACE-Fun-A14B](https://www.modelscope.cn/models/PAI/Wan2.2-VACE-Fun-A14B)|`vace_control_video`, `vace_reference_image`|[code](/examples/wanvideo/model_inference/Wan2.2-VACE-Fun-A14B.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-VACE-Fun-A14B.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-VACE-Fun-A14B.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-VACE-Fun-A14B.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-VACE-Fun-A14B.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-VACE-Fun-A14B.py)|
|
|
1448
|
+
|[PAI/Wan2.2-Fun-A14B-InP](https://modelscope.cn/models/PAI/Wan2.2-Fun-A14B-InP)|`input_image`, `end_image`|[code](/examples/wanvideo/model_inference/Wan2.2-Fun-A14B-InP.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-Fun-A14B-InP.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-Fun-A14B-InP.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-Fun-A14B-InP.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-Fun-A14B-InP.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-Fun-A14B-InP.py)|
|
|
1449
|
+
|[PAI/Wan2.2-Fun-A14B-Control](https://modelscope.cn/models/PAI/Wan2.2-Fun-A14B-Control)|`control_video`, `reference_image`|[code](/examples/wanvideo/model_inference/Wan2.2-Fun-A14B-Control.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-Fun-A14B-Control.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-Fun-A14B-Control.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-Fun-A14B-Control.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-Fun-A14B-Control.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-Fun-A14B-Control.py)|
|
|
1450
|
+
|[PAI/Wan2.2-Fun-A14B-Control-Camera](https://modelscope.cn/models/PAI/Wan2.2-Fun-A14B-Control-Camera)|`control_camera_video`, `input_image`|[code](/examples/wanvideo/model_inference/Wan2.2-Fun-A14B-Control-Camera.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan2.2-Fun-A14B-Control-Camera.py)|[code](/examples/wanvideo/model_training/full/Wan2.2-Fun-A14B-Control-Camera.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan2.2-Fun-A14B-Control-Camera.py)|[code](/examples/wanvideo/model_training/lora/Wan2.2-Fun-A14B-Control-Camera.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan2.2-Fun-A14B-Control-Camera.py)|
|
|
1451
|
+
|[openmoss/MOVA-360p](https://modelscope.cn/models/openmoss/MOVA-360p)|`input_image`|[code](/examples/mova/model_inference/MOVA-360p-I2AV.py)|[code](/examples/mova/model_inference_low_vram/MOVA-360p-I2AV.py)|[code](/examples/mova/model_training/full/MOVA-360P-I2AV.sh)|[code](/examples/mova/model_training/validate_full/MOVA-360p-I2AV.py)|[code](/examples/mova/model_training/lora/MOVA-360P-I2AV.sh)|[code](/examples/mova/model_training/validate_lora/MOVA-360p-I2AV.py)|
|
|
1452
|
+
|[openmoss/MOVA-720p](https://modelscope.cn/models/openmoss/MOVA-720p)|`input_image`|[code](/examples/mova/model_inference/MOVA-720p-I2AV.py)|[code](/examples/mova/model_inference_low_vram/MOVA-720p-I2AV.py)|[code](/examples/mova/model_training/full/MOVA-720P-I2AV.sh)|[code](/examples/mova/model_training/validate_full/MOVA-720p-I2AV.py)|[code](/examples/mova/model_training/lora/MOVA-720P-I2AV.sh)|[code](/examples/mova/model_training/validate_lora/MOVA-720p-I2AV.py)|
|
|
1453
|
+
|[Wan-AI/Wan-Dancer-14B (global model)](https://modelscope.cn/models/Wan-AI/Wan-Dancer-14B)|`wantodance_music_path`, `wantodance_reference_image`, `wantodance_fps`, `wantodance_keyframes`, `wantodance_keyframes_mask`|[code](/examples/wanvideo/model_inference/Wan-Dancer-14B-global.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan-Dancer-14B-global.py)|[code](/examples/wanvideo/model_training/full/Wan-Dancer-14B-global.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan-Dancer-14B-global.py)|[code](/examples/wanvideo/model_training/lora/Wan-Dancer-14B-global.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan-Dancer-14B-global.py)|
|
|
1454
|
+
|[Wan-AI/Wan-Dancer-14B (local model)](https://modelscope.cn/models/Wan-AI/Wan-Dancer-14B)|`wantodance_music_path`, `wantodance_reference_image`, `wantodance_fps`, `wantodance_keyframes`, `wantodance_keyframes_mask`|[code](/examples/wanvideo/model_inference/Wan-Dancer-14B-local.py)|[code](/examples/wanvideo/model_inference_low_vram/Wan-Dancer-14B-local.py)|[code](/examples/wanvideo/model_training/full/Wan-Dancer-14B-local.sh)|[code](/examples/wanvideo/model_training/validate_full/Wan-Dancer-14B-local.py)|[code](/examples/wanvideo/model_training/lora/Wan-Dancer-14B-local.sh)|[code](/examples/wanvideo/model_training/validate_lora/Wan-Dancer-14B-local.py)|
|
|
1455
|
+
|
|
1456
|
+
</details>
|
|
1457
|
+
|
|
1458
|
+
#### LingBot-Video: [/docs/en/Model_Details/LingBot-Video.md](/docs/en/Model_Details/LingBot-Video.md)
|
|
1459
|
+
|
|
1460
|
+
<details>
|
|
1461
|
+
|
|
1462
|
+
<summary>Quick Start</summary>
|
|
1463
|
+
|
|
1464
|
+
Running the following code will quickly load the [Robbyant/lingbot-video-dense-1.3b](https://modelscope.cn/models/Robbyant/lingbot-video-dense-1.3b) model and perform inference. VRAM management is enabled, and the framework will automatically control the loading of model parameters based on available VRAM. The model can run with a minimum of 6GB VRAM.
|
|
1465
|
+
|
|
1466
|
+
```python
|
|
1467
|
+
import torch
|
|
1468
|
+
import json
|
|
1469
|
+
from diffsynth.utils.data import save_video, VideoData
|
|
1470
|
+
from diffsynth.pipelines.lingbot_video import LingBotVideoPipeline, ModelConfig
|
|
1471
|
+
from modelscope import dataset_snapshot_download
|
|
1472
|
+
|
|
1473
|
+
vram_config = {
|
|
1474
|
+
"offload_dtype": "disk",
|
|
1475
|
+
"offload_device": "disk",
|
|
1476
|
+
"onload_dtype": torch.float8_e4m3fn,
|
|
1477
|
+
"onload_device": "cpu",
|
|
1478
|
+
"preparing_dtype": torch.float8_e4m3fn,
|
|
1479
|
+
"preparing_device": "cuda",
|
|
1480
|
+
"computation_dtype": torch.bfloat16,
|
|
1481
|
+
"computation_device": "cuda",
|
|
1482
|
+
}
|
|
1483
|
+
|
|
1484
|
+
pipe = LingBotVideoPipeline.from_pretrained(
|
|
1485
|
+
torch_dtype=torch.bfloat16,
|
|
1486
|
+
device="cuda",
|
|
1487
|
+
model_configs=[
|
|
1488
|
+
ModelConfig(model_id="Robbyant/lingbot-video-dense-1.3b", origin_file_pattern="transformer/diffusion_pytorch_model.safetensors", **vram_config),
|
|
1489
|
+
ModelConfig(model_id="Qwen/Qwen3-VL-4B-Instruct", origin_file_pattern="*.safetensors", **vram_config),
|
|
1490
|
+
ModelConfig(model_id="Robbyant/lingbot-video-dense-1.3b", origin_file_pattern="vae/diffusion_pytorch_model.safetensors", **vram_config),
|
|
1491
|
+
],
|
|
1492
|
+
processor_config=ModelConfig(model_id="Qwen/Qwen3-VL-4B-Instruct", origin_file_pattern=""),
|
|
1493
|
+
vram_limit=torch.cuda.mem_get_info("cuda")[1] / (1024 ** 3) - 0.5,
|
|
1494
|
+
)
|
|
1495
|
+
|
|
1496
|
+
dataset_snapshot_download(
|
|
1497
|
+
dataset_id="DiffSynth-Studio/diffsynth_example_dataset",
|
|
1498
|
+
local_dir="data/diffsynth_example_dataset",
|
|
1499
|
+
allow_file_pattern="lingbot_video/lingbot-video-dense-1.3b_t2v/*",
|
|
1500
|
+
)
|
|
1501
|
+
with open("data/diffsynth_example_dataset/lingbot_video/lingbot-video-dense-1.3b_t2v/t2v_example_1.json", "r", encoding="utf-8") as f:
|
|
1502
|
+
caption = json.load(f)
|
|
1503
|
+
|
|
1504
|
+
video = pipe(
|
|
1505
|
+
prompt=caption,
|
|
1506
|
+
negative_prompt=pipe.default_negative_prompt,
|
|
1507
|
+
height=480, width=832, num_frames=81,
|
|
1508
|
+
num_inference_steps=40, cfg_scale=3.0,
|
|
1509
|
+
seed=0,
|
|
1510
|
+
)
|
|
1511
|
+
save_video(video, "video.mp4", fps=15, quality=10)
|
|
1512
|
+
```
|
|
1513
|
+
|
|
1514
|
+
</details>
|
|
1515
|
+
|
|
1516
|
+
<details>
|
|
1517
|
+
|
|
1518
|
+
<summary>Examples</summary>
|
|
1519
|
+
|
|
1520
|
+
Example code for LingBot-Video is available at: [/examples/lingbot_video/](/examples/lingbot_video/)
|
|
1521
|
+
|
|
1522
|
+
| Model ID | Inference | Low VRAM Inference | Full Training | Full Training Validation | LoRA Training | LoRA Training Validation |
|
|
1523
|
+
|-|-|-|-|-|-|-|
|
|
1524
|
+
|[Robbyant/lingbot-video-dense-1.3b: T2V](https://modelscope.cn/models/Robbyant/lingbot-video-dense-1.3b)|[code](/examples/lingbot_video/model_inference/lingbot-video-dense-1.3b_t2v.py)|[code](/examples/lingbot_video/model_inference_low_vram/lingbot-video-dense-1.3b_t2v.py)|[code](/examples/lingbot_video/model_training/full/lingbot-video-dense-1.3b_t2v.sh)|[code](/examples/lingbot_video/model_training/validate_full/lingbot-video-dense-1.3b_t2v.py)|[code](/examples/lingbot_video/model_training/lora/lingbot-video-dense-1.3b_t2v.sh)|[code](/examples/lingbot_video/model_training/validate_lora/lingbot-video-dense-1.3b_t2v.py)|
|
|
1525
|
+
|[Robbyant/lingbot-video-dense-1.3b: TI2V](https://modelscope.cn/models/Robbyant/lingbot-video-dense-1.3b)|[code](/examples/lingbot_video/model_inference/lingbot-video-dense-1.3b_ti2v.py)|[code](/examples/lingbot_video/model_inference_low_vram/lingbot-video-dense-1.3b_ti2v.py)|[code](/examples/lingbot_video/model_training/full/lingbot-video-dense-1.3b_ti2v.sh)|[code](/examples/lingbot_video/model_training/validate_full/lingbot-video-dense-1.3b_ti2v.py)|[code](/examples/lingbot_video/model_training/lora/lingbot-video-dense-1.3b_ti2v.sh)|[code](/examples/lingbot_video/model_training/validate_lora/lingbot-video-dense-1.3b_ti2v.py)|
|
|
1526
|
+
|[Robbyant/lingbot-video-dense-1.3b: T2I](https://modelscope.cn/models/Robbyant/lingbot-video-dense-1.3b)|[code](/examples/lingbot_video/model_inference/lingbot-video-dense-1.3b_t2i.py)|[code](/examples/lingbot_video/model_inference_low_vram/lingbot-video-dense-1.3b_t2i.py)|-|-|-|-|
|
|
1527
|
+
|[Robbyant/lingbot-video-moe-30b-a3b: T2V](https://modelscope.cn/models/Robbyant/lingbot-video-moe-30b-a3b)|[code](/examples/lingbot_video/model_inference/lingbot-video-moe-30b-a3b_t2v.py)|[code](/examples/lingbot_video/model_inference_low_vram/lingbot-video-moe-30b-a3b_t2v.py)|[code](/examples/lingbot_video/model_training/full/lingbot-video-moe-30b-a3b_t2v.sh)|[code](/examples/lingbot_video/model_training/validate_full/lingbot-video-moe-30b-a3b_t2v.py)|[code](/examples/lingbot_video/model_training/lora/lingbot-video-moe-30b-a3b_t2v.sh)|[code](/examples/lingbot_video/model_training/validate_lora/lingbot-video-moe-30b-a3b_t2v.py)|
|
|
1528
|
+
|[Robbyant/lingbot-video-moe-30b-a3b: TI2V](https://modelscope.cn/models/Robbyant/lingbot-video-moe-30b-a3b)|[code](/examples/lingbot_video/model_inference/lingbot-video-moe-30b-a3b_ti2v.py)|[code](/examples/lingbot_video/model_inference_low_vram/lingbot-video-moe-30b-a3b_ti2v.py)|[code](/examples/lingbot_video/model_training/full/lingbot-video-moe-30b-a3b_ti2v.sh)|[code](/examples/lingbot_video/model_training/validate_full/lingbot-video-moe-30b-a3b_ti2v.py)|[code](/examples/lingbot_video/model_training/lora/lingbot-video-moe-30b-a3b_ti2v.sh)|[code](/examples/lingbot_video/model_training/validate_lora/lingbot-video-moe-30b-a3b_ti2v.py)|
|
|
1529
|
+
|[Robbyant/lingbot-video-moe-30b-a3b: T2I](https://modelscope.cn/models/Robbyant/lingbot-video-moe-30b-a3b)|[code](/examples/lingbot_video/model_inference/lingbot-video-moe-30b-a3b_t2i.py)|[code](/examples/lingbot_video/model_inference_low_vram/lingbot-video-moe-30b-a3b_t2i.py)|-|-|-|-|
|
|
1530
|
+
|
|
1531
|
+
</details>
|
|
1532
|
+
|
|
1533
|
+
#### MiniMax-H3: [/docs/en/Model_Details/MiniMax-H3.md](/docs/en/Model_Details/MiniMax-H3.md)
|
|
1534
|
+
|
|
1535
|
+
<details>
|
|
1536
|
+
|
|
1537
|
+
<summary>Quick Start</summary>
|
|
1538
|
+
|
|
1539
|
+
Running the following code will quickly load the [DiffSynth-Studio/MiniMax-H3-NF4](https://www.modelscope.cn/models/DiffSynth-Studio/MiniMax-H3-NF4) NF4-quantized model and perform text-to-video-audio inference. VRAM management is enabled, and the framework automatically controls the loading of model parameters based on available VRAM, requiring a minimum of 7GB VRAM.
|
|
1540
|
+
|
|
1541
|
+
```python
|
|
1542
|
+
import torch
|
|
1543
|
+
from diffsynth.pipelines.minimax_h3_audio_video import MiniMaxH3Pipeline, ModelConfig
|
|
1544
|
+
from diffsynth.utils.data.audio_video import write_video_audio
|
|
1545
|
+
|
|
1546
|
+
vram_config = {
|
|
1547
|
+
"offload_dtype": torch.bfloat16,
|
|
1548
|
+
"offload_device": "cpu",
|
|
1549
|
+
"onload_dtype": torch.bfloat16,
|
|
1550
|
+
"onload_device": "cpu",
|
|
1551
|
+
"preparing_dtype": torch.bfloat16,
|
|
1552
|
+
"preparing_device": "cuda",
|
|
1553
|
+
"computation_dtype": torch.bfloat16,
|
|
1554
|
+
"computation_device": "cuda",
|
|
1555
|
+
}
|
|
1556
|
+
pipe = MiniMaxH3Pipeline.from_pretrained(
|
|
1557
|
+
torch_dtype=torch.bfloat16,
|
|
1558
|
+
device="cuda",
|
|
1559
|
+
model_configs=[
|
|
1560
|
+
ModelConfig(model_id="DiffSynth-Studio/MiniMax-H3-NF4", origin_file_pattern="minimax-h3-fl2va-nf4.safetensors", **vram_config),
|
|
1561
|
+
ModelConfig(model_id="DiffSynth-Studio/MiniMax-H3-NF4", origin_file_pattern="minimax-h3-text-encoder-nf4.safetensors", **vram_config),
|
|
1562
|
+
ModelConfig(model_id="DiffSynth-Studio/MiniMax-H3-NF4", origin_file_pattern="video_vae_nf4.safetensors", **vram_config),
|
|
1563
|
+
ModelConfig(model_id="DiffSynth-Studio/MiniMax-H3-NF4", origin_file_pattern="audio_vae_nf4.safetensors", **vram_config),
|
|
1564
|
+
],
|
|
1565
|
+
processor_config=ModelConfig(model_id="MiniMax/MiniMax-H3", origin_file_pattern="FL2VA/processor/"),
|
|
1566
|
+
vram_limit=torch.cuda.mem_get_info("cuda")[1] / (1024 ** 3) - 2,
|
|
1567
|
+
)
|
|
1568
|
+
|
|
1569
|
+
# Text -> Video + Audio
|
|
1570
|
+
prompt = "A girl is very happy, she is speaking in english: “I enjoy working with Diffsynth-Studio, it's a perfect framework.”"
|
|
1571
|
+
video, audio = pipe(
|
|
1572
|
+
prompt=prompt,
|
|
1573
|
+
height=480, width=832, num_frames=124, num_inference_steps=50, seed=0,
|
|
1574
|
+
)
|
|
1575
|
+
write_video_audio(
|
|
1576
|
+
video=video, audio=audio,
|
|
1577
|
+
output_path="t2va.mp4", fps=24, audio_sample_rate=32000,
|
|
1578
|
+
)
|
|
1579
|
+
```
|
|
1580
|
+
|
|
1581
|
+
</details>
|
|
1582
|
+
|
|
1583
|
+
<details>
|
|
1584
|
+
|
|
1585
|
+
<summary>Examples</summary>
|
|
1586
|
+
|
|
1587
|
+
Example code for MiniMax-H3 is available at: [/examples/minimax_h3/](/examples/minimax_h3/)
|
|
1588
|
+
|
|
1589
|
+
| Model ID | Inference | Low VRAM Inference | Full Training | Full Training Validation | LoRA Training | LoRA Training Validation |
|
|
1590
|
+
|-|-|-|-|-|-|-|
|
|
1591
|
+
|[MiniMax/MiniMax-H3: FL2VA](https://www.modelscope.cn/models/MiniMax/MiniMax-H3)|[code](/examples/minimax_h3/model_inference/MiniMax-H3-FL2VA.py)|[code](/examples/minimax_h3/model_inference_low_vram/MiniMax-H3-FL2VA.py)|[code](/examples/minimax_h3/model_training/full/MiniMax-H3-FL2VA.sh)|[code](/examples/minimax_h3/model_training/validate_full/MiniMax-H3-FL2VA.py)|[code](/examples/minimax_h3/model_training/lora/MiniMax-H3-FL2VA.sh)|[code](/examples/minimax_h3/model_training/validate_lora/MiniMax-H3-FL2VA.py)|
|
|
1592
|
+
|[MiniMax/MiniMax-H3: Ref2VA](https://www.modelscope.cn/models/MiniMax/MiniMax-H3)|[code](/examples/minimax_h3/model_inference/MiniMax-H3-Ref2VA.py)|[code](/examples/minimax_h3/model_inference_low_vram/MiniMax-H3-Ref2VA.py)|[code](/examples/minimax_h3/model_training/full/MiniMax-H3-Ref2VA.sh)|[code](/examples/minimax_h3/model_training/validate_full/MiniMax-H3-Ref2VA.py)|[code](/examples/minimax_h3/model_training/lora/MiniMax-H3-Ref2VA.sh)|[code](/examples/minimax_h3/model_training/validate_lora/MiniMax-H3-Ref2VA.py)|
|
|
1593
|
+
|[MiniMax/MiniMax-H3: Retake](https://www.modelscope.cn/models/MiniMax/MiniMax-H3)|[code](/examples/minimax_h3/model_inference/MiniMax-H3-Retake.py)|[code](/examples/minimax_h3/model_inference_low_vram/MiniMax-H3-Retake.py)|-|-|-|-|
|
|
1594
|
+
|[DiffSynth-Studio/MiniMax-H3-NF4: FL2VA](https://www.modelscope.cn/models/DiffSynth-Studio/MiniMax-H3-NF4)|[code](/examples/minimax_h3/model_inference/MiniMax-H3-NF4-FL2VA.py)|[code](/examples/minimax_h3/model_inference_low_vram/MiniMax-H3-NF4-FL2VA.py)|-|-|[code](/examples/minimax_h3/model_training/lora/MiniMax-H3-NF4-FL2VA.sh)|[code](/examples/minimax_h3/model_training/validate_lora/MiniMax-H3-NF4-FL2VA.py)|
|
|
1595
|
+
|[DiffSynth-Studio/MiniMax-H3-NF4: Ref2VA](https://www.modelscope.cn/models/DiffSynth-Studio/MiniMax-H3-NF4)|[code](/examples/minimax_h3/model_inference/MiniMax-H3-NF4-Ref2VA.py)|[code](/examples/minimax_h3/model_inference_low_vram/MiniMax-H3-NF4-Ref2VA.py)|-|-|[code](/examples/minimax_h3/model_training/lora/MiniMax-H3-NF4-Ref2VA.sh)|[code](/examples/minimax_h3/model_training/validate_lora/MiniMax-H3-NF4-Ref2VA.py)|
|
|
1447
1596
|
|
|
1448
1597
|
</details>
|
|
1449
1598
|
|
|
@@ -81,6 +81,13 @@ qwen_image_series = [
|
|
|
81
81
|
]
|
|
82
82
|
|
|
83
83
|
wan_series = [
|
|
84
|
+
{
|
|
85
|
+
# Example: ModelConfig(model_id="Wan-AI/Wan2.2-Animate-2-14B", origin_file_pattern="wan_animate_2/wan_animate_2_bf16.safetensors")
|
|
86
|
+
"model_hash": "4536c21ad8740ba78367af4216ae85bf",
|
|
87
|
+
"model_name": "wan_video_dit",
|
|
88
|
+
"model_class": "diffsynth.models.wan_animate_2_dit.WanAnimate2Transformer",
|
|
89
|
+
"extra_kwargs": {},
|
|
90
|
+
},
|
|
84
91
|
{
|
|
85
92
|
# Example: ModelConfig(model_id="krea/krea-realtime-video", origin_file_pattern="krea-realtime-video-14b.safetensors")
|
|
86
93
|
"model_hash": "5ec04e02b42d2580483ad69f4e76346a",
|
|
@@ -1268,14 +1275,37 @@ ideogram4_series = [
|
|
|
1268
1275
|
"model_hash": "6f56a1d28667f2ff98e1c79af88a7516",
|
|
1269
1276
|
"model_name": "ideogram4_dit",
|
|
1270
1277
|
"model_class": "diffsynth.models.ideogram4_dit.Ideogram4DiT",
|
|
1271
|
-
|
|
1278
|
+
# The checkpoint already holds fp8 weights; the backend that reads its layout is
|
|
1279
|
+
# registered next to the model, in `diffsynth.models.ideogram4_dit`.
|
|
1280
|
+
"quant_config": {"method": "ideogram4_fp8", "load_prequantized": True},
|
|
1281
|
+
"extra_kwargs": {"config": {"emb_dim": 4608, "num_layers": 34, "num_heads": 18, "intermediate_size": 12288, "adanln_dim": 512, "in_channels": 128, "llm_features_dim": 53248, "rope_theta": 5000000, "mrope_section": [24, 20, 20], "norm_eps": 1e-05}},
|
|
1272
1282
|
},
|
|
1273
1283
|
{
|
|
1274
1284
|
# Example: ModelConfig(model_id="ideogram-ai/ideogram-4-fp8", origin_file_pattern="text_encoder/model.safetensors")
|
|
1275
1285
|
"model_hash": "6d72a86d1027baff87e2cf8fc523aab1",
|
|
1276
1286
|
"model_name": "ideogram4_text_encoder",
|
|
1277
1287
|
"model_class": "diffsynth.models.ideogram4_text_encoder.Ideogram4TextEncoder",
|
|
1278
|
-
"
|
|
1288
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.ideogram4_text_encoder.Ideogram4TextEncoderStateDictConverter",
|
|
1289
|
+
# Quantized just like the DiT of the same release, and read by the same backend.
|
|
1290
|
+
"quant_config": {"method": "ideogram4_fp8", "load_prequantized": True},
|
|
1291
|
+
},
|
|
1292
|
+
{
|
|
1293
|
+
# Example: ModelConfig(model_id="ideogram-ai/ideogram-4-nf4", origin_file_pattern="transformer/diffusion_pytorch_model.safetensors")
|
|
1294
|
+
# The same file also serves as `unconditional_transformer/diffusion_pytorch_model.safetensors`.
|
|
1295
|
+
"model_hash": "61962d4376a8957f96d807047bc6f780",
|
|
1296
|
+
"model_name": "ideogram4_dit",
|
|
1297
|
+
"model_class": "diffsynth.models.ideogram4_dit.Ideogram4DiT",
|
|
1298
|
+
# bnb's own 4bit layout, written without double quantization.
|
|
1299
|
+
"quant_config": {"method": "bitsandbytes_nf4", "load_prequantized": True, "backend_config_kwargs": {"compress_statistics": False}},
|
|
1300
|
+
"extra_kwargs": {"config": {"emb_dim": 4608, "num_layers": 34, "num_heads": 18, "intermediate_size": 12288, "adanln_dim": 512, "in_channels": 128, "llm_features_dim": 53248, "rope_theta": 5000000, "mrope_section": [24, 20, 20], "norm_eps": 1e-05}},
|
|
1301
|
+
},
|
|
1302
|
+
{
|
|
1303
|
+
# Example: ModelConfig(model_id="ideogram-ai/ideogram-4-nf4", origin_file_pattern="text_encoder/model.safetensors")
|
|
1304
|
+
"model_hash": "c14b8f1328a87ffdba145431277d133a",
|
|
1305
|
+
"model_name": "ideogram4_text_encoder",
|
|
1306
|
+
"model_class": "diffsynth.models.ideogram4_text_encoder.Ideogram4TextEncoder",
|
|
1307
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.ideogram4_text_encoder.Ideogram4TextEncoderStateDictConverter",
|
|
1308
|
+
"quant_config": {"method": "bitsandbytes_nf4", "load_prequantized": True, "backend_config_kwargs": {"compress_statistics": False}},
|
|
1279
1309
|
},
|
|
1280
1310
|
{
|
|
1281
1311
|
# Example: ModelConfig(model_id="DiffSynth-Studio/ideogram-4-bf16-repackage", origin_file_pattern="transformer/diffusion_pytorch_model.safetensors")
|
|
@@ -1289,6 +1319,7 @@ ideogram4_series = [
|
|
|
1289
1319
|
"model_hash": "6a269892c0757aacd46bd41b8d5a7aef",
|
|
1290
1320
|
"model_name": "ideogram4_text_encoder",
|
|
1291
1321
|
"model_class": "diffsynth.models.ideogram4_text_encoder.Ideogram4TextEncoder",
|
|
1322
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.ideogram4_text_encoder.Ideogram4TextEncoderStateDictConverter",
|
|
1292
1323
|
},
|
|
1293
1324
|
]
|
|
1294
1325
|
|
|
@@ -1322,8 +1353,94 @@ krea2_series = [
|
|
|
1322
1353
|
},
|
|
1323
1354
|
]
|
|
1324
1355
|
|
|
1356
|
+
lingbot_video_series = [
|
|
1357
|
+
{
|
|
1358
|
+
# Example: ModelConfig(model_id="Robbyant/lingbot-video-dense-1.3b", origin_file_pattern="transformer/diffusion_pytorch_model.safetensors")
|
|
1359
|
+
"model_hash": "2bcf511fe5e0000519394d242b4d8abd",
|
|
1360
|
+
"model_name": "lingbot_video_dit",
|
|
1361
|
+
"model_class": "diffsynth.models.lingbot_video_dit.LingBotVideoDiT",
|
|
1362
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.lingbot_video_dit.LingBotVideoDiTStateDictConverter",
|
|
1363
|
+
},
|
|
1364
|
+
{
|
|
1365
|
+
# Example: ModelConfig(model_id="Robbyant/lingbot-video-moe-30b-a3b", origin_file_pattern="transformer/diffusion_pytorch_model*.safetensors")
|
|
1366
|
+
"model_hash": "65b83aa625cd362ff5ff3409fb367a6f",
|
|
1367
|
+
"model_name": "lingbot_video_dit",
|
|
1368
|
+
"model_class": "diffsynth.models.lingbot_video_dit.LingBotVideoDiT",
|
|
1369
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.lingbot_video_dit.LingBotVideoDiTStateDictConverter",
|
|
1370
|
+
"extra_kwargs": {'depth': 48, 'axes_lens': (4096, 512, 512), 'num_experts': 128, 'moe_intermediate_size': 768, 'n_group': 4, 'topk_group': 2, 'n_shared_experts': 1, 'routed_scaling_factor': 2.5},
|
|
1371
|
+
},
|
|
1372
|
+
]
|
|
1373
|
+
|
|
1374
|
+
minimax_h3_series = [
|
|
1375
|
+
{
|
|
1376
|
+
# Example: ModelConfig(model_id="MiniMax/MiniMax-H3-FL2VA", origin_file_pattern="audio_vae/model.safetensors")
|
|
1377
|
+
"model_hash": "db383f1c8960837b94059f7722e6cb11",
|
|
1378
|
+
"model_name": "minimax_h3_audio_vae",
|
|
1379
|
+
"model_class": "diffsynth.models.minimax_h3_audio_vae.MiniMaxH3AudioVAE",
|
|
1380
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.minimax_h3_audio_vae.MiniMaxH3AudioVAEStateDictConverter"
|
|
1381
|
+
},
|
|
1382
|
+
{
|
|
1383
|
+
# Example: ModelConfig(model_id="MiniMax/MiniMax-H3-FL2VA", origin_file_pattern="text_encoder/model*.safetensors")
|
|
1384
|
+
"model_hash": "8398104725e58fa8287c163c5c332686",
|
|
1385
|
+
"model_name": "minimax_h3_text_encoder",
|
|
1386
|
+
"model_class": "diffsynth.models.minimax_h3_text_encoder.MiniMaxH3TextEncoder",
|
|
1387
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.minimax_h3_text_encoder.MiniMaxH3TextEncoderStateDictConverter",
|
|
1388
|
+
},
|
|
1389
|
+
{
|
|
1390
|
+
# Example: ModelConfig(model_id="DiffSynth-Studio/MiniMax-H3-NF4", origin_file_pattern="minimax-h3-text-encoder-nf4.safetensors")
|
|
1391
|
+
"model_hash": "297933c3a2b0fc4d4dfee30e34c566b8",
|
|
1392
|
+
"model_name": "minimax_h3_text_encoder",
|
|
1393
|
+
"model_class": "diffsynth.models.minimax_h3_text_encoder.MiniMaxH3TextEncoder",
|
|
1394
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.minimax_h3_text_encoder.MiniMaxH3TextEncoderStateDictConverter",
|
|
1395
|
+
"quant_config": {"method": "bitsandbytes_nf4", "load_prequantized": True, "exclude_modules": ["qkv", "proj", "linear_fc1", "linear_fc2"]},
|
|
1396
|
+
},
|
|
1397
|
+
{
|
|
1398
|
+
# Example: ModelConfig(model_id="MiniMax/MiniMax-H3", origin_file_pattern="FL2VA/transformer/model*.safetensors")
|
|
1399
|
+
"model_hash": "db0197b6919425a5c7102c54e73affc1",
|
|
1400
|
+
"model_name": "minimax_h3_dit",
|
|
1401
|
+
"model_class": "diffsynth.models.minimax_h3_dit.MiniMaxH3DiT",
|
|
1402
|
+
},
|
|
1403
|
+
{
|
|
1404
|
+
# Example: ModelConfig(model_id="DiffSynth-Studio/MiniMax-H3-NF4", origin_file_pattern="minimax-h3-fl2va-nf4.safetensors")
|
|
1405
|
+
"model_hash": "4b27efacefbc4d8670e0d7b876699648",
|
|
1406
|
+
"model_name": "minimax_h3_dit",
|
|
1407
|
+
"model_class": "diffsynth.models.minimax_h3_dit.MiniMaxH3DiT",
|
|
1408
|
+
"quant_config": {"method": "bitsandbytes_nf4", "load_prequantized": True, "exclude_modules": ["time_embedder.proj_in", "time_embedder.proj_out", "video_patch_proj", "audio_patch_proj", "condition_proj", "final_layer.video_out", "final_layer.audio_out"]},
|
|
1409
|
+
},
|
|
1410
|
+
{
|
|
1411
|
+
# Example: ModelConfig(model_id="DiffSynth-Studio/MiniMax-H3-NF4", origin_file_pattern="minimax-h3-ref2va-nf4.safetensors")
|
|
1412
|
+
"model_hash": "ae44c4b18f5eea35d533bf9ca7b529ae",
|
|
1413
|
+
"model_name": "minimax_h3_dit",
|
|
1414
|
+
"model_class": "diffsynth.models.minimax_h3_dit.MiniMaxH3DiT",
|
|
1415
|
+
"quant_config": {"method": "bitsandbytes_nf4", "load_prequantized": True, "exclude_modules": ["time_embedder.proj_in", "time_embedder.proj_out", "video_patch_proj", "audio_patch_proj", "condition_proj", "final_layer.video_out", "final_layer.audio_out"]},
|
|
1416
|
+
},
|
|
1417
|
+
{
|
|
1418
|
+
# Example: ModelConfig(model_id="MiniMax/MiniMax-H3-FL2VA", origin_file_pattern="video_vae/source/model.safetensors")
|
|
1419
|
+
"model_hash": "24b80900992e2024fab17c991c57da23",
|
|
1420
|
+
"model_name": "minimax_h3_video_vae",
|
|
1421
|
+
"model_class": "diffsynth.models.minimax_h3_video_vae.MiniMaxH3VideoVAE",
|
|
1422
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.minimax_h3_video_vae.MiniMaxH3VideoVAEStateDictConverter",
|
|
1423
|
+
},
|
|
1424
|
+
{
|
|
1425
|
+
# Example: ModelConfig(model_id="DiffSynth-Studio/MiniMax-H3-NF4", origin_file_pattern="video_vae_nf4.safetensors")
|
|
1426
|
+
"model_hash": "204819338f4fa12936684eeda37fdf71",
|
|
1427
|
+
"model_name": "minimax_h3_video_vae",
|
|
1428
|
+
"model_class": "diffsynth.models.minimax_h3_video_vae.MiniMaxH3VideoVAE",
|
|
1429
|
+
"quant_config": {"method": "bitsandbytes_nf4", "load_prequantized": True, "exclude_modules": ["decoder.x_embedder"]},
|
|
1430
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.minimax_h3_video_vae.MiniMaxH3VideoVAEStateDictConverter",
|
|
1431
|
+
},
|
|
1432
|
+
{
|
|
1433
|
+
# Example: ModelConfig(model_id="DiffSynth-Studio/MiniMax-H3-NF4", origin_file_pattern="audio_vae_nf4.safetensors")
|
|
1434
|
+
"model_hash": "925ae768f8f4a9daa902b789de2ad2dc",
|
|
1435
|
+
"model_name": "minimax_h3_audio_vae",
|
|
1436
|
+
"model_class": "diffsynth.models.minimax_h3_audio_vae.MiniMaxH3AudioVAE",
|
|
1437
|
+
"quant_config": {"method": "bitsandbytes_nf4", "load_prequantized": True},
|
|
1438
|
+
"state_dict_converter": "diffsynth.utils.state_dict_converters.minimax_h3_audio_vae.MiniMaxH3AudioVAEStateDictConverter"
|
|
1439
|
+
},
|
|
1440
|
+
]
|
|
1441
|
+
|
|
1325
1442
|
MODEL_CONFIGS = (
|
|
1326
1443
|
stable_diffusion_xl_series + stable_diffusion_series + qwen_image_series + wan_series + flux_series + flux2_series + ernie_image_series
|
|
1327
1444
|
+ z_image_series + ltx2_series + anima_series + mova_series + joyai_image_series + boogu_image_series + ace_step_series + hidream_o1_image_series
|
|
1328
|
-
+ image_metrics_series + ideogram4_series + krea2_series
|
|
1445
|
+
+ image_metrics_series + ideogram4_series + krea2_series + lingbot_video_series + minimax_h3_series
|
|
1329
1446
|
)
|