o
    1j                  
   @   s  U d dl Z d dlZd dlZd dlZd dlZd dlmZmZ d dlm	Z	 d dl
mZmZmZmZ d dlZd dlZd dlmZ ej  d dlZdejd< d dlZd dlmZ d dlmZ d	d
lmZ dZzd dl m!  m"Z# e#ZW n e$y Z% ze&de% W Y dZ%[%ndZ%[%ww d	dl'm(Z(m)Z) d	dl*m+Z+ d	dl,m-Z-m.Z.m/Z/ ddl0m1Z1 g dZ2g dZ3h dZ4ee5 e6d< ddhZ7ee5 e6d< e4e7B Z8ee5 e6d< h dZ9ee5 e6d< h dZ:ee5 e6d< de5de5fdd Z;de5d!e1de5fd"d#Z<de5d!e1de=fd$d%Z>	dAde5d&eee1  dee5d'f fd(d)Z?d*ee5d'f de5fd+d,Z@d-e$fd.d/ZAd0eBdeeC fd1d2ZDd-e$de=fd3d4ZEG d5d6 d6eZFG d7d8 d8eFZGG d9d: d:eFZHG d;d< d<eFZIG d=d> d>eFZJG d?d@ d@ZKeK ZLdS )B    N)ABCabstractmethod)Path)OptionalSequenceSetTuplecriticalZAISTUDIO_LOG)NotExistError)snapshot_download   )loggingzFailed to import `modelscope.hub.errors` (%r). ModelScope downloads can still be used; not-found detection will use generic fallbacks.)	CACHE_DIRFILE_LOCK_DIR)download_and_extract)DISABLE_MODEL_SOURCE_CHECKHUGGING_FACE_ENDPOINTMODEL_SOURCE   )LocalModelFormat(%  ZResNet18ZResNet18_vdZResNet34ZResNet34_vdZResNet50ZResNet50_vdZ	ResNet101ZResNet101_vdZ	ResNet152ZResNet152_vdZResNet200_vdPaddleOCR-VLPaddleOCR-VL-1.5zPP-LCNet_x0_25PP-LCNet_x0_25_textline_orizPP-LCNet_x0_35zPP-LCNet_x0_5zPP-LCNet_x0_75zPP-LCNet_x1_0PP-LCNet_x1_0_doc_oriPP-LCNet_x1_0_textline_orizPP-LCNet_x1_5zPP-LCNet_x2_5zPP-LCNet_x2_0zPP-LCNetV2_smallzPP-LCNetV2_basezPP-LCNetV2_largeZMobileNetV3_large_x0_35ZMobileNetV3_large_x0_5ZMobileNetV3_large_x0_75ZMobileNetV3_large_x1_0ZMobileNetV3_large_x1_25ZMobileNetV3_small_x0_35ZMobileNetV3_small_x0_5ZMobileNetV3_small_x0_75ZMobileNetV3_small_x1_0ZMobileNetV3_small_x1_25ZConvNeXt_tinyZConvNeXt_smallZConvNeXt_base_224ZConvNeXt_base_384ZConvNeXt_large_224ZConvNeXt_large_384ZMobileNetV2_x0_25ZMobileNetV2_x0_5ZMobileNetV2_x1_0ZMobileNetV2_x1_5ZMobileNetV2_x2_0ZMobileNetV1_x0_25ZMobileNetV1_x0_5ZMobileNetV1_x0_75ZMobileNetV1_x1_0Z'SwinTransformer_tiny_patch4_window7_224Z(SwinTransformer_small_patch4_window7_224Z'SwinTransformer_base_patch4_window7_224Z(SwinTransformer_base_patch4_window12_384Z(SwinTransformer_large_patch4_window7_224Z)SwinTransformer_large_patch4_window12_384zPP-HGNet_tinyzPP-HGNet_smallzPP-HGNet_basezPP-HGNetV2-B0zPP-HGNetV2-B1zPP-HGNetV2-B2zPP-HGNetV2-B3zPP-HGNetV2-B4zPP-HGNetV2-B5zPP-HGNetV2-B6zFasterNet-LzFasterNet-MzFasterNet-SzFasterNet-T0zFasterNet-T1zFasterNet-T2z
StarNet-S1z
StarNet-S2z
StarNet-S3z
StarNet-S4ZMobileNetV4_conv_smallZMobileNetV4_conv_mediumZMobileNetV4_conv_largeZMobileNetV4_hybrid_mediumZMobileNetV4_hybrid_largeZCLIP_vit_base_patch16_224ZCLIP_vit_large_patch14_224zPP-LCNet_x1_0_MLzPP-HGNetV2-B0_MLzPP-HGNetV2-B4_MLzPP-HGNetV2-B6_MLZResNet50_MLZCLIP_vit_base_patch16_448_MLzPP-YOLOE_plus-XzPP-YOLOE_plus-LzPP-YOLOE_plus-MzPP-YOLOE_plus-Sz	RT-DETR-Lz	RT-DETR-Hz	RT-DETR-XzYOLOv3-DarkNet53zYOLOv3-MobileNetV3zYOLOv3-ResNet50_vd_DCNzYOLOX-LzYOLOX-MzYOLOX-NzYOLOX-SzYOLOX-TzYOLOX-XzRT-DETR-R18zRT-DETR-R50z	PicoDet-Sz	PicoDet-LzDeeplabv3-R50zDeeplabv3-R101zDeeplabv3_Plus-R50zDeeplabv3_Plus-R101zPP-ShiTuV2_reczPP-ShiTuV2_rec_CLIP_vit_basezPP-ShiTuV2_rec_CLIP_vit_largezPP-LiteSeg-TzPP-LiteSeg-BzOCRNet_HRNet-W48zOCRNet_HRNet-W18zSegFormer-B0zSegFormer-B1zSegFormer-B2zSegFormer-B3zSegFormer-B4zSegFormer-B5ZSeaFormer_tinyZSeaFormer_smallZSeaFormer_baseZSeaFormer_largezMask-RT-DETR-HzMask-RT-DETR-LPP-OCRv4_server_reczMask-RT-DETR-SzMask-RT-DETR-MzMask-RT-DETR-XZSOLOv2zMaskRCNN-ResNet50zMaskRCNN-ResNet50-FPNzMaskRCNN-ResNet50-vd-FPNzMaskRCNN-ResNet101-FPNzMaskRCNN-ResNet101-vd-FPNzMaskRCNN-ResNeXt101-vd-FPNzCascade-MaskRCNN-ResNet50-FPNz'Cascade-MaskRCNN-ResNet50-vd-SSLDv2-FPNzPP-YOLOE_seg-SPP-OCRv3_mobile_recen_PP-OCRv3_mobile_reckorean_PP-OCRv3_mobile_recjapan_PP-OCRv3_mobile_recchinese_cht_PP-OCRv3_mobile_recte_PP-OCRv3_mobile_recka_PP-OCRv3_mobile_recta_PP-OCRv3_mobile_reclatin_PP-OCRv3_mobile_recarabic_PP-OCRv3_mobile_reccyrillic_PP-OCRv3_mobile_recdevanagari_PP-OCRv3_mobile_recen_PP-OCRv4_mobile_recPP-OCRv4_server_rec_docPP-OCRv4_mobile_recPP-OCRv4_server_detPP-OCRv4_mobile_detPP-OCRv3_server_detPP-OCRv3_mobile_detPP-OCRv4_server_seal_detPP-OCRv4_mobile_seal_detch_RepSVTR_recch_SVTRv2_recz"PP-LCNet_x1_0_pedestrian_attributezPP-LCNet_x1_0_vehicle_attributePicoDet_layout_1xPicoDet_layout_1x_tableSLANetSLANet_plusLaTeX_OCR_rec	UniMERNetPP-FormulaNet-SPP-FormulaNet-LPP-FormulaNet_plus-SPP-FormulaNet_plus-MPP-FormulaNet_plus-LzFasterRCNN-ResNet34-FPNzFasterRCNN-ResNet50zFasterRCNN-ResNet50-FPNzFasterRCNN-ResNet50-vd-FPNz!FasterRCNN-ResNet50-vd-SSLDv2-FPNzFasterRCNN-ResNet101zFasterRCNN-ResNet101-FPNzFasterRCNN-ResNeXt101-vd-FPNzFasterRCNN-Swin-Tiny-FPNzCascade-FasterRCNN-ResNet50-FPNz)Cascade-FasterRCNN-ResNet50-vd-SSLDv2-FPNUVDocZDLinearZNLinearZRLinearZNonstationaryZTimesNetZTiDEZPatchTSTZ
DLinear_adZAutoEncoder_adZNonstationary_adZPatchTST_adZTimesNet_adZTimesNet_clsZSTFPMzFCOS-ResNet50zDETR-R50zPP-YOLOE-L_vehiclezPP-YOLOE-S_vehiclezPP-ShiTuV2_detzPP-YOLOE-S_humanzPP-YOLOE-L_humanz	PicoDet-Mz
PicoDet-XSzPP-YOLOE_plus_SOD-LzPP-YOLOE_plus_SOD-SzPP-YOLOE_plus_SOD-largesize-LzCenterNet-DLA-34zCenterNet-ResNet50PicoDet-S_layout_3clsPicoDet-S_layout_17clsPicoDet-L_layout_3clsPicoDet-L_layout_17clsRT-DETR-H_layout_3clsRT-DETR-H_layout_17clsZPicoDet_LCNet_x2_5_faceZ	BlazeFacezBlazeFace-FPN-SSHzPP-YOLOE_plus-S_faceZMobileFaceNetZResNet50_facezPP-YOLOE-R-LzCo-Deformable-DETR-R50zCo-Deformable-DETR-Swin-TzCo-DINO-R50zCo-DINO-Swin-Lwhisper_largewhisper_basewhisper_mediumwhisper_smallwhisper_tinyzPP-TSM-R50_8frames_uniformz PP-TSMv2-LCNetV2_8frames_uniformz!PP-TSMv2-LCNetV2_16frames_uniformZMaskFormer_tinyZMaskFormer_smallPP-LCNet_x1_0_table_clsSLANeXt_wiredSLANeXt_wirelessRT-DETR-L_wired_table_cell_det!RT-DETR-L_wireless_table_cell_detZYOWOzPP-TinyPose_128x96zPP-TinyPose_256x192zGroundingDINO-Tz	SAM-H_boxzSAM-H_pointPP-DocLayoutV2PP-DocLayoutV3PP-DocLayout-LPP-DocLayout-MPP-DocLayout-SPP-DocLayout_plus-LPP-DocBlockLayoutZ	BEVFusionzYOLO-Worldv2-LPP-DocBee-2BPP-DocBee-7BPP-Chart2TablePP-OCRv5_server_detPP-OCRv5_mobile_detPP-OCRv5_server_recPP-OCRv5_mobile_receslav_PP-OCRv5_mobile_recPP-DocBee2-3Blatin_PP-OCRv5_mobile_reckorean_PP-OCRv5_mobile_recth_PP-OCRv5_mobile_recel_PP-OCRv5_mobile_recen_PP-OCRv5_mobile_recarabic_PP-OCRv5_mobile_recte_PP-OCRv5_mobile_recta_PP-OCRv5_mobile_recdevanagari_PP-OCRv5_mobile_reccyrillic_PP-OCRv5_mobile_recZ	G2PWModelZfastspeech2_csmscZpwgan_csmsc)Nr%   r    r1   r2   r&   r'   r   r(   r]   r   r"   r   r`   r7   r$   r_   rc   ra   rb   r   r   r3   r4   rB   rA   r@   r?   r^   rX   rV   rW   rU   rO   rP   rQ   rR   rT   rS   r:   r=   r<   r;   r9   r   r   rJ   r   r.   r   r-   r,   r*   r0   r+   r)   r   r/   rZ   r\   rY   r[   rD   rC   rM   rN   r5   r6   rK   rL   r#   r!   r8   r>   rd   re   rf   rg   rh   >    rU   r\   r5   rM   r   rg   r>   r6   rL   rd   r   ra   rc   rY   rT   rO   rX   rf   rJ   rh   r[   re   rP   r`   rK   r   rN   rZ   r]   rb   r_   r=   (SAFETENSORS_SUPPORTED_MODELS_WITH_SUFFIXPaddleOCR-VL-0.9BzPaddleOCR-VL-1.5-0.9B+SAFETENSORS_SUPPORTED_MODELS_WITHOUT_SUFFIXSAFETENSORS_SUPPORTED_MODELS>   rH   rG   rF   r^   rI   rE   rV   rW   PADDLE_DYN_SUPPORTED_MODELS>   rU   r\   r   rK   rJ   r   rM   rN   r[   r   rZ   rY   rL   rT   ONNX_SUPPORTED_MODELS
model_namereturnc                 C   s   | dv rdS | S )N>   rj   r   rj    ro   rq   rq   h/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/paddlex/inference/utils/official_models.py _canonical_download_support_name   s   rt   model_formatc                 C   sb   |dv r| S |dkr | t v r|  dS | tv r| S td|  |dkr)|  dS td|d)	N>   
paddle_dynpaddlesafetensors_safetensorsz Unknown safetensors model name: onnx_onnxUnknown official model format: .)ri   rk   
ValueError)ro   ru   rq   rq   rs   _format_download_model_name  s   

