
    .`i}%                         d dl mZ d dlmZmZ d dlmZ  ee          Zde	e
ef         de	e
ef         defdZde	de	fd	Zde	de	fd
Zde	de	fdZde	de	fdZde	de	fdZde	de	fdZdS )    )Any)PretrainedConfigWhisperConfig)init_loggerconfig_dictdefaultsreturnc                     t                      t                               d                    rt                      t                               d                    }|o  d                             d          pddk    }                     d          dk    rdg d<   n{|rj|rht	                      d	 d<   d
g d<   d v s
J d            ddg}t           fd|D                       s J dd                    |                       n|rdg d<   ndg d<   t                               d                    rt                      t                               d                    r?ddg}t           fd|D                       s J dd                    |                                            d          pi                     d          p                     d          }t                               d          pi                     d          pi                     d                    }|r|r
J d            |rt                      |rt                      |
                                D ]\  }}                     ||           t          j                   }	t                              d|	           |	S )Nquantizationmoenum_shared_expertsr   
model_typemambaMamba2ForCausalLMarchitecturesdeepseek_v3MistralLarge3ForCausalLMllama_4_scalingz+MistralLarge3 expect llama4 scaling config. original_max_position_embeddingsbetac                 $    g | ]}|d          v S r    .0keyr   s     {/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/vllm/transformers_utils/configs/mistral.py
<listcomp>z%adapt_config_dict.<locals>.<listcomp>%   4        {#455      z/llama_4_scaling config should define the keys: ,MixtralForCausalLMMistralForCausalLMyarnc                 $    g | ]}|d          v S r   r   r   s     r   r   z%adapt_config_dict.<locals>.<listcomp>8   r   r    
multimodalvision_encoder_argsvision_encoderwhisper_model_argsencoder_argsz'Vision and audio are mutually exclusivezInitialized config %s)_remap_general_mistral_argsboolget _remap_mistral_quantization_args_remap_moe_argsalljoin_remap_mistral_yarn_args_remap_mistral_vision_args_remap_mistral_audio_argsitems
setdefaultr   	from_dictloggerdebug)
r   r   is_moeis_mistral_large_3llama_4_scaling_config_keys	is_visionis_audiokvconfigs
   `         r   adapt_config_dictrB      s    .k::KKOON++,, D6{CC+//%(())FJK&**+?@@EAJ  |$$//(;'<O$$	 >& >%k22$1L!(B'CO$ K///9 0// (J6&R#   6  
 
 	
 	
7xx3447 7	
 	
 
 	
 
 >(<'=O$$(<'=O$KOOF##$$ <.{;;KOO-..// 

'I6&R#   6  
 
 	
 	
7xx3447 7	
 	
 
 ..4"99  +	)	*	*  
//,
'
'
-2	2	23G	H	H	NBSS	
 	
 H RhRR)RRR' >0== =/<<   % %1q!$$$$'44F
LL(&111Mr    rA   c                    |                      d          r|                     d          }n|                     d          }|                      d          }ddgt          j        |           t          j        |          d} |r|| d<   | S )Nr&   r(   quantization_configpixtralPixtralForConditionalGeneration)r   r   text_configvision_config)r-   popr   r7   )rA   rH   quant_configs      r   r3   r3   [   s    zz, 5

<00

#344::344L;<'1&99)3MBB	 F  5(4$%Mr    c                 R   dddddd}|                      d          pi }ddd	| d
<   |                     dd           x}r|| d
         d<   |                                D ]'\  }}||v r|                    |          | d
         |<   (t          |          dk    sJ d|             | S )Nfactorr   	beta_fast	beta_slowapply_yarn_scaling)rL   r   r   alphaapply_scaler$      )	rope_typemscale_all_dimrope_parameters
