
    j                         d dl Z d dlZd dlmZmZmZmZmZmZm	Z	 d dl
Zd dlmZmZmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d	d
lmZmZmZmZm Z  d	dl!m"Z"m#Z# d	dl$m%Z%m&Z&m'Z'm(Z(m)Z) d	dl*m+Z+m,Z,m-Z-m.Z. d	dl m/Z/m0Z0m1Z1  G d d          Z2dS )    N)AnyDictIterableListMappingOptionalUnion)DataNotMatchExceptionExceptionsMessage
ParamError)
common_pb2)
milvus_pb2)
schema_pb2)CollectionSchema)infer_dtype_by_scalar_data   )__version__blobentity_helperts_utilsutils)check_pass_paramis_legal_collection_properties)DEFAULT_CONSISTENCY_LEVELGROUP_BY_FIELDITERATOR_FIELDPAGE_RETAIN_ORDER_FIELDREDUCE_STOP_FOR_BEST)DataTypePlaceholderTypeResourceGroupConfigget_consistency_level)traverse_infotraverse_rows_infotraverse_upsert_infoc                   6   e Zd Zededeeeef         ef         de	j
        fd            Zedededej        fd            Zededededej        eeffd	            Zededeeef         dej        fd
            Zedede	j        fd            Zedede	j        fd            Zededede	j        fd            Zedefd            Zeddeee                  fd            Zedededefd            Zededefd            Zededefd            Zededefd            Z ededefd            Z!e	 	 ddedeee                  de"fd            Z#e	 ddedeee                  fd             Z$eddedeee                  fd!            Z%ed"             Z&ed#             Z'ededefd$            Z(ed%ee	j)        e	j*        f         d&e+d'e"d(efd)            Z,ed%ee	j)        e	j*        f         d&e+d'e"d(efd*            Z-e	 dded(eded&ed'e"f
d+            Z.e	 dded(eded&ed'e"f
d,            Z/ed(ed&efd-            Z0ed(ed&efd.            Z1ed%ee	j)        e	j*        f         d(ed&ed/efd0            Z2eded(eded&efd1            Z3eded(eded&efd2            Z4ededed3ed4eee5ef                  fd5            Z6ed6efd7            Z7ed8edefd9            Z8e	 	 	 	 dded6eee9j:        f         d;ed<ed=e5d3ee         deee                  d>eee                  d?e5de	j;        fd@            Z<e	 	 	 ddedAedBed=e5deee                  d>eee                  d?e5de	j=        fdC            Z>ededDefdE            Z?edDefdF            Z@ededDefdG            ZAedDefdH            ZBeddedJefdK            ZCededLedMefdN            ZDededOedPe+fdQ            ZEe	 ddedOedRee5         fdS            ZFededOefdT            ZGededOefdU            ZHedJededVe5dWe"dXee         dYee         dZe"fd[            ZIedJedefd\            ZJedJededee         dVe5dWe"dXee         dYee         dZe"fd]            ZKedJededee         fd^            ZLedefd_            ZMedefd`            ZNedaee5         dedbe5fdc            ZOedefdd            ZPedee         fde            ZQededLedOefdf            ZRededefdg            ZSedhefdi            ZTededjee         d>ee         dee         fdk            ZUeded3ed>ee         dee         fdl            ZVededme5dnee5         doee5         fdp            ZWedqe5dre"fds            ZXedte5fdu            ZYedte5fdv            ZZedqe5fdw            Z[edededxe\fdy            Z]edze5fd{            Z^ed=e5defd|            Z_ed}ed~efd            Z`ed}ededefd            Zaed}efd            Zbed             Zcedefd            Zdedefd            Zeedededefd            Zfedede"fd            Zgedede"fd            ZhedededededJedefd            ZiededededJefd            Zjed             Zkedefd            Zledemeenf         fd            Zoedefd            Zped             Zqedefd            Zrededede5fd            Zsedededede5fd            ZtedJefd            Zuede5dJefd            Zved}edefd            ZwedJefd            ZxedJefd            Zyed             ZzedJedefd            Z{edJefd            Z|dS )Preparecollection_namefieldsreturnc                    t          |t                    r|                     ||          }n | j        ||fi |}t	          |                    dt                              }t          j        |t          |
                                          |          }|                    d          }t          |          r8d |                                D             }|j                            |           t          |                                                              ddh          }t%          |          dk    rt%          |          dk    rd	}	t'          |	
          |t)          t+          |                             }
t          |
t,                    s#dt/          |
           d}	t'          |	
          |
|_        |                    d          }|ot          |t,                    rt          |t2                    r#dt/          |           d}	t'          |	
          |dk     rd| }	t'          |	
          ||_        |S )a  
        Args:
            fields (Union(Dict[str, Iterable], CollectionSchema)).

                {"fields": [
                        {"name": "A", "type": DataType.INT32}
                        {"name": "B", "type": DataType.INT64, "auto_id": True, "is_primary": True},
                        {"name": "C", "type": DataType.FLOAT},
                        {"name": "Vec", "type": DataType.FLOAT_VECTOR, "params": {"dim": 128}}]
                }

        Returns:
            milvus_types.CreateCollectionRequest
        consistency_level)r(   schemar,   
propertiesc                 t    g | ]5\  }}t          j        t          |          t          |                     6S keyvaluecommon_typesKeyValuePairstr.0kvs      a/lsinfo/ai/hellotax_ai/base_platform/venv/lib/python3.11/site-packages/pymilvus/client/prepare.py
<listcomp>z5Prepare.create_collection_request.<locals>.<listcomp>H   E       HL1)c!ffCFFCCC      
num_shards
shards_numr   r   zGgot both num_shards and shards_num in kwargs, expected only one of themmessagezinvalid num_shards type, got z, expected intnum_partitionsNz!invalid num_partitions type, got zGThe specified num_partitions should be greater than or equal to 1, got )
isinstancer   !get_schema_from_collection_schema
get_schemar"   getr   milvus_typesCreateCollectionRequestbytesSerializeToStringr   itemsr.   extendsetkeysintersectionlenr   nextiterinttyperA   boolrD   )clsr(   r)   kwargsr-   r,   reqr.   same_keymsgr@   rD   s               r<   create_collection_requestz!Prepare.create_collection_request!   s^   , f.// 	G::?FSSFF#S^OVFFvFFF1JJ*,EFF
 
 2+113344/
 
 
 ZZ--
)*55 	. PZP`P`PbPb  J N!!*---v{{}}%%22L,3OPPx==18}}q  _ ----T(^^ 4 45Jj#.. .Vd:6F6FVVV ----'CN$455%nc22 .jQU6V6V .^$~:N:N^^^ ----!!p`npp ----!/C
r?   c                    |j         }t          |t          t          f          s+d| dt	          |          j         d}t          |          t          j        ||j	        ||j
                  }|j        D ]}t          j        |j        |j        |j         |j        |j	        |j        |j        |j        |j        	  	        }|j                                        D ]W\  }}	t-          j        |dk    rt          |          ndt          |	          	          }
|j                            |
           X|j                            |           |S )