r   c                 C   s`   t | }|dkr
dS |dkr|tv S |dkr|tv S |dkr"|tv S |dkr(dS td|d	)
Nrw   Trv   rx   rz   omFr|   r}   )rt   rm   rl   rn   r~   )ro   ru   canonical_namerq   rq   rs   #_is_supported_official_model_format  s   r   model_formats.c                 C   s   |d u r| fS t |}g }g }|D ]}t| |s|| qt| |}||vr,|| q|sOt|dkrBtd|d d| dtdt|d| dt |S )N   z)Official model source does not provide a r   z package for model r}   zEOfficial model source does not provide any of the requested packages z for model )tupler   appendr   lenr~   list)ro   r   formatsmodel_namesZunsupported_formatsru   Zdownload_model_namerq   rq   rs   _resolve_download_model_names%  s8   



r   r   c                 C   sJ   t jtd}t j|dd td| d }t j|| dS )zCCross-process lock path for a resolved official model download key.official_modelsT)exist_ok zutf-8z.lock)	ospathjoinr   makedirshashlibsha256encode	hexdigest)r   Zlock_dirkeyrq   rq   rs   "_official_model_download_lock_pathB  s   r   excc                 c   sp    | }t  }|d ur2t||vr4|t| |V  t|dd p%t|dd }|d ur6t||vsd S d S d S d S )N	__cause____context__)setidaddgetattr)r   currentvisitedrq   rq   rs   _iter_exception_chainJ  s   $r   exc_objc                 C   s^   t | dd }t |dd }t|tr|S t | ddpdD ]}t |dd }t|tr,|  S qd S )Nresponsestatus_codeargsrq   )r   
isinstanceint)r   r   codeargscrq   rq   rs   _exception_http_status_codeU  s   

r   c                 C   s   t dur%t| D ]}t|t jr dS t|t jr"t|dkr" dS qdS t| D ])}t|tjr:t|dkr: dS |jjdkrC dS |jjdkrRt|dkrR dS q)dS )zKDetect ModelScope 'model not found' errors with or without `ms_hub_errors`.NT  Fr
   	HTTPError)	ms_hub_errorsr   r   r
   r   r   requests	__class____name__)r   r   rq   rq   rs   ,_modelscope_is_model_package_not_found_errord  s(   r   c                   @   sn   e Zd ZdZg ZdZdZdd Zedd Z	dd	 Z
d
d Zedd ZededefddZedd ZdS )_BaseModelHoster Nr   c                 C   s
   || _ d S N)	_save_dir)selfsave_dirrq   rq   rs   __init__     
z_BaseModelHoster.__init__c                 C   s.   dD ]}|  |r| d t|    S q| S )N)ry   r{   )endswithr   )ro   suffixrq   rq   rs   _strip_repo_suffix  s
   
z#_BaseModelHoster._strip_repo_suffixc                 C   s   || j v rdS | || j v S )NT)
model_listr   r   ro   rq   rq   rs   supports_model  s   
z_BaseModelHoster.supports_modelc                 C   sr   |  |sJ d| d| jj d| j|  }td| d| d | || td| d| j d	 |S )
Nz
The model z is not supported on hosting !zUsing official model (zB), the model files will be automatically downloaded and saved in ``.`z4` model files has been download from model source: `z`!)	r   r   r   r   r   info	_downloaddebugalias)r   ro   	model_dirrq   rq   rs   	get_model  s   z_BaseModelHoster.get_modelc                 C      t r   NotImplementedErrorr   rq   rq   rs   r        z_BaseModelHoster._downloadr   rp   c                 C   r   r   r   r   r   rq   rq   rs    is_model_package_not_found_error  r   z1_BaseModelHoster.is_model_package_not_found_errorc                 C   sV   | j d u rdS ztj| j | jd}|jdkW S  ty*   td| j d Y dS w )NT)timeoutzThe model hosting platform(z) is unreachable!F)	healthcheck_urlr   head_healthcheck_timeoutok	Exceptionr   r   r   )clsr   rq   rq   rs   is_available  s   
z_BaseModelHoster.is_available)r   
__module____qualname__r   r   r   r   r   staticmethodr   r   r   r   r   r   boolr   classmethodr   rq   rq   rq   rs   r   }  s     

r   c                   @   sJ   e Zd ZeZdZdZdZdZddddd	d
Z	dd Z
dedefddZdS )_BosModelHosterZbosz*https://paddle-model-ecology.bj.bcebos.comzpaddle3.0.0zKhttps://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_modelzwhisper_large.tarzwhisper_base.tarzwhisper_medium.tarzwhisper_small.tarzwhisper_tiny.tar)rE   rF   rG   rH   rI   c                 C   sN   || j v r| j | }n| d}| j d| j d| }t||j|dd d S )Nz
_infer.tar/F)	overwrite)special_model_fnbase_urlversionr   parent)r   ro   r   fnurlrq   rq   rs   r     s
   

z_BosModelHoster._downloadr   rp   c                 C   s<   t |D ]}t|tjr|j}|d ur|jdkr dS qdS )Nr   TF)r   r   r   r   r   r   r   r   r   r   rq   rq   rs   r     s   z0_BosModelHoster.is_model_package_not_found_errorN)r   r   r   
ALL_MODELSr   r   r   r   r   r   r   r   r   r   rq   rq   rq   rs   r     s    r   c                   @   s2   e Zd ZeZdZeZdd Zde	de
fddZdS )	_HuggingFaceModelHosterZhuggingfacec                    t    fdd}t j|r|| d S t }t j|d}|| t|| W d    d S 1 s3w   Y  d S )Nc                    s   t jd  | td d S )NPaddlePaddle/)repo_id	local_dirZendpoint)hf_hubr   r   r   rr   rq   rs   _clone  s
   
z1_HuggingFaceModelHoster._download.<locals>._clonetemp_dirr   r   existstempfileTemporaryDirectoryr   shutilmover   ro   r   r   tdr   rq   rr   rs   r     s   
"z!_HuggingFaceModelHoster._downloadr   rp   c                 C   s   t |D ]C}t|tjtjtjfr dS t|tjrG|j}|d ur)|jdkr) dS |d urG|jdkrGdt	|v sDdt	|v sDdt	|v rG dS qdS )NTr   i  zRepository Not FoundzEntry Not FoundzRevision Not FoundF)
r   r   hf_hub_utilsZRepositoryNotFoundErrorZEntryNotFoundErrorZRevisionNotFoundErrorZHfHubHTTPErrorr   r   strr   rq   rq   rs   r     s*   
z8_HuggingFaceModelHoster.is_model_package_not_found_errorN)r   r   r   
OCR_MODELSr   r   r   r   r   r   r   r   rq   rq   rq   rs   r     s    r   c                   @   2   e Zd ZeZdZdZdd Zdede	fddZ
d	S )
_ModelScopeModelHoster
modelscopezhttps://modelscope.cnc                    r   )Nc                    s   t jd  | d d S )Nr   r   r   )r   r   r   rr   rq   rs   r     s   

z0_ModelScopeModelHoster._download.<locals>._cloner   r   r   rq   rr   rs   r     s   
"z _ModelScopeModelHoster._downloadr   rp   c                 C   s   t |S r   )r   r   rq   rq   rs   r     s   z7_ModelScopeModelHoster.is_model_package_not_found_errorNr   r   r   r   r   r   r   r   r   r   r   rq   rq   rq   rs   r     s    r   c                   @   r   )
_AIStudioModelHosterZaistudiozhttps://aistudio.baidu.comc                    r   )Nc                    s4   d v rt d  | d d S t d  | d d S )Nr   r   r  zPaddleX/)aistudio_downloadr   rr   rq   rs   r   (  s
   

z._AIStudioModelHoster._download.<locals>._cloner   r   r   rq   rr   rs   r   '  s   
"z_AIStudioModelHoster._downloadr   rp   c                 C   sL   t |D ]}t|tr dS t|tjr#|j}|d ur#|jdkr# dS qdS )NTr   F)r   r   r
   r   r   r   r   r   rq   rq   rs   r   8  s   
z5_AIStudioModelHoster.is_model_package_not_found_errorNr  rq   rq   rq   rs   r  "  s    r  c                   @   s   e Zd ZeZeed Zee	e
egZdddZdd Zdd	 Zd
d Zdddedeee  fddZdd Zdd Zdd ZdS )_ModelManagerr   rp   Nc                 C   s   d | _ t | _d S r   )_hosters	threadingLock_hosters_lockr   rq   rq   rs   r   M  s   z_ModelManager.__init__c                 C   s   t r(td g }| jD ]}|jtkr|d|| j q||| j q|S td g }| jD ]!}|jtkrG|	 rF|d|| j q2|	 rS||| j q2t
|dkrptdtj dtj dtj dtj d	 |S )	NzsConnectivity check to the model hoster has been skipped because `PADDLE_PDX_DISABLE_MODEL_SOURCE_CHECK` is enabled.r   zChecking connectivity to the model hosters, this may take a while. To bypass this check, set `PADDLE_PDX_DISABLE_MODEL_SOURCE_CHECK` to `True`.zvNo model hoster is available! Please check your network connection to one of the following model hoster: HuggingFace (z), ModelScope (z), AIStudio (z), or BOS (z,). Otherwise, only local models can be used.)r   r   warninghoster_candidatesr   r   insertr   r   r   r   r   r   r   r  r   )r   hostersZ
hoster_clsrq   rq   rs   _build_hostersQ  s6   



$z_ModelManager._build_hostersc                 C   s`   | j d u r-| j | j d u r|  | _ W d    | j S W d    | j S 1 s(w   Y  | j S r   )r  r	  r  r   rq   rq   rs   _get_hostersp  s   



