
    .`i	                         d dl mZ d dlmZ d dlmZmZmZmZ d dl	m
Z
mZ d dlmZ d dlmZ ddlmZ  ee          Z G d	 d
e          ZdS )    )Any)ModelConfig)ChatCompletionMessageParamConversationMessageparse_chat_messagesparse_chat_messages_async)
TextPromptTokensPrompt)init_logger)TokenizerLike   )RendererLikec                       e Zd Zedddeeef         ddfd            Zdeddf fdZ	e
dedz  fd	            Zdefd
Zdee         deee         eez  f         fdZdee         deee         eez  f         fdZ xZS )TerratorchRendererconfigr   tokenizer_kwargsreturnr   c                      | |          S N )clsr   r   s      m/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/vllm/renderers/terratorch.pyfrom_configzTerratorchRenderer.from_config   s     s6{{    Nc                     t                                                       || _        |j        st	          d          d S )Nz7Terratorch renderer requires `skip_tokenizer_init=True`)super__init__r   skip_tokenizer_init
ValueError)selfr   	__class__s     r   r   zTerratorchRenderer.__init__   sG    ) 	XVWWW	X 	Xr   c                     d S r   r   r    s    r   	tokenizerzTerratorchRenderer.tokenizer&   s    tr   c                      t          d          )Nz/Tokenizer not available for Terratorch renderer)r   r#   s    r   get_tokenizerz TerratorchRenderer.get_tokenizer*   s    JKKKr   messagesc                     | j         }t          ||d          \  }}}t          dg          }|||d<   |||d<   ||fS Nstring)content_formatr   )prompt_token_idsmulti_modal_datamulti_modal_uuids)r   r   r
   r    r'   kwargsmodel_configconversationmm_datamm_uuidsprompts           r   render_messagesz"TerratorchRenderer.render_messages-   sp    
 {*=#+
 +
 +
'gx s333)0F%&*2F&'V##r   c                    K   | j         }t          ||d           d {V \  }}}t          dg          }|||d<   |||d<   ||fS r)   )r   r   r
   r/   s           r   render_messages_asyncz(TerratorchRenderer.render_messages_asyncB   s      
 {0I#1
 1
 1
 +
 +
 +
 +
 +
 +
'gx s333)0F%&*2F&'V##r   )__name__
__module____qualname__classmethoddictstrr   r   r   r   propertyr   r$   r&   listr   tupler   r	   r
   r6   r8   __classcell__)r!   s   @r   r   r      sc        sCx. 
	   [X{ Xt X X X X X X =4/    XL} L L L L$12$ 
t'(*|*CC	D	$ $ $ $*$12$ 
t'(*|*CC	D	$ $ $ $ $ $ $ $r   r   N)typingr   vllm.configr   vllm.entrypoints.chat_utilsr   r   r   r   vllm.inputsr	   r
   vllm.loggerr   vllm.tokenizersr   protocolr   r9   loggerr   r   r   r   <module>rK      s         # # # # # #            1 0 0 0 0 0 0 0 # # # # # # ) ) ) ) ) ) " " " " " "	X		@$ @$ @$ @$ @$ @$ @$ @$ @$ @$r   