
    Pi                        d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZm	Z	 d dl
mZmZ d dlmZ d dlmZ d dlmZ d	Zd
Z e j        e          Z G d dee                   Z G d dee                   Zdededz  fdZdededz  fdZdS )    N)ColabClient)is_colab_cache_disabled)BackendErrorNotFoundError)DatasetHandleModelHandle)EXTRA_CONSOLE_BLOCK)PackageScope)ResolverCOLAB_CACHE_MOUNT_FOLDERz/kaggle/inputc                   b    e Zd ZdedefdZ	 ddddededz  d	edz  deeedz  f         fd
Z	dS )ModelColabCacheResolverhandlereturnc                 <   t           j        t          j        vst	                      rdS t                      }|j        |j        |j        |j        d}t          |          }|r||d<   	 |
                    |t           j        |           n# t          $ r Y dS w xY wdS )NFownermodel	framework	variationversionT)r   TBE_RUNTIME_ADDR_ENV_VAR_NAMEosenvironr   r   r   r   r   _get_model_versionpostIS_MODEL_SUPPORTED_PATHr   selfr   ___
api_clientdatar   s          r/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/kagglehub/colab_cache_resolver.pyis_supportedz$ModelColabCacheResolver.is_supported   s    4BJFFJaJcJcF5 ]]
\\))	
 
 %V,, 	&%DO	OOD+"EvNNNN 	 	 	55	ts   )!B 
BBNFforce_downloadhpathr'   c                b   |r#t                               di t                     t                      }|j        |j        |j        |j        d}t          |          }|r||d<   |	                    |t          j
        |          }|d}t          |          d|vrd}	t          |	          t          j        t          t                     }
|
 d|d          }t          j                            |          st                               d	| d
           t          j                            |          s3t'          j        d           t          j                            |          3|rB| d| }t          j                            |          sd| d| d}	t          |	          ||fS ||fS )NVIgnoring `force_download` argument when running inside the Colab notebook environment.extrar   r   +No response received or response was empty.slug"'slug' field missing from response/Mounting files to ...   'z^' is not present in the model files. You can access the other files of the attached model at ')loggerinfor	   r   r   r   r   r   r   r   MODEL_MOUNT_PATH
ValueErrorr   r   getenv%COLAB_CACHE_MOUNT_FOLDER_ENV_VAR_NAME DEFAULT_COLAB_CACHE_MOUNT_FOLDERr)   existstimesleepr   r(   r)   r'   r"   r#   r   responseno_responsemsgbase_mount_pathcached_pathcached_filepaths                r$   _resolvez ModelColabCacheResolver._resolve+   s     	KKh-,-    
 !]]
WW	
 
 %Q'' 	&%DO??4)EqIIGK[)))!!6Cs###)$IKkll(==8F+;==w~~k** 	?KK=[===>>>'..-- 	JqMMM '..-- 	  	,!,55t55O7>>/22 &_ _ _P[_ _ _  !oo%"G++G##    N)
__name__
__module____qualname__r   boolr%   strtupleintrG    rH   r$   r   r      s        ; T    0 263$X]3$ 3$ 3$3$$'$J3$JNQU+3$	sC$J	3$ 3$ 3$ 3$ 3$ 3$rH   r   c                   b    e Zd ZdedefdZ	 ddddededz  d	edz  deeedz  f         fd
Z	dS )DatasetColabCacheResolverr   r   c                 $   t           j        t          j        vst	                      rdS t                      }|j        |j        d}t          |          }|r||d<   	 |                    |t           j	        |           n# t          $ r Y dS w xY wdS )NFr   datasetr   T)r   r   r   r   r   r   rV   _get_dataset_versionr   IS_DATASET_SUPPORTED_PATHr   r   s          r$   r%   z&DatasetColabCacheResolver.is_supportedb   s    4BJFFJaJcJcF5 ]]
\~
 

 'v.. 	&%DO	OOD+"GPPPP 	 	 	55	ts   !A? ?
BBNFr&   r(   r)   r'   c                   |r#t                               di t                     t                      }|j        |j        d}t          |          }|r||d<   |                    |t          j        |          }|d}t          |          d|vrd}	t          |	          t                               d|d          d	           t          j        t          t                    }
|
 d
|d          }t          j                            |          st                               d| d           t          j                            |          s3t#          j        d           t          j                            |          3|rB| d
| }t          j                            |          sd| d| d}	t          |	          ||fS ||fS )Nr+   r,   rU   r   r.   r/   r0   z,Using Colab cache for faster access to the 'z
' dataset.r1   r2   r3   r4   r5   zb' is not present in the dataset files. You can access the other files of the attached dataset at ')r6   r7   r	   r   r   rV   rW   r   DATASET_MOUNT_PATHr9   r   r   r:   r;   r<   r)   r=   r>   r?   r@   s                r$   rG   z"DatasetColabCacheResolver._resolvew   s     	KKh-,-    
 !]]
Wy
 

 'q)) 	&%DO??4)GKKGK[)))!!6Cs###_8FCS___```)$IKkll(==8F+;==w~~k** 	?KK=[===>>>'..-- 	JqMMM '..-- 	  	,!,55t55O7>>/22 &a a aR]a a a  !oo%"G++G##rH   rI   )
rJ   rK   rL   r   rM   r%   rN   rO   rP   rG   rQ   rH   r$   rS   rS   a   s        = t    , 483$Z_3$ 3$ 3$3$&)Dj3$LPSWK3$	sC$J	3$ 3$ 3$ 3$ 3$ 3$rH   rS   r(   r   c                 l    |                                  r| j        S t          j        |           }||S d S rI   is_versionedr   r
   get_versionr(   version_from_package_scopes     r$   r   r      >    ~~ y!-!9!!<!<!-))4rH   c                 l    |                                  r| j        S t          j        |           }||S d S rI   r\   r_   s     r$   rW   rW      ra   rH   )loggingr   r>   kagglehub.clientsr   kagglehub.configr   kagglehub.exceptionsr   r   kagglehub.handler   r   kagglehub.loggerr	   kagglehub.packagesr
   kagglehub.resolverr   r;   r<   	getLoggerrJ   r6   r   rS   rP   r   rW   rQ   rH   r$   <module>rl      s    				  ) ) ) ) ) ) 4 4 4 4 4 4 < < < < < < < < 7 7 7 7 7 7 7 7 0 0 0 0 0 0 + + + + + + ' ' ' ' ' '(B %#2  		8	$	$K$ K$ K$ K$ K$h{3 K$ K$ K$\I$ I$ I$ I$ I$ 7 I$ I$ I$X+ #*    M cDj      rH   