z_ModelManager._get_hostersc                 C   sh  t |tr|fnt|}g }|D ]}d|v r|dd}|| qd }|D ]}| j|  }tj|rAt	
d| d |} nq&|d u rtt|}t|E |D ]}| j|  }tj|rot	
d| d |} nqT|d u r|  }t|dkrd}	t	|	 t|	| ||}W d    n1 sw   Y  |d dkr|d }
|
 r|
 r|
S |S )	Nr   z-0.9Br   zeModel files already exist. Using cached files. To redownload, please delete the directory manually: `r   r   zTNo available model hosting platforms detected. Please check your network connection.rj   )r   r   r   replacer   r   r   r   r   r   r   r   filelockFileLockr  r   errorr   _download_from_hosteris_dir)r   ro   r   Zresolved_namescandidate_namer   Zcandidate_dirZ	lock_pathr  msgZvl_model_dirrq   rq   rs   _get_model_local_pathw  sV   


z#_ModelManager._get_model_local_path)r   ro   r   c                C   s   t ||}| |S r   )r   r  )r   ro   r   Zdownload_model_namesrq   rq   rs   get_model_path  s   

z_ModelManager.get_model_pathc                 C   s  t |tr|fnt|}d }t|D ]\}}g }d}t|D ]\}	}
||
s(q||
 z||
}|W     S  ty } z`|}||}|rn|	d t	|k }|rht
d|
 d|j d||	d   d W Y d }~qd}|d t	|krtd|j d	|t
