o
    
۾i                     @   st   U d dl mZ d dlmZmZ d dlmZ erd dlmZ da	edB e
d< defdd	Zdefd
dZdddZdS )    )TYPE_CHECKING)ECConnectorBaseECConnectorRole)ECConnectorFactory)
VllmConfigN_EC_CONNECTOR_AGENTreturnc                   C   s   t d usJ dt S )Nz)disaggregated EC cache is not initializedr    r
   r
   b/home/ubuntu/.local/lib/python3.10/site-packages/vllm/distributed/ec_transfer/ec_transfer_state.pyget_ec_transfer   s   r   c                   C   s   t d uS )Nr	   r
   r
   r
   r   has_ec_transfer   s   r   vllm_configr   c                 C   s:   | j du rdS | j jrtdu rtj| tjdadS dS dS )z(
    Initialize EC cache connector.
    N)configrole)ec_transfer_configis_ec_transfer_instancer   r   create_connectorr   WORKER)r   r
   r
   r   ensure_ec_transfer_initialized   s   

r   )r   r   r   N)typingr   .vllm.distributed.ec_transfer.ec_connector.baser   r   1vllm.distributed.ec_transfer.ec_connector.factoryr   vllm.configr   r   __annotations__r   boolr   r   r
   r
   r
   r   <module>   s   