
    i=w                       d dl mZ d dlmZ d dlmZ ddlmZmZm	Z	m
Z
mZmZmZ erddlmZ ddlmZ i dd	d
d	ddddddddddddddddddddddddddddddi dddddddddd d!d d"d d#d$d%d$d&d$d'd$d(d$d)d$d*d$d+d$d,d$d-d$d$d$d$d$d.d/d$d0d0d1	Zd2 Zd3ad4 Z	 d8	 	 	 	 	 	 	 d9d5Zd:d6Z	 	 	 d;	 	 	 	 	 	 	 	 	 d<d7Zy3)=    )annotations)deepcopy)TYPE_CHECKING   )ChunkConcatenate"ErnieFuseAndSplitTextVisionExpertsMergeModulelist	TransposeWeightConverterWeightRenamingPreTrainedModel)HfQuantizerminimaxmixtral
minimax_m2afmoe	qwen2_moedeepseek_v2deepseek_v3dots1ernie4_5_moeglm4_moeglm4_moe_liteglm_moe_dsa	glm4v_moelongcat_flash
solar_open	qwen3_moeqwen3_omni_moeqwen3_omni_moe_thinker
qwen3_nexthunyuan_v1_moe	flex_olmoolmoe
exaone_moe
rt_detr_v2rt_detrpp_doclayout_v2pp_doclayout_v3	paligemmallava
aya_visionfuyugot_ocr2shieldgemma2gemma3internvl
llava_nextllava_next_videollava_onevisionqwen2_vlsam3_trackerqwen3_5_text)	vipllavavideo_llavamistral3mllama
qwen2_5_vlsam3_tracker_videopp_chart2tablegemma3n_textqwen3_5_moe_textc            !        i dt        dd      t        dd      gdt        dd	      t        d
d      gdt        dd      t        dd      gdt        dd      gdt        dd      t        dd      gdt        dd      gdt        dd      t        dd      t        dd       t        d!d"      t        d#d$      t        d%d&      t        d'd(      t        d)d*      gd+t        d,d-      gd.t        d/d0      gd1t        d2d3      t        d4d5      gd6t        d7d8      t        d9d:      gd;t        d<d=      gd>t        d?d@      t        dAdB      gdCt        dDdE      t        dFdG      t        dHdI      gdJt        dKdL      t        dMdNgdOt        dPQ      t        dRQ      gS      t        dTgdUt        dPQ      gS      gdVt        dWdXgdYt        dPQ      t        dRQ      gS      t        dZd[t        dPQ      gS      gd\t        dYdYt	        dRd]d^_      gS      t        d[d[t	        dRd]d^_      gS      gt        dKdL      t        d`da      t        dMdNgdOt        dPQ      t        dRQ      gS      t        dTdUt        dPQ      gS      gt        dbdcgddt        dPQ      t        dRQ      gS      t        dedft        dPQ      gS      gt        dgdh      t        didj      t        dkdl      t        dmdn      t        dodp      t        dqdr      t        dsdt      t        dudv      t        dwdx      t        dydz      t        d{d|t	        dPdR}      gS      t        d~dt	        dPdR}      gS      t        dgddgt        dPQ      gS      t        dgddgt        dPdR      gS      t        ddgddgt        dPdR      gS      gt        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      gt        dd      t        dd      t        dd      t        dd      gg t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd«      t        ddī      t        ddƫ      t        ddȫ      t        ddʫ      t        dd̫      t        ddΫ      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      gt        dd      t        ddϫ      t        ddЫ      t        dd      gt        ddҫ      t        ddԫ      t        dgdt        dPQ      gS      t        dgdt        dPQ      gS      gt        ddgddt        dPQ      t        dRQ      gS      t        ddft        dPQ      gS      gt        ddݬ      t        dd߬      gt        dd      t        dd      t        dd      t        dd      t        dd      t        d5d      t        dd:      t        dd      t        dgg dt        dPQ      gS      g	t        dd      t        dd      t        dg dt        dPQ      gS      t        dd      t        dd:      t        dd      gd} | dxx   t        dd      t        dd      gz  cc<   t        dd      t        dWdXgdYt        dPQ      t        dRQ      gS      t        dZd[t        dPQ      gS      g| d<   | dJ   j                         | d<   | dxx   t        dd      gz  cc<   | dV   j                         | d<   | dxx   t        dd      gz  cc<   t        dWdXgdYt        dPQ      t        dRQ      gS      t        dZd[t        dPQ      gS      g| d<   t        d d      t        dd      t        dd      t        dd      t        dd	      t        d
d      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        dd      t        d d!      t        d"d#      t        d$d%      t        d&d'      t        d(d)      t        d*d+      t        d,d-      t        d.d/      t        d0d1      t        d2d3      t        d4d5      t        d6d7      t        d8d9      t        d:d;      g| d<<   t        j                         D ]   \  }}|| v r| |   j                         | |<   " | S (=  Nr-   zlanguage_model.modellanguage_modelsource_patternstarget_patternszlanguage_model.lm_headlm_heademu3ztext_model.model
text_modelztext_model.lm_headpaddleocr_vlmlp_ARzmodel.projectorz1^model(?!(\.visual|\.projector|\.language_model))zmodel.language_modelr7   z((?<!_)model(?!\.(language_model|visual))colqwen2z	vlm.modelvlmz vlm(?!\.(language_model|visual))zvlm.language_modeltimm_wrapperz(^(?!(?:model\.|backbone\.|tower\.))(.+)$ztimm_model.\1pi0
state_projzembed_action_time.state_projaction_in_projz embed_action_time.action_in_projaction_time_mlp_inz$embed_action_time.action_time_mlp_inaction_time_mlp_outz%embed_action_time.action_time_mlp_outz&^paligemma_with_expert.paligemma.modelz	model.vlmz)^paligemma_with_expert.gemma_expert.modelz	model.ditz+^paligemma_with_expert.gemma_expert.lm_headzmodel.dit.embed_tokensz(^paligemma_with_expert.paligemma.lm_headz%model.vlm.language_model.embed_tokensdinov3_convnextz(?<!model\.)stageszmodel.stages
dinov3_vitz(?<!model\.)layer.zmodel.layer.
timesfm2_5ff0fc1ff1fc2olmo_hybridattention_layer_norminput_layernormfeedforward_layer_normpost_attention_layernormr9   z^model.language_model.z^model.(?!language_model.)r8   z'detector_model.vision_encoder.backbone.zvision_encoder.backbone.ztracker_neck.zvision_encoder.neck.t5gemma2_encoderz-(?<!decoder\.)(?<!text_model\.)embed_tokens\.ztext_model.embed_tokens.z5(?<!decoder\.)(?<!text_model\.)(?<!layer)(?<!_)norm\.ztext_model.norm.zA(?<!vision_model.encoder\.)(?<!decoder\.)(?<!text_model\.)layers.ztext_model.layers.r   z.block_sparse_moe.z.mlp.z.experts.*.w1.weightz.experts.*.w3.weightz.experts.gate_up_projr   )dimr   )rF   rG   
operationsz.experts.*.w2.weightz.experts.down_projr   zmlp.experts.*.gate_proj.weightzmlp.experts.*.up_proj.weightzmlp.experts.gate_up_projzmlp.experts.*.down_proj.weightzmlp.experts.down_projqwen3_vl_moe   T)
check_dimsz.gate.weightz.router.weightz feed_forward.experts.*.w1.weightz feed_forward.experts.*.w3.weightz!feed_forward.experts.gate_up_projz feed_forward.experts.*.w2.weightzfeed_forward.experts.down_projvision_modelvision_towerzspatial_linear.0zspatial_linear.fc1zspatial_linear.2zspatial_linear.fc2zspatial_linear.3zspatial_linear.lnztemporal_linear.0ztemporal_linear.fc1ztemporal_linear.2ztemporal_linear.fc2ztemporal_linear.3ztemporal_linear.lnz!(?<!language_model\.)embed_tokenszlanguage_model.embed_tokensz(?<!language_model\.)layerszlanguage_model.layersz(?<!_)(?<!\w)norm\.zlanguage_model.norm.zmlp.gate.weight_1zmlp.vision_moe.gate.weight)dim0dim1zmlp.gate.weightzmlp.text_moe.gate.weightz'mlp.moe_statics.e_score_correction_biasz5mlp.text_moe.gate.moe_statics.e_score_correction_biasz7mlp.vision_moe.gate.moe_statics.e_score_correction_biaszexperts.*.down_proj.weightztext_moe.experts.down_projzvision_moe.experts.down_proj)	stack_dim
concat_dimzexperts.*.gate_proj.weightzexperts.*.up_proj.weightztext_moe.experts.gate_up_projzvision_moe.experts.gate_up_projzbackbone.conv_encoderbackboneout_projo_projzlayers.(\d+).fc1zlayers.\1.mlp.fc1zlayers.(\d+).fc2zlayers.\1.mlp.fc2zbbox_attention.q_linearzbbox_attention.q_projzbbox_attention.k_linearzbbox_attention.k_projzmask_head.lay1zmask_head.conv1.convzmask_head.gn1zmask_head.conv1.normzmask_head.lay2zmask_head.conv2.convzmask_head.gn2zmask_head.conv2.normzmask_head.adapter1z"mask_head.fpn_stages.0.fpn_adapterzmask_head.lay3z"mask_head.fpn_stages.0.refine.convzmask_head.gn3z"mask_head.fpn_stages.0.refine.normzmask_head.adapter2z"mask_head.fpn_stages.1.fpn_adapterzmask_head.lay4z"mask_head.fpn_stages.1.refine.convzmask_head.gn4z"mask_head.fpn_stages.1.refine.normzmask_head.adapter3z"mask_head.fpn_stages.2.fpn_adapterzmask_head.lay5z"mask_head.fpn_stages.2.refine.convzmask_head.gn5z"mask_head.fpn_stages.2.refine.normzmask_head.out_layzmask_head.output_convzencoder.encoder.(\d+).layerszencoder.aifi.\1.layerszself_attn.out_projzself_attn.o_projzencoder_attn.out_projzencoder_attn.o_projz%decoder.layers.(\d+).sa_qcontent_projz*decoder.layers.\1.self_attn.q_content_projz!decoder.layers.(\d+).sa_qpos_projz&decoder.layers.\1.self_attn.q_pos_projz%decoder.layers.(\d+).sa_kcontent_projz*decoder.layers.\1.self_attn.k_content_projz!decoder.layers.(\d+).sa_kpos_projz&decoder.layers.\1.self_attn.k_pos_projzdecoder.layers.(\d+).sa_v_projz"decoder.layers.\1.self_attn.v_projz%decoder.layers.(\d+).ca_qcontent_projz-decoder.layers.\1.encoder_attn.q_content_projz!decoder.layers.(\d+).ca_qpos_projz)decoder.layers.\1.encoder_attn.q_pos_projz%decoder.layers.(\d+).ca_kcontent_projz-decoder.layers.\1.encoder_attn.k_content_projz!decoder.layers.(\d+).ca_kpos_projz)decoder.layers.\1.encoder_attn.k_pos_projzdecoder.layers.(\d+).ca_v_projz%decoder.layers.\1.encoder_attn.v_projz&decoder.layers.(\d+).ca_qpos_sine_projz.decoder.layers.\1.encoder_attn.q_pos_sine_projzlayers.\1.mlp.layers.0zlayers.\1.mlp.layers.1z	backbone.zmodel.zembedding.weightzembeddings.weightzmixer.experts.*.up_proj.weightzmixer.experts.up_projz mixer.experts.*.down_proj.weightzmixer.experts.down_projz'feed_forward.experts.*.gate_proj.weightz%feed_forward.experts.*.up_proj.weightz'feed_forward.experts.*.down_proj.weightzLayerNorm.gammazLayerNorm.weightzLayerNorm.betazLayerNorm.biaszencoder.layerslayersemb_lnzembeddings.LayerNormzattn.out_projfc11up_projfc12	gate_proj	down_projnorm1norm2post_mlp_layernormz	attn.Wqkv)zself_attn.q_projzself_attn.k_projzself_attn.v_projz
mixer.Wqkvzmixer.out_proj)phimoelfm2_moeernie4_5_vl_moedetrr)   conditional_detrdeformable_detrd_fine
nemotron_hjambalegacy
nomic_bertjina_embeddings_v3r   z
.weight_g$z".parametrizations.weight.original0z
.weight_v$z".parametrizations.weight.original1z,mlp.gate.moe_statics.e_score_correction_biasr   r   z).block_sparse_moe.e_score_correction_biasz.mlp.e_score_correction_biasr'   zmlp.e_score_correction_biasz mlp.gate.e_score_correction_biasr   zencoder\.pre_encode\.conv\.zencoder.subsampling.layers.zencoder\.pre_encode\.out\.zencoder.subsampling.linear.z7transf_decoder\._embedding\.position_embedding\.pos_enczdecoder.pos_emb.weightz+transf_decoder\._embedding\.token_embeddingzdecoder.embed_tokensz&transf_decoder\._embedding\.layer_normzdecoder.embedding_layernormz*transf_decoder\._decoder\.final_layer_normzdecoder.normz transf_decoder\._decoder\.layerszdecoder.layerszencoder_decoder_proj\.zdecoder.proj.z"encoder\.(.+)\.self_attn\.linear_qzencoder.(.+).self_attn.q_projz"encoder\.(.+)\.self_attn\.linear_kzencoder.(.+).self_attn.k_projz"encoder\.(.+)\.self_attn\.linear_vzencoder.(.+).self_attn.v_projz$encoder\.(.+)\.self_attn\.linear_outzencoder.(.+).self_attn.o_projz$encoder\.(.+)\.self_attn\.linear_posz&encoder.(.+).self_attn.relative_k_projz$encoder\.(.+)\.self_attn\.pos_bias_uzencoder.(.+).self_attn.bias_uz$encoder\.(.+)\.self_attn\.pos_bias_vzencoder.(.+).self_attn.bias_vz\.first_sub_layer\.query_netz.self_attn.q_projz\.first_sub_layer\.key_netz.self_attn.k_projz\.first_sub_layer\.value_netz.self_attn.v_projz!\.first_sub_layer\.out_projectionz.self_attn.o_projz\.second_sub_layer\.query_netz.encoder_attn.q_projz\.second_sub_layer\.key_netz.encoder_attn.k_projz\.second_sub_layer\.value_netz.encoder_attn.v_projz"\.second_sub_layer\.out_projectionz.encoder_attn.o_projz\.third_sub_layer\.dense_inz.mlp.fc1z\.third_sub_layer\.dense_outz.mlp.fc2z\.layer_norm_1\.z.input_layernorm.z\.layer_norm_2\.z.post_attention_layernorm.z\.layer_norm_3\.z.final_layernorm.z\.conv\.batch_normz
.conv.normzlog_softmax\.mlp\.layer0proj_out
cohere_asr)
r   r   r
   r   r   r   r	   copy_MODEL_TO_CONVERSION_PATTERNitems)mapping
