+
    &j                         ^ RI Ht ^ RIt^ RIHt ^RIHtHtHtHtH	t	 . ROt
RR R lltR R ltRR	 R
 lltR R ltR R ltR R ltR R ltR R ltR R ltR# )    )IterableN)Tensor)
_lazy_call
_lazy_initcurrent_devicedevice_countis_initializedc                p    V ^8  d   QhR\         \        ,          \        P                  ,          R\        /# )   devicereturn)intstrtorchr   r   )formats   "i/Users/jameslopez/projects/CWCArchive/cwc-podcast/.venv/lib/python3.14/site-packages/torch/cuda/random.py__annotate__r      s'     ) )#)ell2 ) )    c                `   \        4        \        V \        4      '       d   \        P                  ! V 4      p M-\        V \
        4      '       d   \        P                  ! RV 4      p V P                  pVf   \        4       p\        P                  P                  V,          pVP                  4       # )a:  Return the random number generator state of the specified GPU as a ByteTensor.

Args:
    device (torch.device or int, optional): The device to return the RNG state of.
        Default: ``'cuda'`` (i.e., ``torch.device('cuda')``, the current CUDA device).

.. warning::
    This function eagerly initializes CUDA.
cuda)r   
isinstancer   r   r   r   indexr   r   default_generators	get_state)r   idxdefault_generators   &  r   get_rng_stater      s{     L&#f%	FC	 	 ff-
,,C
{

55c:&&((r   c                :    V ^8  d   QhR\         \        ,          /# r   r   )listr   )r   s   "r   r   r   -   s      4< r   c                 f    \        \        4       4       U u. uF  p \        V 4      NK  	  pp V# u up i )zQReturn a list of ByteTensor representing the random number states of all devices.)ranger   r   )iresultss     r   get_rng_state_allr%   -   s/    ).|~)>?)>A}Q)>G?N @s   .c                t    V ^8  d   QhR\         R\        \        ,          \        P                  ,          RR/# )r   	new_stater   r   N)r   r   r   r   r   )r   s   "r   r   r   3   s/      V S3Y-E SW r   c                  a a \        4       '       gP   \        P                  P                  4       ;_uu_ 4        S P	                  \        P
                  R7      o RRR4       \        S\        4      '       d   \        P                  ! S4      oM-\        S\        4      '       d   \        P                  ! RS4      oVV 3R lp\        V4       R#   + '       g   i     L~; i)a  Set the random number generator state of the specified GPU.

Args:
    new_state (torch.ByteTensor): The desired state
    device (torch.device or int, optional): The device to set the RNG state.
        Default: ``'cuda'`` (i.e., ``torch.device('cuda')``, the current CUDA device).
)memory_formatNr   c                     < SP                   p V f   \        4       p \        P                  P                  V ,          pVP                  S4       R # N)r   r   r   r   r   	set_state)r   r   r   r'   s     r   cbset_rng_state.<locals>.cbE   s<    ll; "C!JJ99#>##I.r   )r	   r   _C_DisableFuncTorchclonecontiguous_formatr   r   r   r   r   )r'   r   r-   s   ff r   set_rng_stater3   3   s     XX'')) "e6M6MNI * &#f%	FC	 	 ff-/ rN! *)s   !CC 	c                >    V ^8  d   QhR\         \        ,          RR/# )r   
new_statesr   N)r   r   )r   s   "r   r   r   O   s        (6"2  t  r   c                D    \        V 4       F  w  r\        W!4       K  	  R# )zSet the random number generator state of all devices.

Args:
    new_states (Iterable of torch.ByteTensor): The desired state for each device.
N)	enumerater3   )r5   r#   states   &  r   set_rng_state_allr9   O   s     j)e *r   c                (    V ^8  d   QhR\         RR/# r   seedr   Nr   )r   s   "r   r   r   Y   s      c d r   c                D   a  \        S 4      o V 3R lp\        VRR7       R# )am  Set the seed for generating random numbers for the current GPU.

It's safe to call this function if CUDA is not available; in that
case, it is silently ignored.

Args:
    seed (int): The desired seed.

.. warning::
    If you are working with a multi-GPU model, this function is insufficient
    to get determinism.  To seed all GPUs, use :func:`manual_seed_all`.
c                     < \        4       p \        P                  P                  V ,          pVP	                  S4       R # r+   )r   r   r   r   manual_seed)r   r   r<   s     r   r-   manual_seed.<locals>.cbh   s.    !JJ99#>%%d+r   T)r<   Nr   r   r<   r-   s   f r   r@   r@   Y   s     t9D,
 rr   c                (    V ^8  d   QhR\         RR/# r;   r=   )r   s   "r   r   r   p   s     " "# "$ "r   c                D   a  \        S 4      o V 3R lp\        VRR7       R# )zSet the seed for generating random numbers on all GPUs.

It's safe to call this function if CUDA is not available; in that
case, it is silently ignored.

Args:
    seed (int): The desired seed.
c                     < \        \        4       4       F5  p \        P                  P                  V ,          pVP                  S4       K7  	  R # r+   )r"   r   r   r   r   r@   )r#   r   r<   s     r   r-   manual_seed_all.<locals>.cb{   s7    |~&A %

 = =a @))$/ 'r   T)seed_allNrB   rC   s   f r   manual_seed_allrI   p   s     t9D0
 rD!r   c                    V ^8  d   QhRR/# r   r   N )r   s   "r   r   r      s      d r   c                 "    R p \        V 4       R# )a\  Set the seed for generating random numbers to a random number for the current GPU.

It's safe to call this function if CUDA is not available; in that
case, it is silently ignored.

.. warning::
    If you are working with a multi-GPU model, this function will only initialize
    the seed on one GPU.  To initialize all GPUs, use :func:`seed_all`.
c                  |    \        4       p \        P                  P                  V ,          pVP	                  4        R # r+   )r   r   r   r   r<   r   r   s     r   r-   seed.<locals>.cb   s+    !JJ99#> r   Nr   r-   s    r   r<   r<      s    !
 rNr   c                    V ^8  d   QhRR/# rK   rL   )r   s   "r   r   r      s      $ r   c                 "    R p \        V 4       R# )zSet the seed for generating random numbers to a random number on all GPUs.

It's safe to call this function if CUDA is not available; in that
case, it is silently ignored.
c                      ^ p Rp\        \        4       4       Fa  p\        P                  P                  V,          pV'       g%   VP                  4        VP                  4       p RpKP  VP                  V 4       Kc  	  R# )r   FTN)r"   r   r   r   r   r<   initial_seedr@   )random_seedseededr#   r   s       r   r-   seed_all.<locals>.cb   sb    |~&A %

 = =a @!&&(/<<>!--k: 'r   NrQ   rR   s    r   rH   rH      s    
; rNr   c                $    V ^8  d   QhR\         /# r   r=   )r   s   "r   r   r      s     	, 	,c 	,r   c                     \        4        \        4       p \        P                  P                  V ,          pVP                  4       # )zmReturn the current random seed of the current GPU.

.. warning::
    This function eagerly initializes CUDA.
)r   r   r   r   r   rV   rO   s     r   rV   rV      s5     L

C

55c:))++r   )	r   r%   r3   r9   r@   rI   r<   rH   rV   )r   )collections.abcr   r   r    r   r   r   r   r	   __all__r   r%   r3   r9   r@   rI   r<   rH   rV   rL   r   r   <module>r_      sH    $   R R
),8 ."&&,	,r   