o
    * i                     @   s    G d d dZ G dd dZdS )c                   @   s   e Zd ZdZdZdZdS )JobModeZ
collectiveZpsZheterN)__name__
__module____qualname__
COLLECTIVEZPSZHETER r   r   m/home/app/PaddleOCR-VL-test/.venv_paddleocr/lib/python3.10/site-packages/paddle/distributed/launch/job/job.pyr      s    r   c                   @   s   e Zd ZdejdfddZdd Zedd Zed	d
 Z	edd Z
edd Zedd Zedd Zejdd ZdefddZdS )Jobdefault1c                 C   s:   || _ || _d| _| j| _| j| _d| _| t| d S )N    F)_mode_id	_replicas_replicas_min_replicas_max_elasticset_replicasstr)selfZjidmodennodesr   r   r   __init__   s   zJob.__init__c                 C   s4   d| j  d| j d| j d| j d| j d| j S )NzJob: z, mode z, replicas [:z], elastic )idr   r   r   r   elasticr   r   r   r   __str__"   s   4zJob.__str__c                 C      | j S N)r   r   r   r   r   r   %      zJob.modec                 C   r   r   )r   r   r   r   r   r   )   r    zJob.idc                 C   r   r   )r   r   r   r   r   r   -   r    zJob.elasticc                 C   r   r   r   r   r   r   r   replicas1   r    zJob.replicasc                 C   r   r   )r   r   r   r   r   replicas_min5   r    zJob.replicas_minc                 C   r   r   )r   r   r   r   r   replicas_max9   r    zJob.replicas_maxc                 C   s
   || _ d S r   r!   )r   r"   r   r   r   r"   =   s   
r   c                 C   sx   |rt |nd}d|v r)|d}t|d t|d | _| _| j| _d| _d S t|| _| j| j| _| _d| _d S )Nr
   r   r      TF)r   splitintr   r   r   r   )r   r   npZnpsr   r   r   r   A   s   




zJob.set_replicasN)r   r   r   r   r   r   r   propertyr   r   r   r"   r#   r$   setterr   r   r   r   r   r   r      s$    






r   N)r   r   r   r   r   r   <module>   s   