§
    ÎÐj.#  ã                   óT   — d dl mZ ddlmZ d dlZd dlmZ ddhZ G d„ d	¦  «        ZdS )
é    )Ú
merge_helpé   )Úlongcat_helpN)Úbuild_hf_urlÚlongcat_avatarÚlongcat_avatar_v1_5c            	       ó(  — e Zd Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Z	ed„ ¦   «         Z
ed„ ¦   «         Zedd
„¦   «         Zedd	ej        ej        ddd	d	fd„¦   «         Zed„ ¦   «         Zd	S )Úfamily_handlerc                  ó
   — g d¢S )N)Úlongcat_videor   r   © r   ó    úFC:\Users\johnn\OneDrive\Documents\AI\models\longcat\longcat_handler.pyÚquery_supported_typesz$family_handler.query_supported_types   s   € àIÐIÐIÐIr   c                  ó
   — i i fS ©Nr   r   r   r   Úquery_family_mapsz family_handler.query_family_maps   s   € à�2ˆvˆr   c                  ó   — dS )NÚlongcatr   r   r   r   Úquery_model_familyz!family_handler.query_model_family   s   € àˆyr   c                  ó
   — ddiS )Nr   )é<   ÚLongCatr   r   r   r   Úquery_family_infosz!family_handler.query_family_infos   s   € à˜?Ð+Ð+r   c                 ó&   — | dk    rdS | dk    rdS dS )Nr   r   r   r   )Úbase_model_types    r   Úget_lora_dirzfamily_handler.get_lora_dir   s+   € àÐ.Ò.Ð.Ø#Ð#ØÐ3Ò3Ð3Ø(Ð(Øˆyr   c                 óî  — | dk    dddddddg d¢d	œ	}d
}t          d|d¦  «        t          d|d¦  «        g|d<   ||d<   | dk    r|                     ddgdœ¦  «         n{| t          v rr| dk    }|                     |rdnd| gddddddg d¢ddddœddgdddd œddd|rdnd!d"œ¦  «         |r/|                     d#gd$dd%d&d'd(d(t          d)dd*¦  «        d+œ	¦  «         t          |t	          | ¦  «        ¦  «        S ),Nr   Út2vé   é   Tr   ÚTSVL))z!Auto (Continuation = Enhanced HF)Úauto)ÚDefaultÚ )zEnhanced HFÚ
enhance_hf©ÚDistillÚdistill)	Údevice_explicitÚtiny_vae_architectureÚframes_minimumÚframes_stepsÚsliding_windowÚguidance_max_phasesÚimage_prompt_types_allowedÚvideo_continuationÚsample_solversúumt5-xxlúDeepBeepMeep/Wan2.1z'models_t5_umt5-xxl-enc-bf16.safetensorsz.models_t5_umt5-xxl-enc-quanto_int8.safetensorsÚtext_encoder_URLsÚtext_encoder_folderr   é   )ÚfpsÚprofiles_diré   é   zVoice to followzVoice to follow #2)ÚAÚXAÚCABÚPABr<   ÚVoicesé   )Ú	selectionÚdefaultÚlabelÚscale)úAnchor Reference ImageÚKIrG   FrF   )ÚchoicesÚletters_filterÚvisiblerD   é   )r8   r9   Úaudio_guide_labelÚaudio_guide2_labelÚaudio_guidanceÚany_audio_promptÚreturns_audioÚaudio_prompt_choicesÚaudio_prompt_type_sourcesÚspeaker_locationsÚimage_ref_choicesÚreference_image_enabledÚno_background_removalr0   Úaudio_strider'   r)   é   z9models/longcat/configs/longcat_avatar_v1_5_scheduler.jsonz/models/longcat/configs/longcat_avatar_v1_5.jsonúwhisper-large-v3úDeepBeepMeep/LongCatzdmd_lora.safetensors)	r2   Úsample_solverÚdistill_onlyÚnum_distill_sample_stepsÚscheduler_configÚtransformer_configÚaudio_encoder_typeÚaudio_encoder_folderÚdistill_lora_URL)r   ÚupdateÚLONGCAT_AVATAR_TYPESr   r   )r   Ú	model_defÚextra_model_defr6   Úis_v1_5s        r   Úquery_model_defzfamily_handler.query_model_def$   sâ  € ð  /Ð2GÒGØ%*ØØØ"Ø#$Ø*0Ø"&ðð ð ð
ð 
ˆð  )ÐåÐ.Ð0CÐEnÑoÔoÝÐ.Ð0CÐEuÑvÔvð0
ˆÐ+Ñ,ð 2EˆÐ-Ñ.à˜oÒ-Ð-Ø×"Ò"àØ%4Ð$5ðð ñô ð ð ð Õ 4Ð4Ð4Ø%Ð)>Ò>ˆGØ×"Ò"à!(Ð0˜2˜2¨bØ%4Ð$5Ø):Ø*>Ø&*Ø(,Ø%)Ø,0à%>Ð%>Ð%>Ø#&Ø!)Ø!"ð	2ð 2ð *.à%EÐ#FØ*.Ø#(Ø!9ð	*ð *ð 04Ø-1Ø28Ø)0Ð$7 A A°að3ð ñô ð ð: ð Ø×&Ò&à+AÐ*BØ)2Ø(,Ø45Ø,gØ._Ø.@Ø0BÝ,8Ð9OÐQfÐh~Ñ,Ô,ð
ð 
ñô ð õ ˜/­<¸Ñ+HÔ+HÑIÔIÐIr   c                 ó&   — | t           v rd|d<   d S d S )NrG   Úvideo_prompt_type)rd   )r   Úsettings_versionre   Úui_defaultss       r   Úfix_settingszfamily_handler.fix_settingsu   s'   € àÕ2Ð2Ð2Ø/3ˆKÐ+Ñ,Ð,Ð,ð 3Ð2r   c                 ó$   — ddl m}  |d¦  «        S )Nr   )Úget_rgb_factorsÚwan)Úshared.RGB_factorsro   )r   ro   s     r   ro   zfamily_handler.get_rgb_factorsz   s$   € à6Ð6Ð6Ð6Ð6Ð6àˆ˜uÑ%Ô%Ð%r   Nc                 óÈ   — ddgg d¢gdœg}|dk    r|                      ddgg d¢gdœ¦  «         n%d	d
lm} |                       |d¬¦  «        ¦  «         |ddgdggdœgz  }|S )Nr4   r3   )zspecial_tokens_map.jsonzspiece.modelztokenizer.jsonztokenizer_config.json)ÚrepoIdÚsourceFolderListÚfileListr   rZ   rY   )zconfig.jsonzgeneration_config.jsonzmodel.safetensorszpreprocessor_config.jsonr   )Úquery_download_defT)Úinclude_readmer%   zWan2.1_VAE_bf16.safetensors)ÚappendÚmodels.wan.multitalk.assetsrv   )ÚcomputeListr   re   Údownload_defrv   s        r   Úquery_model_filesz family_handler.query_model_files€   sÝ   € ð 0Ø%/ LØsÐsÐsÐtðð ð
ˆð Ð3Ò3Ð3Ø×Òà4Ø);Ð(<Ø!{Ð!{Ð!{Ð |ðð ñô ð ð ð GÐFÐFÐFÐFÐFØ×ÒÐ 2Ð 2À$Ð GÑ GÔ GÑHÔHÐHØà/Ø%' DØ;Ð<Ð=ðð ð
ñ 	
ˆð Ðr   Fc                 óÊ   — ddl m}  |d| |||||||||	¬¦  «        }|j        |j        |j        j        dœ}|j        �#t          |dd¦  «        dk    rd	nd
}|j        ||<   ||fS )Nr   )ÚLongCatModelÚckpts)Úcheckpoint_dirÚmodel_filenameÚ
model_typere   r   Útext_encoder_filenameÚquantizeTransformerÚdtypeÚ	VAE_dtypeÚmixed_precision_transformerÚsave_quantized)ÚtransformerÚvaeÚtext_encoderÚaudio_encoder_namer%   rY   ÚwhisperÚwav2vec)Úlongcat_mainr~   r‰   rŠ   r‹   ÚmodelÚaudio_encoderÚgetattr)r�   r‚   r   re   r„   Útext_encoder_quantizationr…   r†   r‡   rˆ   Úsubmodel_no_listrƒ   Úkwargsr~   Úlongcat_modelÚpipeÚ	audio_keys                    r   Ú
load_modelzfamily_handler.load_model�   sµ   € ð  	/Ð.Ð.Ð.Ð.Ð.à$˜Ø"Ø)Ø!ØØ+Ø"7Ø 3ØØØ(CØ)ð
ñ 
ô 
ˆð )Ô4Ø Ô$Ø)Ô6Ô<ð
ð 
ˆð
 Ô&Ð2Ý%,¨]Ð<PÐRTÑ%UÔ%UÐYkÒ%kÐ%k˜	˜	ÐqzˆIØ+Ô9ˆD�‰Oà˜dÐ"Ð"r   c                 óF  — | dk    r |                      dddddddddœ¦  «         d S |                      d	d