model_typebase_patterns      p/var/www/vps2.regionflexible.com/Desarrollo/venv/lib/python3.12/site-packages/transformers/conversion_mapping.py$_build_checkpoint_conversion_mappingr   U   s4   +BTde+DV_`

 	+>P\]+@R[\
 	9FWX T 6
  	 K]s
!* 	<O+N`tu
+2 	
  K 0	
3F 	=Jhi+<Npq 5Gm  6Ho +Tfqr+Witu N 8  K G!
Gp 	N+@/RSqr 	~&;_MNst 	5%(5%(
u| 	13DE35OP
}D 	 +DVst
EN 	 J\v +;Mcd	
OZ 	KMghSUgh_auv
[d 	/9**! !8#  A&	 *! !5#

eZ 	42! !;+2KA4FG  @ 7+23
[x 	 : :%at<=
  7 7%at<=
yR /9>+;<**! !8+2KA4FG  6 4+23
$ 66! !D+2KA4FG  B @+23
" >>:-/CD-/CD-/BC.0EF.0EF.0DE?A^_9;RS13IJ 3 <%1156
  1 :%1156
 !J KKM! "aL> != >02! ?WXYZ 0.!
 45! ?WXYZ
Q3
j 2J?:x0.0DE.0DE46MN46MN+-CD?,BC+-CD?,BC/1UV+-QR?,PQ/1UV+-QR?,PQ/1UV+-QR?,PQ.0GH-
2 :x0.0DE.0DE:<UV	
'
2J?'
/1CD'
 24IJ'
 .0DE	'

 .0DE'
 CErs'
 ?Ajk'
 CErs'
 ?Ajk'
 <>cd'
 CEuv'
 ?Amn'
 CEuv'
  ?Amn!'
" <>fg#'
$ 9;l%'
, 46MN-'
. 46MN/'
2 +-CD3'
4 ?,BC5'
6 +-CD7'
8 ?,BC9'
: /1UV;'
< +-QR='
> ?,PQ?'
@ /1UVA'
B +-QRC'
D ?,PQE'
F /1UVG'
H +-QRI'
J ?,PQK'
L .0GHM'
R 2J?/1CD.0DE.0DE	
 :x0.0IJ.0IJ:<UV	
 ;1-/BC4! !8+23 6! !:+23
& =;! !D+2KA4FG  I @+23
   1 2  0 0	
 ,i89&=>+-@A7J/7L16<08%@A% !,!
 "aL>
. 8E[\+;XV ,!
 "aL> +;M_`7D^_7DXY
_G@ H(@	
 	(@	
	 	 	@Bpq0. 7'A.0BC	
 	<3'A./	
GN  $I.335GLLBDbc  $K0557GLLn-JLnopp 	0. 7'A.0BC	
 	<3'A./	
GL" 	57UV46TUQSlmEG^_@B`aDoV:<MN02BC<>^_<>^_<>^_>@`a>@ij>@`a>@`a68LM46JK68LM;=QR79PQ57NO79PQ<>UV5{C6D*,@A*,IJ*,@A,m<2K@=GLB %A$F$F$H ; 
L %l388:
;
 N    Nc                ^    t         
t               a t        t         j                  |             S )N)$_checkpoint_conversion_mapping_cacher   r   get)r   s    r   !get_checkpoint_conversion_mappingr   4  s(    +3/S/U,8<<ZHIIr   c                h    t         
t               a | t         v r|st        d|  d      |t         | <   y )NzModel type z5 already exists in the checkpoint conversion mapping.)r   r   
ValueError)r   r   	overwrites      r   &register_checkpoint_conversion_mappingr   ;  s>     ,3/S/U,99);zl2ghii7>(4r   c                P    t        | j                  dd       }|t        |      }|S y )Nr   )getattrconfigr   )modelr   model_specific_conversionss      r   $extract_weight_conversions_for_modelr   H  s.    |T:J%Fz%R"))r   c                   ddl m} g }|-|j                         D cg c]  \  }}t        ||       }}}t	               }t        |       x}	6|j                  |	       |j                  | j                  j                         | j                         D ]q  }
|
| ust        |
|      s|
j                  j                  |vs.t        |
      }	|	<|j                  |	       |j                  |
