
    ^Nj,                         d dl mZmZ d dlmZ d dlmZ  ed       G d d             Z ed       G d d	             Z ed       G d
 de             Z	 ed       G d de             Z
 G d dee      Zy)    )	dataclassfield)Enum)AnyT)frozenc                   b    e Zd ZU dZedz  ed<   dZedz  ed<   dZeed<   e	defd       Z
d	dZy)
ModelSourceNhfurlF_deprecated_tar_structreturnc                     | j                   S )N)r   selfs    s/Users/ahmed/devFolder/Ultron/claude-voice/.venv/lib/python3.12/site-packages/fastembed/common/model_description.pydeprecated_tar_structz!ModelSource.deprecated_tar_struct   s    ***    c                     | j                   2| j                  %t        d| j                    d| j                         y y )Nz7At least one source should be set, current sources: hf=z, url=)r
   r   
ValueErrorr   s    r   __post_init__zModelSource.__post_init__   sE    77?txx/I$''RXY]YaYaXbc   0?r   r   N)__name__
__module____qualname__r
   str__annotations__r   r   boolpropertyr   r    r   r   r	   r	      sG    Bd
Ct#(D(+t + +r   r	   c                   l    e Zd ZU eed<   eed<   eed<   eed<   eed<   eed<    ee      Z	ee   ed<   y	)
BaseModelDescriptionmodelsources
model_filedescriptionlicense
size_in_GBdefault_factoryadditional_filesN)
r   r   r   r   r   r	   floatr   listr*   r   r   r   r!   r!      s7    JOL"'"=d3i=r   r!   c                   V    e Zd ZU dZedz  ed<    ee      Zee	e
f   dz  ed<   ddZy)DenseModelDescriptionNdimr(   tasksc                 *    | j                   J d       y )Nz+dim is required for dense model description)r/   r   s    r   r   z#DenseModelDescription.__post_init__'   s    xx#R%RR#r   r   )r   r   r   r/   intr   r   dictr0   r   r   r   r   r   r   r.   r.   "   s2    Ct#(#>E4S>D >Sr   r.   c                   6    e Zd ZU dZedz  ed<   dZedz  ed<   y)SparseModelDescriptionNrequires_idf
vocab_size)r   r   r   r6   r   r   r7   r2   r   r   r   r5   r5   +   s     $L$+$!Jd
!r   r5   c                       e Zd ZdZdZdZy)PoolingTypeCLSMEANDISABLEDN)r   r   r   r:   r;   r<   r   r   r   r9   r9   1   s    
CDHr   r9   N)dataclassesr   r   enumr   typingr   r	   r!   r.   r5   r   r9   r   r   r   <module>r@      s    (   $    $> > > $S0 S S $"1 " "
#t r   