# Model loading hashes for the Wan/EverAnimate public release. MODEL_CONFIGS = [{'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': False, 'in_dim': 16, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '5ec04e02b42d2580483ad69f4e76346a', 'model_name': 'wan_video_dit', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_dit.WanVideoDiTStateDictConverter'}, {'model_class': 'diffsynth.models.wan_video_text_encoder.WanTextEncoder', 'model_hash': '9c8818c2cbea55eca56c7b447df170da', 'model_name': 'wan_video_text_encoder'}, {'model_class': 'diffsynth.models.wan_video_vae.WanVideoVAE', 'model_hash': 'ccc42284ea13e1ad04693284c7a09be6', 'model_name': 'wan_video_vae', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_vae.WanVideoVAEStateDictConverter'}, {'model_class': 'diffsynth.models.longcat_video_dit.LongCatVideoTransformer3DModel', 'model_hash': '8b27900f680d7251ce44e2dc8ae1ffef', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': True, 'in_dim': 36, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '5f90e66a0672219f12d9a626c8c21f61', 'model_name': 'wan_video_dit', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_dit.WanVideoDiTFromDiffusers'}, {'model_class': 'diffsynth.models.wan_video_mot.MotWanModel', 'model_hash': '5f90e66a0672219f12d9a626c8c21f61', 'model_name': 'wan_video_vap', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_mot.WanVideoMotStateDictConverter'}, {'model_class': 'diffsynth.models.wan_video_image_encoder.WanImageEncoder', 'model_hash': '5941c53e207d62f20f9025686193c40b', 'model_name': 'wan_video_image_encoder', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_image_encoder.WanImageEncoderStateDictConverter'}, {'model_class': 'diffsynth.models.wan_video_motion_controller.WanMotionControllerModel', 'model_hash': 'dbd5ec76bbf977983f972c151d545389', 'model_name': 'wan_video_motion_controller'}, {'extra_kwargs': {'dim': 1536, 'eps': 1e-06, 'ffn_dim': 8960, 'freq_dim': 256, 'has_image_input': False, 'in_dim': 16, 'num_heads': 12, 'num_layers': 30, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '9269f8db9040a9d860eaca435be61814', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': True, 'has_image_pos_emb': True, 'in_dim': 36, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '3ef3b1f8e1dab83d5b71fd7b617f859f', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 1536, 'eps': 1e-06, 'ffn_dim': 8960, 'freq_dim': 256, 'has_image_input': True, 'in_dim': 48, 'num_heads': 12, 'num_layers': 30, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '349723183fc063b2bfc10bb2835cf677', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 1536, 'eps': 1e-06, 'ffn_dim': 8960, 'freq_dim': 256, 'has_image_input': True, 'in_dim': 36, 'num_heads': 12, 'num_layers': 30, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '6d6ccde6845b95ad9114ab993d917893', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': True, 'in_dim': 48, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': 'efa44cddf936c70abd0ea28b6cbe946c', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': True, 'in_dim': 36, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '6bfcfb3b342cb286ce886889d519a77e', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'add_control_adapter': True, 'dim': 1536, 'eps': 1e-06, 'ffn_dim': 8960, 'freq_dim': 256, 'has_image_input': True, 'has_ref_conv': False, 'in_dim': 32, 'in_dim_control_adapter': 24, 'num_heads': 12, 'num_layers': 30, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': 'ac6a5aa74f4a0aab6f64eb9a72f19901', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 1536, 'eps': 1e-06, 'ffn_dim': 8960, 'freq_dim': 256, 'has_image_input': True, 'has_ref_conv': True, 'in_dim': 48, 'num_heads': 12, 'num_layers': 30, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '70ddad9d3a133785da5ea371aae09504', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'add_control_adapter': True, 'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': True, 'has_ref_conv': False, 'in_dim': 32, 'in_dim_control_adapter': 24, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': 'b61c605c2adbd23124d152ed28e049ae', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': True, 'has_ref_conv': True, 'in_dim': 48, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '26bde73488a92e64cc20b0a7485b9e5b', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': False, 'in_dim': 16, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': 'aafcfd9672c3a2456dc46e1cb6e52c70', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 1536, 'eps': 1e-06, 'ffn_dim': 8960, 'freq_dim': 256, 'has_image_input': False, 'in_dim': 16, 'num_heads': 12, 'num_layers': 30, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': 'a61453409b67cd3246cf0c3bebad47ba', 'model_name': 'wan_video_dit', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_dit.WanVideoDiTStateDictConverter'}, {'model_class': 'diffsynth.models.wan_video_vace.VaceWanModel', 'model_hash': 'a61453409b67cd3246cf0c3bebad47ba', 'model_name': 'wan_video_vace', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_vace.VaceWanModelDictConverter'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': False, 'in_dim': 16, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '7a513e1f257a861512b1afd387a8ecd9', 'model_name': 'wan_video_dit', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_dit.WanVideoDiTStateDictConverter'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'has_image_input': False, 'num_heads': 40, 'patch_size': (1, 2, 2), 'vace_in_dim': 96, 'vace_layers': (0, 5, 10, 15, 20, 25, 30, 35)}, 'model_class': 'diffsynth.models.wan_video_vace.VaceWanModel', 'model_hash': '7a513e1f257a861512b1afd387a8ecd9', 'model_name': 'wan_video_vace', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_vace.VaceWanModelDictConverter'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': True, 'in_dim': 36, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '31fa352acb8a1b1d33cd8764273d80a2', 'model_name': 'wan_video_dit', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_dit.WanVideoDiTStateDictConverter'}, {'model_class': 'diffsynth.models.wan_video_animate_adapter.WanAnimateAdapter', 'model_hash': '31fa352acb8a1b1d33cd8764273d80a2', 'model_name': 'wan_video_animate_adapter', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_animate_adapter.WanAnimateAdapterStateDictConverter'}, {'extra_kwargs': {'add_control_adapter': True, 'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': False, 'has_ref_conv': False, 'in_dim': 36, 'in_dim_control_adapter': 24, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'require_clip_embedding': False, 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '47dbeab5e560db3180adf51dc0232fb1', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': False, 'has_ref_conv': True, 'in_dim': 52, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'require_clip_embedding': False, 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '2267d489f0ceb9f21836532952852ee5', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'has_image_input': False, 'in_dim': 36, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': [1, 2, 2], 'require_clip_embedding': False, 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '5b013604280dd715f8457c6ed6d6a626', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'audio_dim': 1024, 'cond_dim': 16, 'dim': 5120, 'eps': 1e-06, 'ffn_dim': 13824, 'freq_dim': 256, 'in_dim': 16, 'num_audio_token': 4, 'num_heads': 40, 'num_layers': 40, 'out_dim': 16, 'patch_size': (1, 2, 2), 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit_s2v.WanS2VModel', 'model_hash': '966cffdcc52f9c46c391768b27637614', 'model_name': 'wan_video_dit'}, {'extra_kwargs': {'dim': 3072, 'eps': 1e-06, 'ffn_dim': 14336, 'freq_dim': 256, 'fuse_vae_embedding_in_latents': True, 'has_image_input': False, 'in_dim': 48, 'num_heads': 24, 'num_layers': 30, 'out_dim': 48, 'patch_size': [1, 2, 2], 'require_clip_embedding': False, 'require_vae_embedding': False, 'seperated_timestep': True, 'text_dim': 4096}, 'model_class': 'diffsynth.models.wan_video_dit.WanModel', 'model_hash': '1f5ab7703c6fc803fdded85ff040c316', 'model_name': 'wan_video_dit'}, {'model_class': 'diffsynth.models.wan_video_vae.WanVideoVAE38', 'model_hash': 'e1de6c02cdac79f8b739f4d3698cd216', 'model_name': 'wan_video_vae', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wan_video_vae.WanVideoVAEStateDictConverter'}, {'model_class': 'diffsynth.models.wav2vec.WanS2VAudioEncoder', 'model_hash': '06be60f3a4526586d8431cd038a71486', 'model_name': 'wans2v_audio_encoder', 'state_dict_converter': 'diffsynth.utils.state_dict_converters.wans2v_audio_encoder.WanS2VAudioEncoderStateDictConverter'}]