Nzdescription [z] has type z!, but expected one of: bytes, strrB   nameautoIDdescriptionenable_dynamic_field)	r`   	data_typerb   is_primary_keyra   is_partition_key
is_dynamicelement_typeis_clustering_keymmap_enabledmmap.enabledr1   )rb   rE   r7   rK   rV   __name__r   schema_typesr   auto_idrc   r)   FieldSchemar`   dtype
is_primaryrf   rg   rh   ri   paramsrM   r5   r6   type_paramsappend)rX   r(   r)   coll_descriptionr\   r-   ffield_schemar:   r;   kv_pairs              r<   rF   z)Prepare.get_schema_from_collection_schemae   s    "-*S%L99 	*2 0 2 2TBR=S=S=\ 2 2 2  S)))). >(!'!<	
 
 
  	/ 	/A'3V'M |y!"!3<^"#"5
 
 
L (( 9 91&3"#~"5"5A>QTUVQWQW   (//8888M  ....r?   fieldprimary_fieldauto_id_fieldc                    |                      d          }|t          d          |                      d          }|t          d          t          |t          t          f          st          d          |                      dd          }t          |t
                    st          d	          |rM|t          d
          t	          |          t          j        t          j        fvrd}t          |          |}|                      dd          }t          |t
                    st          d          |rC|t          d          t	          |          t          j        k    rd}t          |          |}t          j	        |||                      dd          |||                      dd          |                      dd                    }|                      di           }	t          |	t                    st          d          d |	                                D             }
|j                            |
           |||fS )Nr`   z%You should specify the name of field!rB   rV   z*You should specify the data type of field!zField type must be of DataType!rq   Fzis_primary must be booleanz/A collection should only have one primary fieldz=int64 and varChar are the only supported types of primary keyrn   zauto_id must be booleanz.A collection should only have one autoID fieldz:int64 is the only supported type of automatic generated idrb    rf   ri   )r`   rd   rb   re   ra   rf   ri   rr   z params should be dictionary typec                     g | ]=\  }}t          j        |d k    rt          |          ndt          |                    >S )rj   rk   r1   r4   r8   s      r<   r=   z,Prepare.get_field_schema.<locals>.<listcomp>   s`     
 
 
 1 %>11CFFF~SQRVV  
 
 
r?   )rH   r   rE   rU   r   rW   INT64VARCHARrm   ro   dictrM   rs   rN   )ry   rz   r{   
field_namerd   rq   r\   rn   rw   rs   kvss              r<   get_field_schemazPrepare.get_field_schema   s{    YYv&&
%LMMMMIIf%%	%QRRRR)c8_55 	H%FGGGGYY|U33
*d++ 	C%ABBBB 	'( )Z[[[[	""8>8;K*LLLU ----&M))Iu--'4(( 	@%>???? 	'( )YZZZZ	""hn44R ----&M#/		-44%"YY'95AA#ii(;UCC
 
 
 ii"--+t,, 	I%GHHHH
 
 $))++	
 
 
 	 '',,,]M99r?   c                    t          |t                    st          d          |                    d          }|t          d          t	          |          dk    rt          d          |                    dd          }d|v r|d         }t          j        |d|                    d	d
          |          }d\  }}|D ]7}	|                     |	||          \  }
}}|j        	                    |
           8|S )NzParam fields must be a dictrB   r)   z&Param fields must contain key 'fields'r   z"Param fields value cannot be emptyrc   Frb   r}   r_   )NN)
rE   r   r   rH   rR   rm   r   r   r)   rt   )rX   r(   r)   rY   
all_fieldsrc   r-   rz   r{   ry   rw   s              r<   rG   zPrepare.get_schema   s0    &$'' 	D%BCCCCZZ))
%MNNNNz??a%IJJJJ%zz*@%HH!V++#)*@#A . 

="55!5	
 
 
 (2$} 	/ 	/E;>;O;O}m< <8\=- M  ....r?   c                 ,    t          j        |          S Nr(   )rI   DropCollectionRequestrX   r(   s     r<   drop_collection_requestzPrepare.drop_collection_request   s    1/RRRRr?   c                 ,    t          j        |          S r   )rI   DescribeCollectionRequestr   s     r<   describe_collection_requestz#Prepare.describe_collection_request   s    
 5oVVVVr?   r.   c                 j    d |                                 D             }t          j        ||          S )Nc                 Z    g | ](\  }}t          j        |t          |                     )S r0   r4   r8   s      r<   r=   z4Prepare.alter_collection_request.<locals>.<listcomp>   2    ]]]$!Q|(Qc!ff===]]]r?   )r(   r.   )rM   rI   AlterCollectionRequest)rX   r(   r.   r   s       r<   alter_collection_requestz Prepare.alter_collection_request   s;     ^]*JZJZJ\J\]]]2?_bccccr?   c                 ,    t          j        |          S r   )rI   CollectionStatsRequestr   s     r<   collection_stats_requestz Prepare.collection_stats_request  s    2?SSSSr?   Ncollection_namesc                    t          j                    }|rpt          |t          f          sd| }t	          |          |D ]}t          |           |j                            |           t           j        j	        |_
        |S )Nz5collection_names must be a list of strings, but got: rB   r   )rI   ShowCollectionsRequestrE   listr   r   r   rN   ShowTypeInMemoryrV   )rX   r   rZ   r\   r(   s        r<   show_collections_requestz Prepare.show_collections_request  s    133 	6.88 .`N^`` ----#3 B B AAAAA ''(8999#,5CH
r?   old_namenew_namenew_db_namec                 0    t          j        |||          S )N)oldNamenewName	newDBName)rI   RenameCollectionRequest)rX   r   r   r   s       r<   rename_collections_requestz"Prepare.rename_collections_request  s#    3h+
 
 
 	
r?   partition_namec                 .    t          j        ||          S Nr(   r   )rI   CreatePartitionRequestrX   r(   r   s      r<   create_partition_requestz Prepare.create_partition_request  s!    2+N
 
 
 	
r?   c                 .    t          j        ||          S r   )rI   DropPartitionRequestr   s      r<   drop_partition_requestzPrepare.drop_partition_request!  s!    0+N
 
 
 	
r?   c                 .    t          j        ||          S r   )rI   HasPartitionRequestr   s      r<   has_partition_requestzPrepare.has_partition_request'  s!    /+N
 
 
 	
r?   c                 .    t          j        ||          S r   )rI   PartitionStatsRequestr   s      r<   partition_stats_requestzPrepare.partition_stats_request-  s!    1+N
 
 
 	