d	dddœ¦  «         | dk    r|                      ddi¦  «         | t          v r|                      dddœ¦  «         |                     dd¦  «        dk    rd|d<   d S d S )Nr   g      ð?rX   é   é]   r%   r)   )Úguidance_scaleÚnum_inference_stepsÚaudio_guidance_scaleÚsliding_window_overlapÚsliding_window_sizeÚvideo_lengthrj   r[   g      @é2   )r�   rž   rŸ   r    r¡   r   r¢   )r¢   rj   r[   r#   )rc   rd   Úget)r   re   rl   s      r   Úupdate_default_settingsz&family_handler.update_default_settingsÈ   sÿ   € àÐ3Ò3Ð3Ø×Òà&)Ø+,Ø,/Ø.0Ø+-Ø$&Ø)+Ø%.ð	ð 	ñô ð ð ˆFà×Òà"%Ø')Ø(+Ø*,Ø')ðð ñ	
ô 	
ð 	
ð ˜oÒ-Ð-Ø×Ò °Ð3Ñ4Ô4Ð4àÕ2Ð2Ð2Ø×Ò°ÈÐLÐLÑMÔMÐMà�?Š?˜?¨BÑ/Ô/°2Ò5Ð5Ø+1ˆK˜Ñ(Ð(Ð(ð 6Ð5r   r   )Ú__name__Ú
__module__Ú__qualname__Ústaticmethodr   r   r   r   r   rh   rm   ro   r|   ÚtorchÚbfloat16Úfloat32r™   r¥   r   r   r   r
   r
      sn  € € € € € ØðJð Jñ „\ðJð ðð ñ „\ðð ðð ñ „\ðð ð,ð ,ñ „\ð,ð ðð ñ „\ðð ðNJð NJñ „\ðNJð` ð4ð 4ñ „\ð4ð ð&ð &ñ „\ð&ð
 ðð ð ñ „\ðð8 ð "Ø"&ØŒnØ”-Ø$)ØØØ"ð(#ð (#ð (#ñ „\ð(#ðT ð 2ð  2ñ „\ð 2ð  2ð  2r   r
   )	Úmodels.help_sharedr   Úinfosr   rª   Úshared.utils.hfr   rd   r
   r   r   r   ú<module>r°      sŽ   ðà )Ð )Ð )Ð )Ð )Ð )Ø Ð Ð Ð Ð Ð Ø €€€Ø (Ð (Ð (Ð (Ð (Ð (ð )Ð*?Ð@Ð ð^2ð ^2ð ^2ð ^2ð ^2ñ ^2ô ^2ð ^2ð ^2ð ^2r   