+
    iF/                    h  a  0 t $ ^ RIHt ^ RIt^ RIHtHtHtHtH	t	H
t
 ^ RIHu Ht ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ R	IHt ^ R
IHt Rt^dt]P6                  t]	]]]3,          t/ ]P@                  ]P@                  b^ ]P@                  bR]P@                  bR]P@                  b]PB                  ]PB                  b^]PB                  bR]PB                  bR]PB                  b]PD                  ]PD                  b^]PD                  bR]PD                  bR]PD                  b]PF                  ]PF                  b^]PF                  bR]PF                  bR]PF                  b]PH                  ]PH                  b^]PH                  R]PH                  ]PJ                  ]PJ                  ^]PJ                  R]PJ                  ^]PL                  R]PL                  R]PL                  ]PL                  ]PL                  ^]PN                  R]PN                  R]PN                  ]PN                  ]PN                  /Ct(R])R&   R R lt* ]PV                  t,]R-R! R" ll4       t/]R-R# R$ ll4       t/R-R% R& llt/]R-R' R( ll4       t0]R-R) R* ll4       t0R-R+ R, llt0R#   ]- d    ]! R4      t.R R  lt, L]i ; i).    )annotationsN)AnyIterableoverloadTypeVarUnionMapping)protos)get_default_generative_client)#get_default_generative_async_client)helper_types)model_types)
text_types)content_typeszmodels/embedding-001task_type_unspecifiedunspecifiedretrieval_queryqueryretrieval_documentdocumentsemantic_similarity
similarityclassification
clusteringquestion_answeringqafact_verificationverificationz1dict[EmbeddingTaskTypeOptions, EmbeddingTaskType]_EMBEDDING_TASK_TYPEc                    V ^8  d   QhRRRR/# )   xEmbeddingTaskTypeOptionsreturnEmbeddingTaskType )formats   "p/Users/igloo/.openclaw/workspace/scratch/fb_ad_env/lib/python3.14/site-packages/google/generativeai/embedding.py__annotate__r)   H   s     # #, #1B #    c                h    \        V \        4      '       d   V P                  4       p \        V ,          # N)
isinstancestrlowerr   )r"   s   &r(   to_task_typer0   H   s%    !SGGI""r*   Tc               $    V ^8  d   QhRRRRRR/# )r!   iterablezIterable[T]nintr$   zIterable[list[T]]r&   )r'   s   "r(   r)   r)   T   s"      ; 3 3D r*   c              #     "   V^8  d   \        RV R24      h. pV  F,  pVP                  V4       \        V4      V8X  g   K&  Vx  . pK.  	  V'       d   Vx  R# R# 5i)   zKInvalid input: The batch size 'n' must be a positive integer. You entered: z'. Please enter a number greater than 0.N)
ValueErrorappendlen)r3   r4   batchitems   &&  r(   _batchedr=   T   sp     q5]^_]`  aH  I  DLL5zQ	  K s   <AAAc               8    V ^8  d   QhRRRRRRRRR	R
RRRRRR/# )r!   model model_types.BaseModelNameOptionscontentcontent_types.ContentType	task_typeEmbeddingTaskTypeOptions | Nonetitle
str | Noneoutput_dimensionality
int | Noneclient"glm.GenerativeServiceClient | Nonerequest_options&helper_types.RequestOptionsType | Noner$   text_types.EmbeddingDictr&   )r'   s   "r(   r)   r)   e   sX     # #+#&# /# 	#
 &# /# <# #r*   c                    R # r,   r&   r?   rA   rC   rE   rG   rI   rK   s   &&&&&&&r(   embed_contentrP   d   s      #r*   c               8    V ^8  d   QhRRRRRRRRR	R
RRRRRR/# )r!   r?   r@   rA   #Iterable[content_types.ContentType]rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   r$   text_types.BatchEmbeddingDictr&   )r'   s   "r(   r)   r)   q   sX     ( (+(0( /( 	(
 &( /( <( #(r*   c                    R # r,   r&   rO   s   &&&&&&&r(   rP   rP   p   s     %(r*   c               8    V ^8  d   QhRRRRRRRRR	R
RRRRRR/# )r!   r?   r@   rA   ?content_types.ContentType | Iterable[content_types.ContentType]rC   rD   rE   rF   rG   rH   rI   zglm.GenerativeServiceClientrK   rL   r$   8text_types.EmbeddingDict | text_types.BatchEmbeddingDictr&   )r'   s   "r(   r)   r)   |   sb     _ _+_L_ /_ 	_
 &_ (_ <_ >_r*   c                  a aaa \         P                  ! S 4      o Vf   / pVf   \        4       pS'       d0   \        S4      \        P
                  Jd   \        RS RS R24      hS'       d   S^ 8  d   \        RS R24      hS'       d   \        S4      o\        V\        4      '       d   \        V\        \        34      '       g   R. /pV VVV3R lV 4       p\        V\        4       Fn  p	\        P                  ! S V	R7      p
VP                  ! V
3/ VB p\!        V4      P#                  V4      pVR,          P%                  R VR	,           4       4       Kp  	  V# \        P&                  ! S \(        P*                  ! V4      SSSR
7      p
VP,                  ! V
3/ VB p\!        V4      P#                  V4      pVR,          R,          VR&   V# )aA  Calls the API to create embeddings for content passed in.

Args:
    model:
        Which [model](https://ai.google.dev/models/gemini#embedding) to
        call, as a string or a `types.Model`.

    content:
        Content to embed.

    task_type:
        Optional task type for which the embeddings will be used. Can only
        be set for `models/embedding-001`.

    title:
        An optional title for the text. Only applicable when task_type is
        `RETRIEVAL_DOCUMENT`.

    output_dimensionality:
        Optional reduced dimensionality for the output embeddings. If set,
        excessive values from the output embeddings will be truncated from
        the end.

    request_options:
        Options for the request.

Return:
    Dictionary containing the embedding (list of float values) for the
    input content.
sInvalid task type: When a title is specified, the task must be of a 'retrieval document' type. Received task type:  and title: .QInvalid value: `output_dimensionality` must be a non-negative integer. Received: 	embeddingc           	   3     <"   T F4  p\         P                  ! S\        P                  ! V4      SSSR 7      x  K6  	  R# 5ir?   rA   rC   rE   rG   Nr
   EmbedContentRequestr   
to_content.0cr?   rG   rC   rE   s   & r(   	<genexpr> embed_content.<locals>.<genexpr>   F      	
  &&%003#&;     <?r?   requestsc              3  2   "   T F  qR ,          x  K  	  R# 5ivaluesNr&   re   es   & r(   rg   rh           &Y<Xq{{<X   
embeddingsr`   ro   )r   make_model_namer   r0   r%   RETRIEVAL_DOCUMENTr8   r-   r   r.   r	   r=   EMBEDDING_MAX_BATCH_SIZEr
   BatchEmbedContentsRequestbatch_embed_contentstypeto_dictextendrb   r   rc   rP   r?   rA   rC   rE   rG   rI   rK   resultrl   r;   embedding_requestembedding_responseembedding_dicts   f&fff&&      r(   rP   rP   |   s   N ''.E~.0i(0A0T0TT B  CL  BM  MY  Z_  Y`  `a  b
 	
 !6!:_`u_vvwx
 	
  +	'8$$Z#w-P-Pr"	
 	
 h(@AE & @ @uW\ ]!'!<!<!"!" ""45==>PQN;&&&YN<<X&YY B "66!,,W5"7
 $11

 0199:LM&4[&A(&K{#r*   c               8    V ^8  d   QhRRRRRRRRR	R
RRRRRR/# )r!   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   'glm.GenerativeServiceAsyncClient | NonerK   rL   r$   rM   r&   )r'   s   "r(   r)   r)      sX     # #+#&# /# 	#
 &# 4# <# #r*   c                   "   R # 5ir,   r&   rO   s   &&&&&&&r(   embed_content_asyncr      s
       #   c               8    V ^8  d   QhRRRRRRRRR	R
RRRRRR/# )r!   r?   r@   rA   rR   rC   rD   rE   rF   rG   rH   rI   r   rK   rL   r$   rS   r&   )r'   s   "r(   r)   r)      sX     ( (+(0( /( 	(
 &( 4( <( #(r*   c                   "   R # 5ir,   r&   rO   s   &&&&&&&r(   r   r      s
      %(r   c               8    V ^8  d   QhRRRRRRRRR	R
RRRRRR/# )r!   r?   r@   rA   rV   rC   rD   rE   rF   rG   rH   rI   z glm.GenerativeServiceAsyncClientrK   rL   r$   rW   r&   )r'   s   "r(   r)   r)      sb     B B+BLB /B 	B
 &B -B <B >Br*   c                  a aaa"   \         P                  ! S 4      o Vf   / pVf   \        4       pS'       d0   \        S4      \        P
                  Jd   \        RS RS R24      hS'       d   S^ 8  d   \        RS R24      hS'       d   \        S4      o\        V\        4      '       d   \        V\        \        34      '       g   R. /pV VVV3R lV 4       p\        V\        4       Fv  p	\        P                  ! S V	R7      p
VP                  ! V
3/ VB G Rj  xL
 p\!        V4      P#                  V4      pVR,          P%                  R	 VR
,           4       4       Kx  	  V# \        P&                  ! S \(        P*                  ! V4      SSSR7      p
VP,                  ! V
3/ VB G Rj  xL
 p\!        V4      P#                  V4      pVR,          R,          VR&   V#  L L55i)z?Calls the API to create async embeddings for content passed in.NrY   rZ   r[   r\   r]   c           	   3     <"   T F4  p\         P                  ! S\        P                  ! V4      SSSR 7      x  K6  	  R# 5ir_   ra   rd   s   & r(   rg   &embed_content_async.<locals>.<genexpr>  ri   rj   rk   c              3  2   "   T F  qR ,          x  K  	  R# 5irn   r&   rp   s   & r(   rg   r   (  rr   rs   rt   r`   ro   )r   ru   r   r0   r%   rv   r8   r-   r   r.   r	   r=   rw   r
   rx   ry   rz   r{   r|   rb   r   rc   rP   r}   s   f&fff&&      r(   r   r      s     ''.E~46i(0A0T0TT B  CL  BM  MY  Z_  Y`  `a  b
 	
 !6!:_`u_vvwx
 	
  +	'8$$Z#w-P-Pr"	
 	
 h(@AE & @ @uW\ ]'-'B'B!(!( " ""45==>PQN;&&&YN<<X&YY B "66!,,W5"7
 $*#7#7$
$
 
 0199:LM&4[&A(&K{#+"
s6   2G'6G'0G'BG'G# BG'/G%04G'%G')NNNNN)1__conditional_annotations__
__future__r   	itertoolstypingr   r   r   r   r   r	   google.ai.generativelanguageaigenerativelanguageglmgoogle.generativeair
   google.generativeai.clientr   r   google.generativeai.typesr   r   r   r   DEFAULT_EMB_MODELrw   TaskTyper%   r5   r.   r#   TASK_TYPE_UNSPECIFIEDRETRIEVAL_QUERYrv   SEMANTIC_SIMILARITYCLASSIFICATION
CLUSTERINGQUESTION_ANSWERINGFACT_VERIFICATIONr   __annotations__r0   batchedr=   AttributeErrorr1   rP   r   )r   s   @r(   <module>r      s)   # "  C C * * & D J 2 1 0 3*  OO  c+<!<= K++->-T-TK..K .DDK $::	K
 %%'8'H'HK ((K (88K ..K ((*;*N*NK ++K +>>K !44K ))+<+P+PK ,,K ,@@K  #77!K" $$&7&F&F#K$ '''66  "3">">###..+++>>

.
.((*;*N*N***<<%77''):)L)L=K G D#  H( 
# 
# 
( 
(_D 
# 
# 
( 
(B BK  As   J J10J1