
    [Th                         S SK r S SKJrJrJr  S SKJr  S SKJrJ	r	  / SQr
\	\\\\S4   r " S S\\5      r\ " S S	5      5       r " S
 S\\5      r\ " S S5      5       rg)    N)asdict	dataclassfield)Enum)OptionalUnion)EventSourceEvent	NodeState	RdzvEventc                        \ rS rSrSrSrSrSrg)r	      z)Known identifiers of the event producers.AGENTWORKER N)__name__
__module____qualname____firstlineno____doc__r   r   __static_attributes__r       \/var/www/auris/envauris/lib/python3.13/site-packages/torch/distributed/elastic/events/api.pyr	   r	      s    3EFr   r	   c                       \ rS rSr% Sr\\S'   \\S'   Sr\	\S'   \
" \S9r\\\4   \S'   S	 r\S
\\S 4   SS 4S j5       rS\4S jrSrg)r
      a]  
The class represents the generic event that occurs during the torchelastic job execution.

The event can be any kind of meaningful action.

Args:
    name: event name.
    source: the event producer, e.g. agent or worker
    timestamp: timestamp in milliseconds when event occurred.
    metadata: additional data that is associated with the event.
namesourcer   	timestamp)default_factorymetadatac                 "    U R                  5       $ N	serializeselfs    r   __str__Event.__str__/       ~~r   datareturnc                     [        U [        5      (       a  U $ [        U [        5      (       a  [        R                  " U 5      n[
        WS      US'   [        S0 UD6$ )Nr   r   )
isinstancer
   strjsonloadsr	   r*   	data_dicts     r   deserializeEvent.deserialize2   sQ    dE""KdC  

4(I))H*=>	(!y!!r   c                 @    [         R                  " [        U 5      5      $ r"   r/   dumpsr   r%   s    r   r$   Event.serialize;       zz&,''r   r   N)r   r   r   r   r   r.   __annotations__r	   r   intr   dictr    EventMetadataValuer'   staticmethodr   r3   r$   r   r   r   r   r
   r
      st    
 IIs.3D.IHd3**+I  "%W- "' " "(3 (r   r
   c                   (    \ rS rSrSrSrSrSrSrSr	g)	r   ?   z,The states that a node can be in rendezvous.INITRUNNING	SUCCEEDEDFAILEDr   N)
r   r   r   r   r   rA   rB   rC   rD   r   r   r   r   r   r   ?   s    6DGIFr   r   c                       \ rS rSr% Sr\\S'   \\S'   \\S'   \\S'   \\S'   \\S'   S	r	\\S
'   Sr
\\   \S'   Sr\\   \S'   S	r\\S'   S r\S\\S 4   SS 4S j5       rS\4S jrSrg)r   H   aX  
Dataclass to represent any rendezvous event.

Args:
    name: Event name. (E.g. Current action being performed)
    run_id: The run id of the rendezvous
    message: The message describing the event
    hostname: Hostname of the node
    pid: The process id of the node
    node_state: The state of the node (INIT, RUNNING, SUCCEEDED, FAILED)
    master_endpoint: The master endpoint for the rendezvous store, if known
    rank: The rank of the node, if known
    local_id: The local_id of the node, if defined in dynamic_rendezvous.py
    error_trace: Error stack trace, if this is an error event.
r   run_idmessagehostnamepid
node_state master_endpointNranklocal_iderror_tracec                 "    U R                  5       $ r"   r#   r%   s    r   r'   RdzvEvent.__str__e   r)   r   r*   r+   c                     [        U [        5      (       a  U $ [        U [        5      (       a  [        R                  " U 5      n[
        WS      US'   [        S0 UD6$ )NrK   r   )r-   r   r.   r/   r0   r   r1   s     r   r3   RdzvEvent.deserializeh   sQ    dI&&KdC  

4(I"+Il,C"D	,%9%%r   c                 @    [         R                  " [        U 5      5      $ r"   r6   r%   s    r   r$   RdzvEvent.serializeq   r9   r   r   )r   r   r   r   r   r.   r:   r;   r   rM   rN   r   rO   rP   r'   r>   r   r3   r$   r   r   r   r   r   r   H   s      IKLM	HOSD(3-"Hhsm"K  &%[ 01 &k & &(3 (r   r   )r/   dataclassesr   r   r   enumr   typingr   r   __all__r.   r;   floatboolr=   r	   r
   r   r   r   r   r   <module>r]      s     0 0  " =3UD$67 #t  ( ( (DT  )( )( )(r   