r?   Fpartition_namestype_in_memoryc                 l   t          ||           t          j        |          }|rZt          |t          f          sd| }t          |          |D ]}t          |           |j                            |           |du rt          j        j	        |_
        nt          j        j        |_
        |S )Nr(   partition_name_arrayr   z4partition_names must be a list of strings, but got: rB   )r   F)r   rI   ShowPartitionsRequestrE   r   r   r   rN   r   AllrV   r   )rX   r(   r   r   rZ   r\   r   s          r<   show_partitions_requestzPrepare.show_partitions_request3  s     	____0QQQ 	8ow77 .^_^^ ----"1 @ @ ?????&&777U""#,0CHH#,5CH
r?   c                     t          ||           t          j        |          }|r|j                            |           |S Nr   r   )r   rI   GetLoadingProgressRequestr   rN   rX   r(   r   rZ   s       r<   get_loading_progresszPrepare.get_loading_progressI  sN     	____4_UUU 	8&&777
r?   c                     t          ||           t          j        |          }|r|j                            |           |S r   )r   rI   GetLoadStateRequestr   rN   r   s       r<   get_load_statezPrepare.get_load_stateS  sL    ____.OOO 	8&&777
r?   c                 $    d}t          |          )Nzno empty request later)DeprecationWarning)rX   r\   s     r<   emptyzPrepare.empty[  s    & %%%r?   c                 (    t          j                    S N)rI   RegisterLinkRequestrX   s    r<   register_link_requestzPrepare.register_link_request`  s    /111r?   c                     t          |t                    st          d          t          |t                    st          d          t          j        ||          S )Nz#collection_name must be of str typerB   z"partition_name must be of str type)r(   tag)rE   r7   r   rI   PartitionNamer   s      r<   r   zPrepare.partition_named  sb    /3// 	L%JKKKK.#.. 	K%IJJJJ)/~^^^^r?   requestfields_infoenable_dynamicentitiesc                    d |D             d |D             }r4t          j        dt          j                  }||j        <   |||j        <   	 |D ]}t          |t                    s'dt          |          j         d}t          |          |
                                D ]R\  }}	|vrst          t          j        |z            |v r&||         |         }}
t          j        |	||
           Sfd|
                                D             }r8t          j        |          }|j        j        j                            |           n4# t          t*          f$ r }t          t          j                  |d }~ww xY w| j                            fd	|D                        r| j                            |           t3          ||          \  }}}|br t5                    t5          |          k    s%s=t5                    d
z   t5          |          k    rt7          t          j                  n?r=t5                    t5          |          d
z   k    rt7          t          j                  | S )Nc                     i | ]A}|                     d d          |d         t          j        |d         |d                   BS )rn   Fr`   rV   r   rV   )rH   rm   	FieldDatar9   ry   s     r<   
<dictcomp>z.Prepare._parse_row_request.<locals>.<dictcomp>s  s]     
 
 
99Y..
&M<1U6]QVW]Q^___
 
 
r?   c                 L    i | ]!}|                     d d          |d         |"S rn   Fr`   rH   r   s     r<   r   z.Prepare._parse_row_request.<locals>.<dictcomp>x  sB     
 
 
%*9V[A\A\
&M5
 
 
r?   Trg   rV   expected Dict, got ''rB   c                 (    i | ]\  }}|v	||S  r   r9   r:   r;   r   fields_datas      r<   r   z.Prepare._parse_row_request.<locals>.<dictcomp>  6       !Qq7K7KP^7KAq7K7K7Kr?   c                 X    g | ]&}|                     d d          |d                  'S r   r   r9   ry   r   s     r<   r=   z.Prepare._parse_row_request.<locals>.<listcomp>  s7    dddE		R[]bHcHcd[v'dddr?   r   )rm   r   r   JSONr   rE   r   rV   rl   	TypeErrorrM   r
   r   InsertUnexpectedFieldr   pack_field_value_to_field_dataconvert_to_jsonscalars	json_datadatart   
ValueErrorDataTypeInconsistentr   rN   r$   rR   r   FieldsNumInconsistent)r   r   r   r   field_info_mapd_fieldentityr\   r:   r;   
field_info
field_data	json_dict
json_valuee_auto_id_locr   s     `              @r<   _parse_row_requestzPrepare._parse_row_requestl  s   
 
$
 
 


 
.9
 
 
  	9",8=QQQG.5K*+18N7-.	_" F F!&$// )If1FIIIC#C..("LLNN ` `DAq++N+3$5$Ka$O    K''1?1BKPQNJ
%DQ
T^___    %+\\^^  	 " F!.!>y!I!IJO-299*EEE)F, :& 	_ 	_ 	_'0A0VWWW]^^	_ 	""dddd[ddd	
 	
 	
  	0&&w///.{HEE1k" R3{#3#3s;7G7G#G#G" $H'*;'7'7!';s;?O?O'O'O ):)PQQQQ 	NK 0 0C4D4Dq4H H H%6%LMMMM   DE F	)FF	c           	      4   d |D             d |D             }r4t          j        dt          j                  }||j        <   |||j        <   	 |D ]}t          |t                    s'dt          |          j         d}t          |          |
                                D ]R\  }}	|vrst          t          j        |z            |v r&||         |         }}
t          j        |	||
           Sfd|
                                D             }r8t          j        |          }|j        j        j                            |           n4# t          t*          f$ r }t          t          j                  |d }~ww xY w| j                            fd	|D                        r| j                            |           t3          |          D ]Y\  }}d
}|d         }|                    dd
          rd}t3          |          D ]"\  }}|r||v rt7          d| d| d          #Zr#t9                    t9          |          dz   k    s"s:t9                    t9          |          k    rt7          t          j                  | S )Nc                 `    i | ]+}|d          t          j        |d          |d                   ,S )r`   rV   r   )rm   r   r   s     r<   r   z5Prepare._parse_upsert_row_request.<locals>.<dictcomp>  sI     
 
 
 &M<1U6]QVW]Q^___
 
 
r?   c                      i | ]}|d          |S r`   r   r   s     r<   r   z5Prepare._parse_upsert_row_request.<locals>.<dictcomp>  s    HHH5%-HHHr?   Tr   r   r   rB   c                 (    i | ]\  }}|v	||S r   r   r   s      r<   r   z5Prepare._parse_upsert_row_request.<locals>.<dictcomp>  r   r?   c                 ,    g | ]}|d                   S r  r   r   s     r<   r=   z5Prepare._parse_upsert_row_request.<locals>.<listcomp>  s"    #X#X#X5Kf$>#X#X#Xr?   Fr`   rg   zdynamic field enabled, z shouldn't in entities[]r   )rm   r   r   r   r   rE   r   rV   rl   r   rM   r
   r   r   r   r   r   r   r   r   rt   r   r   r   rN   	enumeraterH   r   rR   r   )r   r   r   r   r   r   r   r\   r:   r;   r   r   r   r   r   r   ry   rg   r   jr   s     `                 @r<   _parse_upsert_row_requestz!Prepare._parse_upsert_row_request  sT   
 
$
 
 
 IHKHHH 	9",8=QQQG.5K*+18N7-.	_" F F!&$// )If1FIIIC#C..("LLNN ` `DAq++N+3$5$Ka$O    K''1?1BKPQNJ
%DQ
T^___    %+\\^^  	 " F!.!>y!I!IJO-299*EEE)F, :& 	_ 	_ 	_'0A0VWWW]^^	_ 	""#X#X#X#XK#X#X#XYYY 	0&&w///!+.. 	 	HAuJvJyyu-- "!
&x00  	6 *"6"6$ a* a a]^ a a a   
  	Ns;//3{3C3Ca3GGG  H#&{#3#3s;7G7G#G#G%6%LMMMMr   c                     |st          d          t          |t                    r|nd}t          j        ||t          |                    }|                     ||||          S N,Missing collection meta to validate entitiesrB   r}   )r(   r   num_rows)r   rE   r7   rI   InsertRequestrR   r   rX   r(   r   r   r   r   p_namer   s           r<   row_insert_paramzPrepare.row_insert_param  s{      	U%STTTT $.nc#B#BJ,+!]]
 
 
 %%g{NHUUUr?   c                     |st          d          t          |t                    r|nd}t          j        ||t          |                    }|                     ||||          S r  )r   rE   r7   rI   UpsertRequestrR   r
  r  s           r<   row_upsert_paramzPrepare.row_upsert_param  s|      	U%STTTT $.nc#B#BJ,+!]]
 
 
 ,,Wk>S[\\\r?   c                 r   | D ]Q}|                     d          *|                     d          |                     d          t          d          R|st          d          t          |          \  }}}|t          d          |Rt          |           t          |          k    r2dt          |           d	t          |            }t          |          |Ut          |           d
z   t          |          k    r2dt          |           d	t          |            }t          |          |S )Nr`   valuesrV   BMissing param in entities, a field must have type, name and valuesrB   r  primary key not foundexpected number of fields: z', actual number of fields in entities: r   )rH   r   r#   rR   )r   r   r   locationprimary_key_locr   r\   s          r<   _pre_insert_batch_checkzPrepare._pre_insert_batch_check  si   
  	 	F

