U Ad7 @s ddlmZddlZddlZddlmZddZeeeedddZ e d krddl Z e Z e jd d ed d e jddede jddedd e jdddddde ZejZedkrddlZejej\ZZejrdndZedeeZe ejejejedS)) OrderedDictN)SynthesizerTrncCs\t|ddrd}nd}t}|D](\}}d|d|d}|||<q.|S)Nrmodule,.)listkeys startswithritemsjoinsplit) state_dict start_idxZnew_state_dictkvnamer@C:\Green_Program_Files\So-VITS-SVC-Shengshuyan\compress_model.py copyStateDict s r)config input_modelishalf output_modelc st|}t|jjdd|jj|jjf|j}t j j | |jj |jj|jjd}t j|dd}t|g}dD]\} } d| krq||| q||rfdd |Dnfd d |Dt d |d d |dS)Nr)betasepscpu) map_locationmodelZenc_qcsi|]}|d|qSr)half.0rZ new_dict_grr (sz#removeOptimizer..csi|]}|d|qSr rr"r$rrr%(srg-C6?)r iteration optimizer learning_rate)utilsZget_hparams_from_filerdataZ filter_lengthtrainZ segment_size hop_lengthrtorchoptimAdamW parametersr(rrloadrr appendsaver) rrrrZhpsZnet_gZoptim_gZ state_dict_gr rrrr$rremoveOptimizers6   (r4__main__z-cz--configzconfigs/config.json)typedefaultz-iz--input)r6z-oz--outputz-hfz--half store_trueFz Save as FP16)actionr7helpZ_half_release) collectionsrr-r)modelsrrstrboolr4__name__argparseArgumentParserparser add_argument parse_argsargsoutputos.pathospathsplitextinputfilenameextr!rrrrrs0