d
|
 d|j d| d||d  j d	 W Y d }~ nd }~ww |r|r|d t	|kr nt
d|d|j d||d  j d q|rqqtd|d  d|)NTr   zModel package `z` was not found on z, trying fallback package `r   Fz-Encounter exception when download model from zN. No model source is available! Please check network or use local model files!z,Encountering exception when download model `z` from z: 
z2, will try to download from other model sources: `zModel packages z were not found on z, will try model source `z(No model source is available for model `r   zA`! Please check model name and network, or use local model files!)r   r   r   	enumerater   r   r   r   r   r   r   r
  r   )r   r  ro   r   Zlast_exceptionidxZhosterZattempted_candidatesZ"all_attempted_candidates_not_foundZcandidate_idxr  Z
model_patheZis_not_foundZhas_fallbackrq   rq   rs   r    s   




z#_ModelManager._download_from_hosterc                 C   s
   || j v S r   )r   r   rq   rq   rs   __contains__  r   z_ModelManager.__contains__c                 C   s
   |  |S r   )r  r   rq   rq   rs   __getitem__  r   z_ModelManager.__getitem__)rp   N)r   r   r   r   r   r   r   r   r   r  r   r   r  r   r  r  r  r   r   r   r   r  r  r  r  rq   rq   rq   rs   r  C  s*    
4

	8r  r   )Mr   r   r   r   r  abcr   r   pathlibr   typingr   r   r   r   r  Zhuggingface_hubr   Zhuggingface_hub.utilsutilsr   r   Zset_verbosity_errorr   environr   Zaistudio_sdk.errorsr
   Zaistudio_sdk.snapshot_downloadr   r  r   Zmodelscope.hub.errorsZhuberrorsZ_ms_hub_errorsr   r  r   Zutils.cacher   r   Zutils.downloadr   Zutils.flagsr   r   r   Zmodels.utils.model_pathsr   r   r   ri   r   __annotations__rk   rl   rm   rn   rt   r   r   r   r   r   r   BaseExceptionr   r   r   r   r   r   r   r  r  r   rq   rq   rq   rs   <module>   s   


  +Q$



;"1! 
-