6""*::h''/::f%%- `    .
  	U%STTTT1>{1K1K./; "%<====3x==C4D4D#D#DxK0@0@xxilmuivivxxCS))))"s8}}q'8C<L<L'L'LxK0@0@xxilmuivivxxCS))))r?   c                    | D ]Q}|                     d          *|                     d          |                     d          t          d          R|st          d          t          |          \  }}|t          d          t          |           t          |          k    r2dt          |           d	t          |            }t          |          |S )
Nr`   r  rV   r  rB   r  r  r  z$, got number of fields in entities: )rH   r   r%   rR   )r   r   r   r  r  r\   s         r<   _pre_upsert_batch_checkzPrepare._pre_upsert_batch_check;  s   
  	 	F

6""*::h''/::f%%- `    .
  	U%STTTT$8$E$E!/ "%<====x==C,,,,uK0@0@uufijrfsfsuuCS))))r?   r  c           	      ,   d}	 |D ]}t          j        |                    d                    }|d|fvr2t          d|                    d           dd| dd| df	          |}t          j        ||||                    d                                      }| j                            |           n4# t          t          f$ r }t          t          j        	          |d }~ww xY w|dk    rt          t          j        	          || _        | S )
Nr   r  z&Field data size misaligned for field [r`   z] z
got size=[zalignment size=[r  rB   )r   get_input_num_rowsrH   r   entity_to_field_datar   rt   r   r   r
   r   r   NumberRowsInvalidr  )	r   r   r   r  pre_field_sizer   latest_field_sizer   r   s	            r<   _parse_batch_requestzPrepare._parse_batch_requestW  sg    	_" 7 7$1$DVZZPXEYEY$Z$Z!!!->)???$[VZZPVEWEW[[[>):>>>@~@@@!    "3*?KF1C1C(DE 
 #**:66667 :& 	_ 	_ 	_'0A0VWWW]^^	_ Q%6%HIIII)s   B4B9 9C*
C%%C*c                     |                      ||          }t          |t                    r|nd}t          j        ||          }|                     ||||          S Nr}   r   )r  rE   r7   rI   r  r&  rX   r(   r   r   r   r  r   r   s           r<   batch_insert_paramzPrepare.batch_insert_paramw  a     ..xEE *>3 ? ?GnnR,_]`aaa'';QQQr?   c                     |                      ||          }t          |t                    r|nd}t          j        ||          }|                     ||||          S r(  )r  rE   r7   rI   r  r&  r)  s           r<   batch_upsert_paramzPrepare.batch_upsert_param  r+  r?   exprr,   c                 D   dt           dt           fd} ||d           ||dk    r ||d           |                    dd          } |||           t          j        |||t	          |          |                     |                    d	i                     
          S )Ninstrprefixc                     | t          | d          t          | t                    st          | d|  d          t          |           dk    rt          | d          d S )Nz cannot be NonerB   z value  is illegalr   z cannot be empty)r   rE   r7   rR   )r0  r1  s     r<   	check_strz)Prepare.delete_request.<locals>.check_str  s    } F)C)C)CDDDDeS)) O F)M)M5)M)M)MNNNN5zzQ F)D)D)DEEEE r?   r(   r}   r   
param_namer.  expr_params)r(   r   r.  r,   expr_template_values)r7   rH   rI   DeleteRequestr"   prepare_expression_template)rX   r(   r   r.  r,   rY   r4  r5  s           r<   delete_requestzPrepare.delete_request  s    	FS 	F# 	F 	F 	F 	F 		/#4555%.B*>*>In&6777ZZf55
	$
###)+)34EFF!$!@!@M[]A^A^!_!_
 
 
 	
r?   r   c                    t          j        |          r&t          j        }t          j        |          j        }nt          |d         t          j                  r|d         j	        }|dk    rt          j
        }d |D             }n|dk    rt          j        }d |D             }n|dv rt          j        }d |D             }nl|dk    rt          j        }|}nWd	| }t          |
          t          |d         t                    rt          j        }|}nt          j        }d |D             }t!          j        d||          }t           j                            t!          j        |g                    S )Nr   bfloat16c              3   >   K   | ]}|                                 V  d S r   tobytesr9   arrays     r<   	<genexpr>z3Prepare._prepare_placeholder_str.<locals>.<genexpr>  *      ??U]]__??????r?   float16c              3   >   K   | ]}|                                 V  d S r   r>  r@  s     r<   rB  z3Prepare._prepare_placeholder_str.<locals>.<genexpr>  rC  r?   )float32float64c              3   >   K   | ]}t          j        |          V  d S r   r   vector_float_to_bytesr9   r   s     r<   rB  z3Prepare._prepare_placeholder_str.<locals>.<genexpr>  s-      SSFT7??SSSSSSr?   bytezunsupported data type: rB   c              3   >   K   | ]}t          j        |          V  d S r   rI  rK  s     r<   rB  z3Prepare._prepare_placeholder_str.<locals>.<genexpr>  s-      OO3F;;OOOOOOr?   z$0)r   rV   r  )placeholders)r   entity_is_sparse_matrixr    SparseFloatVectorsparse_rows_to_protocontentsrE   npndarrayrp   BFLOAT16_VECTORFLOAT16_VECTORFloatVectorBinaryVectorr   rK   r5   PlaceholderValuePlaceholderGrouprL   )rX   r   pl_type	pl_valuesrp   err_msgpls          r<   _prepare_placeholder_strz Prepare._prepare_placeholder_str  s    066 	P%7G%:4@@IIIQ,, 	PGME
"")9??$???		)##)8??$???		000)5SSdSSS		&)6 		 <E;; 1111Q'' 	P%2GII &1GOO$OOOI*t')TTT,>>)t<<<
 
 	
r?   r  c                     dt           dt          j        ffdi }|                                D ]\  }} |          ||<   |S )Nr;   r*   c                    t          |           }t          j                    }|t          j        fv r| |_        t          j        |_        |S |t          j        t          j        t          j        t          j	        fv r| |_
        t          j	        |_        |S |t          j        t          j        fv r| |_        t          j        |_        |S |t          j        t          j        fv r| |_        t          j        |_        |S |t          j        fv rt          j                    }d}d }| D ]>} |          }|j                            |           ||j        }1||j        k    rd}?|r|nt          j        |_        ||_        |j                            |           t          j        |_        |S t5          d|           )NTFzUnsupported element type: rB   )r   rm   TemplateValueBoolbool_valrV   Int8Int16Int32Int64	int64_valFloatDouble	float_valVarCharString
string_valArrayTemplateArrayValuerA  rt   r   rh   	same_type	array_valCopyFromr   )	r;   rp   r   element_datasrr  rh   elementrdataadd_datas	           r<   rx  z5Prepare.prepare_expression_template.<locals>.add_data  s   .q11E-//D*,,, !(-	!"""	   "#(.	+\-@AAA!"(/	-|/BCCC"#(0	+--- , ? A A 	#  * *G$HW--E!'..u555#+',z%33$)	=F-]\\LL]**3'''666(.	%I%%I%IJJJJr?   )r   rm   rb  rM   )rX   r  expression_template_valuesr:   r;   rx  s        @r<   r9  z#Prepare.prepare_expression_template  sz    (	K (	K : (	K (	K (	K (	K (	K (	KT &("LLNN 	8 	8DAq,4HQKK&q))))r?   
anns_fieldparamlimitoutput_fieldsround_decimalc
                    t          j        ||
          }|                    dd          p|
                    dd          }|                    di           }t          |t                    s t          dt          |                     t          |
v rt          |v rt          d          |
                    t                    p|                    t                    }|?t          |t                    s t          dt          |                     ||t          <   |||	|d}d	|
v rd	|v rt          d
          |
                    d	          p|                    d	          }|:t          |t                    s t          dt          |                     ||d	<   |
                    t                    }|
||t          <   |
                    t                    }|
||t          <   |                    d          |d         |d<   |r||d<   d |                                D             }t          j        |          }|                     |          }t!          j        ||||
                    dd          ||
                    dd          ||t$          j        j        ||                     |
                    di                               }|||_        |S )Nignore_growingFrr   z"Search params must be a dict, got rB   zCProvide page_retain_order both in kwargs and param, expect just onez3wrong type for page_retain_order, expect bool, got )topkrr   r  r  offsetz8Provide offset both in kwargs and param, expect just onez'wrong type for offset, expect int, got metric_typer{  c                 ~    g | ]:\  }}t          j        t          |          t          j        |                     ;S r0   r5   r6   r7   r   dumpsr9   r2   r3   s      r<   r=   z5Prepare.search_requests_with_expr.<locals>.<listcomp>O  sL     
 
 
U %#c((%+e:L:LMMM
 
 
r?   guarantee_timestampr   r,   r6  )r(   r   r~  r  use_default_consistencyr,   nqplaceholder_groupdsl_typesearch_paramsr7  )r   construct_guarantee_tsrH   rE   r   r   rV   r   rW   rU   r   r   rM   r   r!  r_  rI   SearchRequestr5   DslType
BoolExprV1r9  dsl)rX   r(   r   r{  r|  r}  r.  r   r~  r  rY   r  r  rr   page_retain_orderr  r  is_iteratorgroup_by_field
req_paramsr  plg_strr   s                          r<   search_requests_with_exprz!Prepare.search_requests_with_expr  s8    #+"A/SY"Z"Z#3U;;bvzzJZ\a?b?b8R((&$'' 	Z%X$v,,%X%XYYYY"f,,1HE1Q1Q]    #JJ'>?? 
599#D
 D
 (/66  kRVWhRiRikk    /@F*+ *,	
 
 v(e"3"3%_````H%%<8)<)<fc** c )aSWX^S_S_)a)abbbb&,M(#jj00",7M.)N33%,:M.)99]##/+0+?M-( 	5*4M,'
 
+1133
 
 

 -d33..t44,++' &

+@! D D$;$jj)<a@@%!)4$!$!@!@M[]A^A^!_!_
 
 
 GKr?   reqsrerank_paramc                 h   t          j        ||          }	||d<   ||d<   |                    dd          |d<   t          j        |||||                    dd          |	|                    dd                    }
|
j                            d |                                D                        |
S )	Nr}  r  r  r   r  r,   )r(   r   requestsr~  r  r  r,   c                 ~    g | ]:\  }}t          j        t          |          t          j        |                     ;S r0   r  r  s      r<   r=   z=Prepare.hybrid_search_request_with_ranker.<locals>.<listcomp>  sL       C )c#hhek%>P>PQQQ  r?   )r   r  rH   rI   HybridSearchRequestrank_paramsrN   rM   )rX   r(   r  r  r}  r   r~  r  rY   r  r   s              r<   !hybrid_search_request_with_rankerz)Prepare.hybrid_search_request_with_rankerh  s     #+"A/SY"Z"Z %W(5_%!'Ha!8!8X2++' &

+@! D D$;$jj)<a@@
 
 
 	"" "."4"4"6"6  	
 	
 	
 r?   aliasc                 .    t          j        ||          S N)r(   r  )rI   CreateAliasRequestrX   r(   r  s      r<   create_alias_requestzPrepare.create_alias_request  s    .V[\\\\r?   c                 ,    t          j        |          S N)r  )rI   DropAliasRequestrX   r  s     r<   drop_alias_requestzPrepare.drop_alias_request  s    ,59999r?   c                 .    t          j        ||          S r  )rI   AlterAliasRequestr  s      r<   alter_alias_requestzPrepare.alter_alias_request  s    -oUZ[[[[r?   c                 ,    t          j        |          S r  )rI   DescribeAliasRequestr  s     r<   describe_alias_requestzPrepare.describe_alias_request  s    0u====r?   r}   db_namec                 .    t          j        ||          S )N)r(   r  )rI   ListAliasesRequest)rX   r(   r  s      r<   list_aliases_requestzPrepare.list_aliases_request  s    .X_````r?   r   rr   c                    t          j        |||                    dd                    }t          |t                    r|                                D ]\  }}|dk    r'|rt          |t                    st          d          t          j	        t          |          t          j        |                    }|j                            |           |S )N
index_namer}   )r(   r   r  dimzdim must be of int!rB   r1   )rI   CreateIndexRequestrH   rE   r   rM   rU   r   r5   r6   r7   r   r  extra_paramsrt   )	rX   r(   r   rr   rY   index_paramstktvrx   s	            r<   create_index_requestzPrepare.create_index_request  s    #6+!zz,33
 
 
 fd## 	: ,,.. : :B;;;*R2E2E;$-BCCCC&3Bu{SUWWW)009999r?   r  r  c           	          g }|                                 D ]M\  }}|                    t          j        t	          |          t          j        |                               Nt          j        |||          S )Nr1   )r(   r  r  )	rM   rt   r5   r6   r7   r   r  rI   AlterIndexRequest)rX   r(   r  r  rr   r:   r;   s          r<   alter_index_requestzPrepare.alter_index_request  s~     &&(( 	W 	WDAqMM,3AekRSnnUUUVVVV-+
QW
 
 
 	
r?   	timestampc                 0    t          j        |||          S )N)r(   r  r  )rI   DescribeIndexRequest)rX   r(   r  r  s       r<   describe_index_requestzPrepare.describe_index_request  s%     0+
i
 
 
 	
r?   c                 .    t          j        ||          S N)r(   r  )rI   GetIndexBuildProgressRequestrX   r(   r  s      r<   get_index_build_progressz Prepare.get_index_build_progress  s!    8+

 
 
 	
r?   c                 .    t          j        ||          S r  )rI   GetIndexStateRequestr  s      r<   get_index_state_requestzPrepare.get_index_state_request  s!    0+

 
 
 	
r?   replica_numberrefreshresource_groupsload_fieldsskip_load_dynamic_fieldc           	      8    t          j        |||||||          S )N)r  r(   r  r  r  r  r  )rI   LoadCollectionRequest)rX   r  r(   r  r  r  r  r  s           r<   load_collectionzPrepare.load_collection  s3     1+)+#$;
 
 
 	
r?   c                 .    t          j        ||          S )N)r  r(   )rI   ReleaseCollectionRequest)rX   r  r(   s      r<   release_collectionzPrepare.release_collection  s!    4_
 
 
 	
r?   c	           
      :    t          j        ||||||||          S )N)r  r(   r   r  r  r  r  r  )rI   LoadPartitionsRequest)	rX   r  r(   r   r  r  r  r  r  s	            r<   load_partitionszPrepare.load_partitions  s6     1++)+#$;	
 	
 	
 		
r?   c                 0    t          j        |||          S )N)r  r(   r   )rI   ReleasePartitionsRequest)rX   r  r(   r   s       r<   release_partitionszPrepare.release_partitions   s#    4_o
 
 
 	
r?   c                 ,    t          j        |          S r   )rI   GetCollectionStatisticsRequestr   s     r<   get_collection_stats_requestz$Prepare.get_collection_stats_request  s    :?[[[[r?   c                 ,    t          j        |          S N)collectionName)rI   GetPersistentSegmentInfoRequestr   s     r<   #get_persistent_segment_info_requestz+Prepare.get_persistent_segment_info_request
  s    ;?[[[[r?   segment_idsflush_tsc                 0    t          j        |||          S )N)
segmentIDsr(   r  )rI   GetFlushStateRequest)rX   r  r(   r  s       r<   get_flush_state_requestzPrepare.get_flush_state_request  s#    0"Oh
 
 
 	
r?   c                 ,    t          j        |          S r  )rI   GetQuerySegmentInfoRequestr   s     r<   get_query_segment_info_requestz&Prepare.get_query_segment_info_request  s    6oVVVVr?   c                 ,    t          j        |          S )N)r   )rI   FlushRequest)rX   r   s     r<   flush_paramzPrepare.flush_param  s    (:JKKKKr?   c                 2    t          j        d|||          S )Nr}   )r  r(   r   r  )rI   DropIndexRequest)rX   r(   r   r  s       r<   drop_index_requestzPrepare.drop_index_request  s(    ,+!!	
 
 
 	
r?   c                 0    t          j        d||          S )Nr}   )r  r(   r   )rI   GetPartitionStatisticsRequestr   s      r<   get_partition_stats_requestz#Prepare.get_partition_stats_request%  s#    9
 
 
 	
r?   request_typec                 ,    t          j        |          S )N)r  )rI   DummyRequest)rX   r  s     r<   dummy_requestzPrepare.dummy_request+  s    (lCCCCr?   idsc                     t          j        t          j        |                    }t          j        d||||          S )N)r   )int_idr}   )r  r(   r  r~  r   )rm   IDs	LongArrayrI   RetrieveRequest)rX   r(   r  r~  r   s        r<   retrieve_requestzPrepare.retrieve_request/  sN     l&<#&F&F&FGGG++'+
 
 
 	
r?   c                    t          j        ||          }t          j        d|||||                    dd          ||                    dd          |                     |                    di                     	  	        }|                    d          }|;|j                            t          j	        dt          |                               |                    d	          }	|	;|j                            t          j	        d	t          |	                               |                    d
d          }
|                    t          d          }|j                            t          j	        d
t          |
                               |j                            t          j	        t          t          |                               |S )Nr}   r  r   r,   r6  )	r  r(   r.  r~  r   r  r  r,   r7  r}  r1   r  r  F)r   r  rI   QueryRequestrH   r9  query_paramsrt   r5   r6   r7   r   )rX   r(   r.  r~  r   rY   r  rZ   r}  r  r  stop_reduce_for_bests               r<   query_requestzPrepare.query_request@  s    #+"A/SY"Z"Z'+'+ &

+@! D D$;$jj)<a@@!$!@!@M[]A^A^!_!_

 

 

 

7####L$='QTUZQ[Q[$\$\$\]]]H%%##L$=(RUV\R]R]$^$^$^___$4e<<%zz*>FF%*:#nBUBUVVV	
 	
 	
 	%*>cJ^F_F_```	
 	
 	
 
