
    <i                     \    S SK rS SKJr  S\4S jrS\SS4S jrS\S\4S jrS\S\4S jrg)	    NSparseVectorreturnc                      [        / / S9$ N)indicesvaluesr        T/home/james-whalen/.local/lib/python3.13/site-packages/qdrant_client/local/sparse.pyempty_sparse_vectorr      s     r   vectorc                 V   [        U R                  5      [        U R                  5      :X  d   S5       e[        R                  " U R                  5      R                  5       (       a   S5       e[        U R                  5      [        [        U R                  5      5      :X  d   S5       eg )Nz,Indices and values must have the same lengthzValues must not contain NaNzIndices must be unique)lenr   r	   npisnananyset)r   s    r   validate_sparse_vectorr      s    v~~##  656  xx&**,,K.KK,v~~#c&..&9"::T<TT:r   c                     [        S[        U R                  5      5       H(  nU R                  U   U R                  US-
     :  d  M(    g   g)N   FT)ranger   r   )r   is     r   	is_sortedr      sB    1c&..)*>>!v~~a!e44 + r   c                    [        U 5      (       a  U $ [        R                  " U R                  5      n[	        U Vs/ s H  o R                  U   PM     snU Vs/ s H  o R
                  U   PM     snS9$ s  snf s  snf r   )r   r   argsortr   r   r	   )r   sorted_indicesr   s      r   sort_sparse_vectorr      si    ZZ/N,:;Nq"N;*89.Qa .9 ;9s   A7A<
)	numpyr   qdrant_client.http.modelsr   r   r   boolr   r   r
   r   r   <module>r"      sS     2\ U< UD Ul t |  r   