
    kh                     .    d dl Z d dlmZ ddededefdZy)    N)adaptive_clip_gradvaluemode	norm_typec                    |dk(  r-t         j                  j                  j                  | ||       y|dk(  r+t         j                  j                  j	                  | |       y|dk(  rt        | ||       yJ d| d       )a   Dispatch to gradient clipping method

    Args:
        parameters (Iterable): model parameters to clip
        value (float): clipping value/factor/norm, mode dependant
        mode (str): clipping mode, one of 'norm', 'value', 'agc'
        norm_type (float): p-norm, default 2.0
    norm)r   r   agczUnknown clip mode (z).N)torchnnutilsclip_grad_norm_clip_grad_value_r   )
parametersr   r   r   s       P/var/www/teggl/fontify/venv/lib/python3.12/site-packages/timm/utils/clip_grad.pydispatch_clip_gradr      sn     v~&&z5I&N	''
E:	:u	B4+D644u    )r   g       @)r
   timm.utils.agcr   floatstrr    r   r   <module>r      s&     -5% 5s 5PU 5r   