r?   src_node_iddst_node_idssealed_segment_idsc                 2    t          j        ||||          S )N)r  
src_nodeIDdst_nodeIDssealed_segmentIDs)rI   LoadBalanceRequest)rX   r(   r
  r  r  s        r<   load_balance_requestzPrepare.load_balance_requesth  s*     .*"$0	
 
 
 	
r?   collection_idis_clusteringc                     |t          |t                    st          d| d          |t          |t                    st          d| d          t	          j                    }||_        ||_        |S )Ncollection_id value r3  rB   zis_clustering value )rE   rU   r   rW   rI   ManualCompactionRequestcollectionIDmajorCompaction)rX   r  r  r   s       r<   manual_compactionzPrepare.manual_compactionw  s     
=#(F(F %VM%V%V%VWWWW 
=$(G(G %VM%V%V%VWWWW688,"/r?   compaction_idc                     |t          |t                    st          d| d          t          j                    }||_        |S Nzcompaction_id value r3  rB   )rE   rU   r   rI   GetCompactionStateRequestcompactionIDrX   r  r   s      r<   get_compaction_statezPrepare.get_compaction_state  O     
=#(F(F %VM%V%V%VWWWW8::,r?   c                     |t          |t                    st          d| d          t          j                    }||_        |S r  )rE   rU   r   rI   GetCompactionPlansRequestr  r   s      r<   get_compaction_state_with_plansz'Prepare.get_compaction_state_with_plans  r"  r?   c                     |t          |t                    st          d| d          t          j        |d          S )Nr  r3  rB   T)r  with_shard_nodes)rE   rU   r   rI   GetReplicasRequest)rX   r  s     r<   get_replicaszPrepare.get_replicas  sT     
=#(F(F %VM%V%V%VWWWW.&!
 
 
 	
r?   filesc                 f   |                     d          }t          j        |||          }||j                            |           |                                D ]S\  }}|dv rJt          j        t          |          t          |                    }	|j	        
                    |	           T|S )Nchannel_names)r(   r   r*  )bucketbackupr1   )rH   rI   ImportRequestr,  rN   rM   r5   r6   r7   optionsrt   )
