ó
    pyüiÜ  ã                   óZ   • S r SSKJr  SSKJr  SSKJrJr  \R                  " \	5      r
S rg)z’
Liger Kernel integration for applying optimized Triton kernels to transformer models.

See https://github.com/linkedin/Liger-Kernel for details.
é   )ÚPreTrainedModel)Úunwrap_peft_model)Úis_liger_kernel_availableÚloggingc                 óÚ   • [        5       (       d  [        S5      eSSKJn  U=(       d    0 n[	        U 5      n[        U[        5      (       a  U" SSU0UD6  g[        R                  S5        g)aP  
Apply Liger Kernel optimizations to a model instance.

Liger Kernel provides optimized Triton kernels for common transformer operations.
This function patches the model in-place with those kernels.

Args:
    model: The model to patch. Must be a `PreTrainedModel` or a PEFT wrapper around one.
    kernel_config: Kernel configuration.
z‡You have set `use_liger_kernel` to `True` but liger-kernel >= 0.3.0 is not available. Please install it with `pip install liger-kernel`é    )Ú_apply_liger_kernel_to_instanceÚmodelzRThe model is not an instance of PreTrainedModel. No liger kernels will be applied.N© )	r   ÚImportErrorÚliger_kernel.transformersr	   r   Ú
isinstancer   ÚloggerÚwarning)r
   Úkernel_configr	   Ú
base_models       Ú\/home/mande/repo/quber/.venv/lib/python3.13/site-packages/transformers/integrations/liger.pyÚapply_liger_kernelr      sd   € ô %×&Ñ&Üð@ó
ð 	
õ
 Jà!×' R€MÜ" 5Ó)€Jä�*œo×.Ñ.Ù'ÑJ¨jÐJ¸MÓJä�‰ÐkÕló    N)Ú__doc__Úmodeling_utilsr   Útrainer_utilsr   Úutilsr   r   Ú
get_loggerÚ__name__r   r   r   r   r   Ú<module>r      s-   ðñõ -Ý -ß 6ð 
×	Ò	˜HÓ	%€ómr   