rope_thetar   zUnparsed yarn config: )r-   rI   r5   len)rA   yarn_config_mapyarn_configrV   old_namenew_names         r   r2   r2   m   s    ,N+ O **V$$*K! !F
 ZZd333z =2< !,/-3355 L L({""2=//(2K2KF$%h/{q   "H;"H"H   Mr    c                 ,   ddddddd}dd	d
d|                      dd          fdd}|                                D ]!\  }}|| v r|                     |          | |<   "|                                D ]!\  }\  }}|                     ||          | |<   "| S )Nhidden_sizerms_norm_epsnum_key_value_headsnum_hidden_layersnum_attention_headsintermediate_size)dimnorm_eps
n_kv_headsn_layersn_heads
hidden_dim)r   transformer)
activationsilu)tied_embeddingsFmax_seq_lenmax_position_embeddings  )rn   ro   )r   
hidden_acttie_word_embeddingsrm   rn   r-   r5   rI   )rA   config_mappingtop_level_mapping_with_defaultr   new_keydefault_values         r   r+   r+      s     "+'() N 4,9%vzz2KW'U'UV#G& &" ',,.. . .W&==$jjooF7O)G)M)M)O)O 9 9%%#} **S-88wMr    c                     |                      d          rx|                     di           }|                     d          dk    r6|                     d          }|dv s
J d            |dk    }d|rd	nd
d| d<   nt          d| d          | S )Nr   qformat_weightfp8_e4m3qscheme_act)	NO_SCALESTENSORNzAOnly NO_SCALES and TENSOR (default) are supported for qscheme_actr{   fp8dynamicstatic)quant_methodactivation_schemerD   zFound unknown quantization='z' in config)r-   rI   
ValueError)rA   r   rz   
is_dynamics       r   r.   r.      s    zz.!! Wzz."55,--;;&**=99K"????S @?? %3J %2<%JYY(- -F())
 ULUUUVVVMr    c                    | d                              d          }|d         }|d         }|d         }|                    d          r|}||d         z  | d<   nd	}|                    d
d           }|d }n6|                                rt          |          }nt	          d|          |                    d          rdnd}|                     d          }	d|gt          j        |           t          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'         z  d(} |	r|	| d<   | S )*Nr&   r)   r*   downsample_argsdownsample_factorcausalrc   projection_sizerR   ragged_attentionz#Unsupported: _maybe_sliding_window=VoxtralStreamingGenerationVoxtralForConditionalGenerationrD   voxtralnum_mel_binsaudio_encoding_argswindow_sizesampling_rate
hop_lengthd_modelencoder_layersrf   encoder_ffn_dimrh   encoder_attention_headsrg   encoder_head_dimhead_dim
vocab_sizemax_source_positionsis_encoder_decoderF	is_causalsliding_windowblock_pool_size	pos_embed
sinusoidalrn   )r   r   rG   audio_configr   )rI   r-   isdigitintNotImplementedErrorr   r7   r   )
rA   whisper_argsr*   r   r   r   _maybe_sliding_windowr   architecturerJ   s
             r   r4   r4      s   ,'++,@AAL/L"#45O'(;<
 !! +$5U8K$K !!(,,-?FF$		&	&	(	( L233!"J2G"J"JKKK H%%	/$$.  ::344L&'1&99% 
 
 
%&;<^LL
$%:;MJJ
 ''<=oNN
 $$9:<HH	

 0/
 !''
 (
33
 )66
 %1$;$;
 **55
 $L11
 "..D!E!E
  %u
 #&&x777
 *>
  ,O!
" #&&{LAAA#
& %4f=V6W$W$W'
	 F4  5(4$%Mr    c           
          ddddddddd	d
	}|                      di           }|                                D ]#\  }}||v r|                    |          }|| |<   $d | d<   d| d<   d| d<   | S )Nmoe_layer_freqfirst_k_dense_replacenum_experts_per_tokn_routed_expertsmoe_intermediate_sizerouted_scaling_factorn_shared_expertsn_group
topk_group)	route_every_nr   r   num_expertsexpert_hidden_dimrouted_scaler   num_expert_groupsnum_expert_groups_per_tokr   topk_methodTnorm_topk_probsoftmaxscoring_funcrr   )rA   moe_config_map
moe_configrZ   r[   values         r   r/   r/      s    )!84)4/0&%1
 
N E2&&J,2244 % %(z!!NN8,,E$F8 F=#F&F>Mr    N)typingr   transformersr   r   vllm.loggerr   __name__r8   dictstrrB   r3   r2   r+   r.   r4   r/   r   r    r   <module>r      so         8 8 8 8 8 8 8 8 # # # # # #	X		Lc3hL38nL L L L L^t     $T d    4     :T d    &:d :t : : : :zD T      r    