rX   r(   r   r*  rY   r,  rZ   r:   r;   rx   s
             r<   do_bulk_insertzPrepare.do_bulk_insert  s    

?33(+)
 
 

 $$$]333LLNN 	, 	,DAq(((&3Ac!ffMMM""7+++
r?   task_idc                     |t          |t                    sd| d}t          |          t          j        |          S )Nztask_id value  is not an integerrB   )task)rE   rU   r   rI   GetImportStateRequest)rX   r2  r\   s      r<   get_bulk_insert_statezPrepare.get_bulk_insert_state  sJ    ?*Wc":":?>7>>>CS))))1w????r?   c                     |t          |t                    sd| d}t          |          t          j        ||          S )Nzlimit value r4  rB   )r(   r}  )rE   rU   r   rI   ListImportTasksRequest)rX   r}  r(   r\   s       r<   list_bulk_insert_taskszPrepare.list_bulk_insert_tasks  sV    =
5# 6 6=::::CS))))2+
 
 
 	
r?   userpasswordc                     t          ||           t          j        |t          j        |                    d                              S )N)r;  r<  utf-8)usernamer<  )r   rI   CreateCredentialRequestbase64	b64encodeencode)rX   r;  r<  s      r<   create_user_requestzPrepare.create_user_request  sK    dX66663F$4X__W5M5M$N$N
 
 
 	