j                  j                         s |r|j                  t        d             ||j                  |j                                |S c c}}w )z
    For a given `model`, obtain the weight conversion mapping if any are registered either as a simple renaming
    `_checkpoint_conversion_mapping` class argument, or in the general WeightConverter mapping.
    r   r   rE   r   )modeling_utilsr   r   r   setr   extendaddr   r   modules
isinstancer   get_weight_conversions)r   key_mappinghf_quantizer
add_legacyr   weight_conversionskvseen_model_typesconversions	submodules              r   get_model_conversion_mappingr   P  s?    0  _j_p_p_rsW[WXZ[nQPQRss
 u;EBBO!!+.U\\445 ]]_ 	B	U"9o6  ++3CC>yIK&"))+6 $$Y%5%5%@%@A	B !!"CH"MN !!,"E"E"GH; ts   E)F)r   strr   &list[WeightConverter | WeightRenaming]r   boolreturnNone)r   r   r   z-list[WeightConverter | WeightRenaming] | None)NNT)
r   r   r   zdict[str, str] | Noner   zHfQuantizer | Noner   r   r   r   )
__future__r   r   r   typingr   core_model_loadingr   r   r	   r
   r   r   r   r   r   
quantizersr   r   r   r   r   r   r   r    r   r   <module>r      s}   #      /'. y.  ). 
 [.  ;.  ;.  [.  K.  .  [.  ;.  .  [.  +.   !. " k#. $ k%. & +'. ( k). * +. , [-. . +/. 0 )1. 2 y3. 4 y5. 6 7. 8 '9. : G;. < =. > G?. @ gA. B C. D 'E. F G. H wI. J ("&[.  bYx (, $J 
?
?3
? 
? 
	
? *.'+	//&/ %/ 	/
 ,/r   