§
    ŠŠtj>  ã                  ó.  — d dl mZ d dlZd dlZd dlZd dlmZ d dlmZm	Z	 d dl
mZmZ e	r
d dlZd dlmZ ej                             d¦  «        dk    r ed¦  «        d'd„¦   «         Znd'd„Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ d e¦  «        Z G d!„ d"e¦  «        Z G d#„ d$e¦  «        Z G d%„ d&e¦  «        ZdS )(é    )ÚannotationsN)Ú	lru_cache)ÚAnyÚTYPE_CHECKING)ÚBackendCompilerFailedÚShortenTraceback)Ú_CudaDevicePropertiesÚTORCHINDUCTOR_WRITE_MISSING_OPSÚ1Útargetr   ÚreturnÚNonec                óÊ   — t          t          j        ¦   «         › d�d¦  «        5 }|                     t	          | ¦  «        dz   ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz/missing_ops.txtÚaú
)ÚopenÚtempfileÚ
gettempdirÚwriteÚstr)r   Úfds     úQ/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/torch/_inductor/exc.pyÚ_record_missing_opr      s¢   € å•XÔ(Ñ*Ô*Ð<Ð<Ð<¸cÑBÔBð 	)ÀbØ�HŠH•S˜‘[”[ 4Ñ'Ñ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð 	)ð 	)s   ¥&AÁAÁAc                ó   — d S ©N© )r   s    r   r   r      s   € Øˆó    c                  ó&   — e Zd Zedd	„¦   «         Zd
S )ÚOperatorIssuer   r   Úargsú	list[Any]Úkwargsúdict[str, Any]r   r   c                óÆ   — d| › �gd„ t          |¦  «        D ¦   «         z   }|r|                     d|› �¦  «         t          j        d                     |¦  «        d¦  «        S )Nztarget: c                ó$   — g | ]\  }}d |› d|› �‘ŒS )zargs[z]: r   )Ú.0ÚiÚargs      r   ú
<listcomp>z.OperatorIssue.operator_str.<locals>.<listcomp>!   s:   € ð )
ð )
ð )
Ù$* A sÐ�AÐÐ˜#ÐÐð)
ð )
ð )
r   zkwargs: r   z  )Ú	enumerateÚappendÚtextwrapÚindentÚjoin)r   r    r"   Úliness       r   Úoperator_strzOperatorIssue.operator_str   s|   € à$˜FÐ$Ð$Ð%ð )
ð )
Ý.7¸©o¬oð)
ñ )
ô )
ñ 
ˆð ð 	.Ø�LŠLÐ, FÐ,Ð,Ñ-Ô-Ð-ÝŒ˜tŸyšy¨Ñ/Ô/°Ñ6Ô6Ð6r   N)r   r   r    r!   r"   r#   r   r   )Ú__name__Ú
__module__Ú__qualname__Ústaticmethodr0   r   r   r   r   r      s2   € € € € € Øð7ð 7ð 7ñ „\ð7ð 7ð 7r   r   c                  ó    ‡ — e Zd Zd
ˆ fd	„Zˆ xZS )ÚMissingOperatorWithoutDecompr   r   r    r!   r"   r#   r   r   c                ó˜   •— t          |¦  «         t          ¦   «                              d|                      |||¦  «        › �¦  «         d S )Nzmissing lowering
)r   ÚsuperÚ__init__r0   ©Úselfr   r    r"   Ú	__class__s       €r   r9   z%MissingOperatorWithoutDecomp.__init__*   sJ   ø€ Ý˜6Ñ"Ô"Ð"Ý‰Œ×ÒÐW¨d×.?Ò.?ÀÈÈfÑ.UÔ.UÐWÐWÑXÔXÐXÐXÐXr   ©r   r   r    r!   r"   r#   r   r   ©r1   r2   r3   r9   Ú__classcell__©r<   s   @r   r6   r6   )   sG   ø€ € € € € ðYð Yð Yð Yð Yð Yð Yð Yð Yð Yr   r6   c                  ó    ‡ — e Zd Zd
ˆ fd	„Zˆ xZS )ÚMissingOperatorWithDecompr   r   r    r!   r"   r#   r   r   c                óÊ   •— t          |¦  «         t          ¦   «                              d|                      |||¦  «        › �t	          j        d|› d�¦  «        z   ¦  «         d S )Nzmissing decomposition
z9

                There is a decomposition available for z° in
                torch._decomp.get_decompositions().  Please add this operator to the
                `decompositions` list in torch._inductor.decomposition
                )r   r8   r9   r0   r,   Údedentr:   s       €r   r9   z"MissingOperatorWithDecomp.__init__0   s   ø€ Ý˜6Ñ"Ô"Ð"Ý‰Œ×ÒØO d×&7Ò&7¸ÀÀfÑ&MÔ&MÐOÐOÝŒoðà8>ðð ð ñô ññ
	