r?   old_passwordnew_passwordc           	      $   t          |           t          |           t          |           t          j        |t          j        |                    d                    t          j        |                    d                              S )Nr;  )r<  r>  )r?  oldPasswordnewPassword)r   rI   UpdateCredentialRequestrA  rB  rC  )rX   r;  rE  rF  s       r<   update_password_requestzPrepare.update_password_request  s    d####,////,////3()<)<W)E)EFF()<)<W)E)EFF
 
 
 	
r?   c                 |    t          |t                    st          d|           t          j        |          S )Nzinvalid user rB   )r?  )rE   r7   r   rI   DeleteCredentialRequest)rX   r;  s     r<   delete_user_requestzPrepare.delete_user_request  sB    $$$ 	=%;T%;%;<<<<3TBBBBr?   c                 (    t          j                    S r   )rI   ListCredUsersRequestr   s    r<   list_usernames_requestzPrepare.list_usernames_request      0222r?   	role_namec                 r    t          |           t          j        t          j        |                    S )NrT  r  r   )r   rI   CreateRoleRequest
RoleEntityrX   rT  s     r<   create_role_requestzPrepare.create_role_request  s6    9-----\5LR[5\5\5\]]]]r?   c                 L    t          |           t          j        |          S )NrV  )r   rI   DropRoleRequestrZ  s     r<   drop_role_requestzPrepare.drop_role_request  s'    9----+i@@@@r?   r?  operate_user_role_typec                     t          |           t          |           t          |           t          j        |||          S )NrH  rV  )r_  )r?  rT  rV   )r   rI   OperateUserRoleRequest)rX   r?  rT  r_  s       r<   operate_user_role_requestz!Prepare.operate_user_role_request  sX    h''''9----0FGGGG29O
 
 
 	
r?   include_user_infoc                     |rt          |           t          |           t          j        |rt          j        |          nd |          S )NrV  )rc  r  )rolerc  )r   rI   SelectRoleRequestrY  )rX   rT  rc  s      r<   select_role_requestzPrepare.select_role_request  se     	2y1111+<====-<EO(i88884/
 
 
 	
r?   include_role_infoc                     |rt          |           t          |           t          j        |rt          j        |          nd |          S )NrH  )rh  r  )r;  rh  )r   rI   SelectUserRequest
UserEntity)rX   r?  rh  s      r<   select_user_requestzPrepare.select_user_request  se     	,(+++++<====-;CM(h7777/
 
 
 	
r?   objectobject_name	privilegeoperate_privilege_typec                    t          |           t          |           t          |           t          |           t          |           t          j        t          j        t          j        |          t          j        |          ||t          j        t          j        |                              |          S )	NrV  rm  rn  )ro  )rp  r  )re  rm  rn  r  grantor)r   rV   )r   rI   OperatePrivilegeRequestGrantEntityrY  ObjectEntityGrantorEntityPrivilegeEntity)rX   rT  rm  rn  ro  r  rp  s          r<   operate_privilege_requestz!Prepare.operate_privilege_request	  s     	9----''''[11119----0FGGGG3+!,)<<<#0f==='$2*:	JJJ     (
 
 
 	
r?   c                    t          |           |rt          |           |rt          |           t          j        t          j        t          j        |          |rt          j        |          nd |r|nd |                    S )NrV  rr  rs  r  )re  rm  rn  r  rW  )r   rI   SelectGrantRequestrv  rY  rw  )rX   rT  rm  rn  r  s        r<   select_grant_requestzPrepare.select_grant_request%  s    9---- 	,F++++ 	65555.+!,)<<<AGQ|0f====T+6@KKD	  
 
 
 	
r?   c                 (    t          j                    S r   )rI   GetVersionRequestr   s    r<   get_server_versionzPrepare.get_server_version5  s    -///r?   r`   c                 t    t          |           t          j        ||                    d                    S )Nresource_group_nameconfig)resource_groupr  )r   rI   CreateResourceGroupRequestrH   )rX   r`   rY   s      r<   create_resource_groupzPrepare.create_resource_group9  s?    T22226::h''
 
 
 	
r?   configsc                 ,    t          j        |          S )N)r  )rI   UpdateResourceGroupsRequest)rX   r  s     r<   update_resource_groupszPrepare.update_resource_groupsA  s    7#
 
 
 	
