o
    :/Êi   ã                   @   sX   d dl mZmZ d dlmZ d dlmZ d dlmZ ddl	m
Z
mZ G dd„ de
ƒZd	S )
é    )ÚAnyÚcast)Ú
VllmConfig)ÚKimiAudioTokenizer)Úget_tokenizeré   )Ú
HfRendererÚHfTokenizerc                   @   s2   e Zd ZdZededeeef ddfdd„ƒZ	dS )	ÚKimiAudioRendererztRenderer for Kimi-Audio models.

    This renderer uses HfRenderer internally with a custom TikToken tokenizer.
    ÚconfigÚtokenizer_kwargsÚreturnr   c                 C   sV   |j }|jr	d}n| d|j¡}dd„ | ¡ D ƒ}ttt|fdti|¤Žƒ}t	||ƒS )z4Create an HfRenderer instance for Kimi-Audio models.NÚtokenizer_namec                 S   s   i | ]\}}|d kr||“qS )Útokenizer_cls© )Ú.0ÚkÚvr   r   úf/lsinfo/ai/hellotax_ai/llm_service/venv_vllm/lib/python3.10/site-packages/vllm/renderers/kimi_audio.pyÚ
<dictcomp>#   s    z1KimiAudioRenderer.from_config.<locals>.<dictcomp>r   )
Úmodel_configÚskip_tokenizer_initÚpopÚ	tokenizerÚitemsr   r	   r   r   r   )Úclsr   r   r   r   r   r   r   r   Úfrom_config   s(   ÿÿÿþýþ
	zKimiAudioRenderer.from_configN)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úclassmethodr   ÚdictÚstrr   r   r   r   r   r   r
      s    þ
ýür
   N)Útypingr   r   Úvllm.configr   Úvllm.tokenizers.kimi_audior   Úvllm.tokenizers.registryr   Úhfr   r	   r
   r   r   r   r   Ú<module>   s   