o
    پir	                     @   s6   d dl mZ d dlmZ d dlmZ G dd dZdS )    )Any)ModelConfig)
ServerArgsc                
   @   sD   e Zd Zdedeeef dededef
ddZede	fd	d
Z
dS )
DllmConfig	algorithmalgorithm_config
block_sizemask_idmax_running_requestsc                 C   s"   || _ || _|| _|| _|| _d S )Nr   r   r   r	   r
   )selfr   r   r   r	   r
    r   J/home/ubuntu/.local/lib/python3.10/site-packages/sglang/srt/dllm/config.py__init__   s
   
zDllmConfig.__init__server_argsc                 C   s  | j d u rd S tj| | j| jd}dddddddddd}|jjd }||v r7|| }|d	 }|d
 }ntd| | jd u rEdn| j}i }| j	d urzdd l
}	W n ty`   tdw t| j	d}
|	|
}W d    n1 sww   Y  |d	|}t| j ||||dS )N)
model_pathmodel_revision    id )r   r	      iuP )LLaDA2MoeModelLMSDARForCausalLMSDARMoeForCausalLMr   r   r	   zUnknown diffusion LLM:    zDPlease install PyYAML to use YAML config files. `pip install pyyaml`rr   )dllm_algorithmr   from_server_argsr   revision	hf_configarchitecturesRuntimeErrorr
   dllm_algorithm_configyamlImportErroropen	safe_loadgetr   )r   model_configDLLM_PARAMSarchparamsr   r	   r
   r   r!   fr   r   r   r      sR   



zDllmConfig.from_server_argsN)__name__
__module____qualname__strdictr   intr   staticmethodr   r   r   r   r   r   r      s     

r   N)typingr   sglang.srt.configs.model_configr   sglang.srt.server_argsr   r   r   r   r   r   <module>   s    