o
    bi                     @   sx  d dl mZ d dlZd dlZd dlZd dlmZ e  ee	Z
dd Ze  [d dlmZ ejZejZd dlZd dlmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z# e Z$d dl%m&Z&m'Z'm(Z(m)Z) d d	l*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z: d d
l;m<Z< d dl=Zd dl=m>Z> d dl?m@Z@mAZA d dlBmCZC d dlmDZD d dlmEZE d dlmFZF d dlGmHZHmIZI G dd dZJeJdejFjKZKeJdejFjLZLeJdejFjMZMeJdejFjNZNg dZOh dZPh dZQeReOePeQB ksJ d dlSmTZT eTeP [TeOg d7 ZOeOg d7 ZOer/d dlmUZU d dlmVZV d d lmWZW nd!eXfd"d#ZY[[[[dS )$    )logN)TYPE_CHECKINGc                  C   s\  dd l } dd l}dd l}	 d|jv rN|jdkrtd dd l}z|j	d}t
dd |dD }|dk r<td	 W n |jjyM   td
 Y nw | j| j| jtd}|jd| | dkr~d |  v r~ddlm} |  |jdkrdnd}| j| jtd| }	| j|	rdd l}
ddlm} ||	|
j d S d S )Nr   pickle5)      zPackage pickle5 becomes unnecessary in Python 3.8 and above. Its presence may confuse libraries including Ray. Please uninstall the package.c                 s   s    | ]}t |V  qd S N)int).0n r   @/home/ubuntu/.local/lib/python3.10/site-packages/ray/__init__.py	<genexpr>    s    z$_configure_system.<locals>.<genexpr>.)r   r   
   zAlthough not used by Ray, a version of pickle5 that leaks memory is found in the environment. Please run 'pip install pickle5 -U' to upgrade.zYou are using the 'pickle5' module, but the exact version is unknown (possibly carried as an internal component by another module). Please make sure you are using pickle5 >= 0.0.10 because previous versions may leak memory.thirdparty_filesLinux	Microsoft)compatwin32z.soz.pyd_raylet)CDLL)osplatformsysmodulesversion_infologgerwarningimportlib.metadatametadataversiontuplesplitPackageNotFoundErrorpathjoinabspathdirname__file__insertsystemlowerreleaseray._privater   patch_psutilexistsctypesr   RTLD_GLOBAL)r   r   r   	importlibversion_strr    r   r   python_shared_lib_suffixso_pathr0   r   r   r   r   _configure_system   sP   

r6   )_version)ActorClassIDActorIDNodeIDConfigJobIDWorkerID
FunctionIDObjectID	ObjectRefObjectRefGeneratorDynamicObjectRefGeneratorTaskIDUniqueIDLanguagePlacementGroupID	ClusterID)nodestimelinecluster_resourcesavailable_resources)
LOCAL_MODESCRIPT_MODEWORKER_MODERESTORE_WORKER_MODESPILL_WORKER_MODEcancelget	get_actorget_gpu_idsinitis_initializedputkillremoteshutdownwait)LoggingConfig)method)java_functionjava_actor_class)get_runtime_context)internal)util)_private)clientClientBuilderc                   @   s   e Zd Zdd Zdd ZdS )_DeprecationWrapperc                 C   s   || _ || _t | _d S r   )_name_real_workerset_warned)selfnamereal_workerr   r   r   __init__   s   z_DeprecationWrapper.__init__c                 C   s@   t | j|}|| jvr| j| td| j d| d |S )NzDeprecationWarning: `ray.r   zL` is a private attribute and access will be removed in a future Ray version.)getattrrh   rj   addr   r   rg   )rk   attrvaluer   r   r   __getattr__   s   
z_DeprecationWrapper.__getattr__N)__name__
__module____qualname__rn   rs   r   r   r   r   rf      s    rf   workerray_constantsserializationstate)__version___configr`   
autoscalerrK   rQ   rd   re   rJ   rR   rS   rT   rU   rV   r_   r^   cpp_functionrX   rE   r]   rH   rW   rY   rZ   show_in_dashboardrI   r[   rL   rM   rN   r\   >   rR   rW   rX   r[   rQ   rS   rT   r`   >   rU   rH   rd   r]   rY   r|   rE   rZ   rI   rL   r}   rM   rN   r{   r~   re   r\   r^   rV   r_   rJ   r   rK   )wrap_auto_init_for_all_apis)actorr}   datara   rb   widgetsworkflow)r8   r9   r:   r<   r=   r>   r?   r@   rA   rB   rC   rD   rF   )r}   )r   )r   rl   c                 C   s4   dd l }| dv r|d|  tS tdtd| )Nr   )r   r   r}   r   zmodule z has no attribute )r2   import_modulert   AttributeError)rl   r2   r   r   r   rs   %  s   rs   )Zr-   r   loggingr   r   typingr   generate_logging_config	getLoggerrt   r   r6   rayr7   commit
__commit__r    r{   ray._rayletr8   r9   r:   r;   _Configr<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   r|   ray._private.staterH   rI   rJ   rK   ray._private.workerrL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   'ray._private.ray_logging.logging_configr\   	ray.actorr]   ray.cross_languager^   r_   ray.runtime_contextr`   ra   rb   rc   ray.client_builderrd   re   rf   rw   rx   ry   rz   __all__AUTO_INIT_APISNON_AUTO_INIT_APISri   ray._private.auto_init_hookr   r}   r   r   strrs   r   r   r   r   <module>   sd   
@HH#