o
    hE                  	   @   s   d dl Z d dlZd dlZddlmZ dZdd ZzBe jdkrIejdk rIe j	d	 Z
e
d
ZeD ]Ze jerHze e W q/ eyG   Y q/w q/edZeje dZdd ZW n eefye   Y nw dd Zdd Zdd Ze  dS )    N   )_get_extension_pathFc                   C      dS )NF r   r   r   [/home/www/facesmatcher.com/frenv_anti/lib/python3.10/site-packages/torchvision/extension.py_has_ops      r   nt)   	   PATH;Z_CTc                   C   r   )NTr   r   r   r   r   r   %   r   c                   C   s   t  stdd S )Na  Couldn't load custom C++ ops. This can happen if your PyTorch and torchvision versions are incompatible, or if you had errors while compiling torchvision from source. For further information on the compatible versions, check https://github.com/pytorch/vision#installation for the compatibility matrix. Please check your PyTorch version with torch.__version__ and your torchvision version with torchvision.__version__ and verify if they are compatible, and if not please reinstall torchvision so that it matches your PyTorch install.)r   RuntimeErrorr   r   r   r   _assert_has_ops,   s
   r   c               
   C   s   t sdS ddlm}  tjj }|dkrc| durct|}t|dk r/t|d }t|d }nt|dd }t|d }| 	d}t|d }t|d	 }||krct
d
| d| d| d| d	|S )z`
    Make sure that CUDA versions match between the pytorch install and torchvision install
    r   )cudaNi'     r
   .r   zqDetected that PyTorch and torchvision were compiled with different CUDA major versions. PyTorch has CUDA Version=z" and torchvision has CUDA Version=zE. Please reinstall the torchvision that matches your PyTorch install.)_HAS_OPSZtorch.versionr   torchopsZtorchvisionZ_cuda_versionstrintsplitr   )Ztorch_version_cuda_versionZ
tv_versionZtv_majorZtv_minorZ	t_versionZt_majorZt_minorr   r   r   _check_cuda_version9   s6   
r   c                 C   s   t | }tj| d S )N)r   r   r   load_library)Zlib_namelib_pathr   r   r   _load_libraryW   s   r   )ossysr   Z_internally_replaced_utilsr   r   r   nameversion_infoenvironZenv_pathr   Zpath_arrpathexistsZadd_dll_directory	Exceptionr   r   r   ImportErrorOSErrorr   r   r   r   r   r   r   <module>   s:    