ô 
	
ð 
	
ð 
	
ð 
	
r   r=   r>   r@   s   @r   rB   rB   /   s=   ø€ € € € € ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r   rB   c                  ó$   ‡ — e Zd Z	 ddˆ fd„Zˆ xZS )ÚLoweringExceptionNÚexcÚ	Exceptionr   r   r    r!   r"   r#   Ústack_traceú
str | Noner   r   c           	     óÄ   •— t          |¦  «        j        › d|› d|                      |||¦  «        › �}|r
||› d|› �z  }t          ¦   «                              |¦  «         d S )Nú: r   z
Found from : 
 )Útyper1   r0   r8   r9   )r;   rG   r   r    r"   rI   Úmsgr<   s          €r   r9   zLoweringException.__init__@   sy   ø€ õ �c‘”Ô#ÐWÐW sÐWÐW¨d×.?Ò.?ÀÈÈfÑ.UÔ.UÐWÐWˆØð 	;Ø�cÐ:Ð:¨[Ð:Ð:Ñ:ˆCÝ‰Œ×Ò˜ÑÔÐÐÐr   r   )rG   rH   r   r   r    r!   r"   r#   rI   rJ   r   r   r>   r@   s   @r   rF   rF   ?   sG   ø€ € € € € ð #'ðð ð ð ð ð ð ð ð ð ð r   rF   c                  ó   — e Zd ZdS )ÚSubgraphLoweringExceptionN©r1   r2   r3   r   r   r   rP   rP   N   ó   € € € € € Ø€Dr   rP   c                  ó"   ‡ — e Zd Zddˆ fd„Zˆ xZS )	ÚInvalidCxxCompilerNÚcompilerrJ   r   r   c                ó–   •— ddl m} |€d|j        › d|j        j        › �}nd|› d�}t          ¦   «                              |¦  «         d S )Né   )Úconfigz!No working C++ compiler found in z