r?   c                 L    t          |           t          j        |          S Nr  )r  )r   rI   DropResourceGroupRequestrX   r`   s     r<   drop_resource_groupzPrepare.drop_resource_groupG  s'    T22224DIIIIr?   c                 (    t          j                    S r   )rI   ListResourceGroupsRequestr   s    r<   list_resource_groupszPrepare.list_resource_groupsL  s    5777r?   c                 L    t          |           t          j        |          S r  )r   rI   DescribeResourceGroupRequestr  s     r<   describe_resource_groupzPrepare.describe_resource_groupP  s'    T22228MMMMr?   sourcetargetnum_nodec                 p    t          |           t          |           t          j        |||          S )Nr  )source_resource_grouptarget_resource_groupr  )r   rI   TransferNodeRequest)rX   r  r  r  s       r<   transfer_nodezPrepare.transfer_nodeU  sF    V4444V4444/"(QY
 
 
 	
r?   num_replicac                 r    t          |           t          |           t          j        ||||          S )Nr  )r  r  r(   r  )r   rI   TransferReplicaRequest)rX   r  r  r(   r  s        r<   transfer_replicazPrepare.transfer_replica]  sJ    V4444V44442"("(+#	
 
 
 	
r?   c                 ,    t          j        |          S Nr  )rI   FlushAllRequestrX   r  s     r<   flush_all_requestzPrepare.flush_all_requesth  s    +G<<<<r?   flush_all_tsc                 .    t          j        ||          S )N)r  r  )rI   GetFlushAllStateRequest)rX   r  r  s      r<   get_flush_all_state_requestz#Prepare.get_flush_all_state_requestl  s    3W^____r?   hostc                 ,   i }|                                 D ]
\  }}|||<   t          j                                        }t          j        dt
          |                                |          }|||_        |||_        t          j
        |          S )NPython)sdk_typesdk_version
local_timereserved)client_info)rM   datetimenowr5   
ClientInfor   __str__r;  r  rI   ConnectRequest)	rX   r;  r  rY   r  r:   r;   r  thiss	            r<   register_requestzPrepare.register_requestp  s    LLNN 	 	DAqHQKK##%%&#{{}}	
 
 
 DIDI*
 
 
 	
r?   c                    t          |           t          j        |          }|                    d          }t	          |          r8d |                                D             }|j                            |           |S )Nr  r.   c                 t    g | ]5\  }}t          j        t          |          t          |                     6S r0   r4   r8   s      r<   r=   z/Prepare.create_database_req.<locals>.<listcomp>  r>   r?   )r   rI   CreateDatabaseRequestrH   r   rM   r.   rN   )rX   r  rY   rZ   r.   s        r<   create_database_reqzPrepare.create_database_req  s    ))))0AAAZZ--
)*55 	. PZP`P`PbPb  J N!!*---
r?   c                 L    t          |           t          j        |          S r  )r   rI   DropDatabaseRequestr  s     r<   drop_database_reqzPrepare.drop_database_req  s'    ))))/@@@@r?   c                 (    t          j                    S r   )rI   ListDatabasesRequestr   s    r<   list_database_reqzPrepare.list_database_req  rS  r?   c                     t          |           d |                                D             }t          j        ||          S )Nr  c                 Z    g | ](\  }}t          j        |t          |                     )S r0   r4   r8   s      r<   r=   z.Prepare.alter_database_req.<locals>.<listcomp>  r   r?   )r  r.   )r   rM   rI   AlterDatabaseRequest)rX   r  r.   r   s       r<   alter_database_reqzPrepare.alter_database_req  sH    ))))]]*JZJZJ\J\]]]0SQQQQr?   c                 L    t          |           t          j        |          S r  )r   rI   DescribeDatabaseRequestr  s     r<   describe_database_reqzPrepare.describe_database_req  s'    ))))3GDDDDr?   r   )NF)F)NNNrz  )NNrz  )r}   )}rl   
__module____qualname__classmethodr7   r	   r   r   r   rI   rJ   r]   rm   rF   staticmethodr   ro   r   rG   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rW   r   r   r   r   r   r   r  r  r   r   r
  r  r  r  r  r&  r*  r-  rU   r:  r_  r9  r   SparseMatrixInputTyper  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  r  r	  r  r  r!  r%  r)  r   r1  r7  r:  rD  rL  rO  rR  r[  r^  rb  rg  rl  rz  r}  r  r  r   r!   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r?   r<   r'   r'       s"       AA d3=)+;;<A
 
	-A A A [AF && !& 
	&	& & & [&P :::::: :: 
"C	-	:: :: :: \::x !! S(]#!
 
	&! ! ! [!F Sc Sl>` S S S [S WW 
	/W W W [W dd d 
	,	d d d [d Ts T T T [T 
 
c8K 
 
 
 [
 
# 
 
SV 
 
 
 [

 
s 
C 
 
 
 [

 
S 
# 
 
 
 [

 
C 
 
 
 
 [

 
c 
3 
 
 
 [

  04$	  "$s), 	   [* JN !4<T#Y4G   [  S 8DQTICV    [ & & [& 2 2 [2 _S _# _ _ _ [_ =|1<3MMN== = 	= = = \=~ @|1<3MMN@@ @ 	@ @ @ \@D   %V VV V 	V
 V V V V [V*   %] ]] ] 	]
 ] ] ] ] []*    \>    \6 |1<3MMN  	   \> RR R 	R
 R R R [R RR R 	R
 R R R [R 

 
 	

 $E#s(O4
 
 
 [
< &
C &
 &
 &
 [&
P /* /*# /* /* /* [/*b  #/3-1X XX D%556X 	X
 X X smX "$s),X  S	*X X 
	#X X X [Xt  04-1! !! ! 	!
 ! "$s),!  S	*! ! 
	)! ! ! [!F ]3 ]s ] ] ] [] :s : : : [: \# \c \ \ \ [\ >3 > > > [> a a3 a a a a [a 3 C QU    [  
# 
3 
VZ 
 
 
 [
 OS
 
!
/2
?G}
 
 
 [
 
s 
 
 
 
 [

 
c 
s 
 
 
 [

 

 
 	

 
 c
 #Y
 "&
 
 
 [
( 
 
s 
 
 
 [

 

 
 c	

 
 
 c
 #Y
 "&
 
 
 [
, 
 
s 
UYZ]U^ 
 
 
 [

 \3 \ \ \ [\ \# \ \ \ [\ 
$s) 
c 
]` 
 
 
 [

 WS W W W [W L49 L L L [L 
 
# 
SV 
 
 
 [
 
# 
s 
 
 
 [

 D D D D [D 

 #Y
 Cy	

 c
 
 
 [
  %% % Cy	%
 c% % % [%N 

 
 3i	

 !I
 
 
 [
 c $    [     [ C    [ 
 
 
 
 [
 S # d    [" @C @ @ @ [@ 
3 
 
 
 
 [
 
s 
c 
 
 
 [
 
3 
c 
QT 
 
 
 [
 Cs C C C [C
 3 3 [3 ^C ^ ^ ^ [^ A# A A A [A 
 
 
^a 
 
 
 [
 
C 
D 
 
 
 [
 
3 
4 
 
 
 [
 

 
 	

 
 
 !$
 
 
 [
6 
S 
# 
C 
Z] 
 
 
 [
 0 0 [0 
 
 
 
 [
 
WS:M5M-N 
 
 
 [

 Js J J J [J 8 8 [8 N3 N N N [N 
3 
 
s 
 
 
 [
 
c 
3 
 
[^ 
 
 
 [
 = = = = [= `s `S ` ` ` [` 
C 
s 
 
 
 [
& 
# 
 
 
 [
 A A A A [A 3 3 [3 R R$ R R R [R
 EC E E E [E E Er?   r'   )3rA  r  typingr   r   r   r   r   r   r	   numpyrS  pymilvus.exceptionsr
   r   r   pymilvus.grpc_genr   r5   r   rI   r   rm   pymilvus.orm.schemar   pymilvus.orm.typesr   r}   r   r   r   r   r   checkr   r   	constantsr   r   r   r   r   typesr   r    r!   r"   r#   r$   r%   r'   r   r?   r<   <module>r     s     F F F F F F F F F F F F F F F F F F     T T T T T T T T T T 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 0 0 0 0 0 0 9 9 9 9 9 9 ? ? ? ? ? ? ? ? ? ? ? ? ? ? C C C C C C C C                         K J J J J J J J J JCE CE CE CE CE CE CE CE CE CEr?   