.cpp.cxx: z
Compiler: z is not found.)Ú rX   r1   ÚcppÚcxxr8   r9   )r;   rU   rX   rN   r<   s       €r   r9   zInvalidCxxCompiler.__init__S   sv   ø€ ØÐÐÐÐÐàÐð$°F´Oð $ð $Ø”:”>ð$ð $ð ˆCð
 8˜xÐ7Ð7Ð7ˆCÝ‰Œ×Ò˜ÑÔÐÐÐr   r   )rU   rJ   r   r   r>   r@   s   @r   rT   rT   R   sB   ø€ € € € € ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r   rT   c                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )ÚCppWrapperCodegenErrorrN   r   r   r   c                óP   •— t          ¦   «                              d|› �¦  «         d S )NzC++ wrapper codegen error: ©r8   r9   )r;   rN   r<   s     €r   r9   zCppWrapperCodegenError.__init__a   s*   ø€ Ý‰Œ×ÒÐ<°sÐ<Ð<Ñ=Ô=Ð=Ð=Ð=r   )rN   r   r   r   r>   r@   s   @r   r]   r]   `   s=   ø€ € € € € ð>ð >ð >ð >ð >ð >ð >ð >ð >ð >r   r]   c                  ó(   ‡ — e Zd Zd
ˆ fd„Zdd	„Zˆ xZS )ÚCppCompileErrorÚcmdú	list[str]Úoutputr   r   r   c                óR  •— t          |t          ¦  «        r|                     d¦  «        }|| _        || _        t          ¦   «                              t          j        d¦  «         	                    ¦   «          
                    d                     |¦  «        |¬¦  «        ¦  «         d S )Nzutf-8z©
                    C++ compile error

                    Command:
                    {cmd}

                    Output:
                    {output}
                ú )rb   rd   )Ú
isinstanceÚbytesÚdecoderb   rd   r8   r9   r,   rD   ÚstripÚformatr.   )r;   rb   rd   r<   s      €r   r9   zCppCompileError.__init__f   s”   ø€ Ý�f�eÑ$Ô$ð 	,Ø—]’] 7Ñ+Ô+ˆFàˆŒØˆŒå‰Œ×ÒÝŒOðñ
ô 
÷ ŠU‰WŒWßŠV˜Ÿš ™œ¨fˆVÑ5Ô5ñ	
ô 	
ð 	
ð 	
ð 	
r   ú"tuple[type, tuple[list[str], str]]c                ó,   — | j         | j        | j        ffS r   )r<   rb   rd   )r;   s    r   Ú
__reduce__zCppCompileError.__reduce__}   s   € Ø” ¤¨4¬;Ð 7Ð8Ð8r   )rb   rc   rd   r   r   r   )r   rl   )r1   r2   r3   r9   rn   r?   r@   s   @r   ra   ra   e   sQ   ø€ € € € € ð
ð 
ð 
ð 
ð 
ð 
ð.9ð 9ð 9ð 9ð 9ð 9ð 9ð 9r   ra   c                  ó   — e Zd ZdS )ÚCUDACompileErrorNrQ   r   r   r   rp   rp   �   rR   r   rp   c                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )ÚTritonMissingÚfirst_useful_frameútypes.FrameType | Noner   r   c                óN   •— t          ¦   «                              d|¬¦  «         d S )Nz½Cannot find a working triton installation. Either the package is not installed or it is too old. More information on installing Triton can be found at: https://github.com/triton-lang/triton©rs   r_   )r;   rs   r<   s     €r   r9   zTritonMissing.__init__†   s9   ø€ Ý‰Œ×Òðkð  2ð	 	ñ 	
ô 	
ð 	
ð 	
ð 	
r   )rs   rt   r   r   r>   r@   s   @r   rr   rr   …   s=   ø€ € € € € ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r   rr   c                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )	ÚGPUTooOldForTritonÚdevice_propsr	   rs   rt   r   r   c                ó~   •— t          ¦   «                              d|j        › d|j        › d|j        › �|¬¦  «         d S )NzFound zº which is too old to be supported by the triton GPU compiler, which is used as the backend. Triton only supports devices of CUDA Capability >= 7.0, but your device is of CUDA capability ú.rv   )r8   r9   ÚnameÚmajorÚminor)r;   ry   rs   r<   s      €r   r9   zGPUTooOldForTriton.__init__�   sp   ø€ õ 	‰Œ×Òð_�\Ô&ð _ð _à5AÔ5Gð_ð _àJVÔJ\ð_ð _ð  2ð	 	ñ 	
ô 	
ð 	
ð 	
ð 	
r   )ry   r	   rs   rt   r   r   r>   r@   s   @r   rx   rx   �   s=   ø€ € € € € ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r   rx   c                  ó   — e Zd ZdZd
d„Zd	S )ÚInductorErrorÚinductorÚinner_exceptionrH   rs   rt   r   r   c                óp   — || _         t          j        | t          |¦  «        j        › d|› �|¬¦  «         d S )NrL   rv   )r‚   r   r9   rM   r1   )r;   r‚   rs   s      r   r9   zInductorError.__init__¡   sR   € ð
  /ˆÔÝÔ!ØÝ�OÑ$Ô$Ô-ÐBÐB°ÐBÐBØ1ð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r   N)r‚   rH   rs   rt   r   r   )r1   r2   r3   Úbackend_namer9   r   r   r   r€   r€   ž   s-   € € € € € Ø€Lð

ð 

ð 

ð 

ð 

ð 

r   r€   )r   r   r   r   ) Ú
__future__r   Úosr   r,   Ú	functoolsr   Útypingr   r   Útorch._dynamo.excr   r   ÚtypesÚ
torch.cudar	   ÚenvironÚgetr   ÚRuntimeErrorr   r6   rB   rF   rP   rT   r]   ra   rp   rr   rx   r€   r   r   r   ú<module>r�      sÿ  ðØ "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø €€€Ø €€€Ø Ð Ð Ð Ð Ð Ø %Ð %Ð %Ð %Ð %Ð %Ð %Ð %à EÐ EÐ EÐ EÐ EÐ EÐ EÐ Eð ð 1Ø€L€L€Là0Ð0Ð0Ð0Ð0Ð0à„:‡>‚>Ð3Ñ4Ô4¸Ò;Ð;à€Yˆt�_„_ð)ð )ð )ñ „_ð)ð )ðð ð ð ð7ð 7ð 7ð 7ð 7�Lñ 7ô 7ð 7ðYð Yð Yð Yð Y =ñ Yô Yð Yð
ð 
ð 
ð 
ð 
 ñ 
ô 
ð 
ð ð ð ð ð ˜ñ ô ð ð	ð 	ð 	ð 	ð 	 ñ 	ô 	ð 	ðð ð ð ð ˜ñ ô ð ð>ð >ð >ð >ð >˜\ñ >ô >ð >ð
9ð 9ð 9ð 9ð 9�lñ 9ô 9ð 9ð8	ð 	ð 	ð 	ð 	�ñ 	ô 	ð 	ð
ð 
ð 
ð 
ð 
Ð$ñ 
ô 
ð 
ð
ð 
ð 
ð 
ð 
Ð)ñ 
ô 
ð 
ð
ð 
ð 
ð 
ð 
Ð)ñ 
ô 
ð 
ð 
ð 
r   