Ë
    uPêj h  ã                   ó6  — d Z ddlZddlZddlZddlmZ ddlmZm	Z	m
Z
m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mZ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dl&m'Z' ddl(m)Z) ddl*m+Z+ ddl,m-Z- ddl.m/Z/ erddl0m1Z2  G d„ de!«      Z3y)z9
Handles embedding calls to Bedrock's `/invoke` endpoint
é    N)ÚCallable)ÚTYPE_CHECKINGÚAnyÚFinalÚget_args)Ú#BEDROCK_EMBEDDING_PROVIDERS_LITERAL)Ú	embedding)ÚAsyncHTTPHandlerÚHTTPHandlerÚ_get_httpx_clientÚget_async_httpx_client)Ú
get_secret)ÚAmazonEmbeddingRequestÚCohereEmbeddingRequest)ÚEmbeddingResponseÚLlmProvidersé   )Ú
BaseAWSLLM)ÚBedrockErroré   )ÚAmazonNovaEmbeddingConfig)ÚAmazonTitanG1Config)Ú&AmazonTitanMultimodalEmbeddingG1Config)ÚAmazonTitanV2Config)ÚBedrockCohereEmbeddingConfig)Ú TwelveLabsMarengoEmbeddingConfig)ÚLoggingc                   ó–  — e Zd Zdedeeef   fd„Zd„ Zde	dz  de
ej                  z  dz  ded	ed
edefd„Zdedz  de
ej                  z  dz  ded	ed
edefd„Z	 	 d$dee   dedededz  dee   dz  dedz  fd„Z	 	 d%de	dz  de
ej                  z  dz  dee   dededz  dedededddededz  dedz  fd„Z	 	 d%dedz  de
ej                  z  dz  dee   dededz  dedededddededz  dedz  fd„Z	 d&dedee   dedz  dedede	ez  dz  de
ej                  z  dz  dedz  dedz  ded ededz  defd!„Z	 d&d"ededefd#„Zy)'ÚBedrockEmbeddingÚoptional_paramsÚreturnc                 ór  — 	 ddl m} |j                  dd «      }|j                  dd «      }|j                  dd «      }|j                  dd «      }|j                  dd «      }|j                  d	d «      }|j                  d
d «      }	|j                  dd «      }
|j                  dd «      }|j                  dd «      }|€Dt	        dd «      }|�t        |t        «      r|}t	        dd «      }|�t        |t        «      r|}|€d}| j                  ||||||	||
||¬«
      }||fS # t        $ r t        d«      ‚w xY w)Nr   )ÚCredentialsú7Missing boto3 to call bedrock. Run 'pip install boto3'.Úaws_secret_access_keyÚaws_access_key_idÚaws_session_tokenÚaws_region_nameÚaws_role_nameÚaws_session_nameÚaws_profile_nameÚaws_web_identity_tokenÚaws_sts_endpointÚaws_external_idÚAWS_REGION_NAMEÚ
AWS_REGIONz	us-west-2)
r&   r%   r'   r(   r*   r+   r)   r,   r-   r.   )Úbotocore.credentialsr#   ÚImportErrorÚpopr   Ú
isinstanceÚstrÚget_credentials)Úselfr    r#   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   Úlitellm_aws_region_nameÚstandard_aws_region_nameÚcredentialss                   úi/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/llms/bedrock/embed/embedding.pyÚ_load_credentialsz"BedrockEmbedding._load_credentials-   s�  € ð	YÝ8ð
 (7×':Ñ':Ð;RÐTXÓ'YÐØ#2×#6Ñ#6Ð7JÈDÓ#QÐØ#2×#6Ñ#6Ð7JÈDÓ#QÐØ)×-Ñ-Ð.?ÀÓFˆØ.×2Ñ2°?ÀDÓIˆØ"1×"5Ñ"5Ð6HÈ$Ó"OÐØ"1×"5Ñ"5Ð6HÈ$Ó"OÐØ(7×(;Ñ(;Ð<TÐVZÓ([ÐØ"1×"5Ñ"5Ð6HÈ$Ó"OÐØ!0×!4Ñ!4Ð5FÈÓ!Mˆð Ð"ä-7Ð8IÈ4Ó-PÐ#à&Ð2´zÐBYÔ[^Ô7_Ø"9�ä.8¸ÀtÓ.LÐ$Ø'Ð3¼
ÐC[Ô]`Ô8aØ":�àÐ&Ø"-�à*.×*>Ñ*>Ø/Ø"7Ø/Ø+Ø-Ø-Ø'Ø#9Ø-Ø+ð +?ó +
ˆð ˜OÐ+Ð+øôU ò 	YÜÐWÓXÐXð	Yús   ‚D! Ä!D6c              ƒ   ó   K  — y ­w©N© )r7   s    r;   Úasync_embeddingsz!BedrockEmbedding.async_embeddings_   s	   è ø€ Øùs   ‚ÚclientNÚtimeoutÚapi_baseÚheadersÚdatac                 ó0  — |�t        |t        «      sJi }|�:t        |t        «      st        |t        «      rt	        j
                  |«      }||d<   t        |«      }n|}	 |j                  ||t        j                  |«      ¬«      }|j                  «        |j                  «       S # t        j                  $ r<}|j                  j                  }	t        |	|j                  j                  ¬«      ‚d }~wt        j                   $ r t        dd¬«      ‚w xY w)NrB   ©ÚurlrD   rE   ©Ústatus_codeÚmessageé˜  úTimeout error occurred.)r4   r   ÚfloatÚintÚhttpxÚTimeoutr   ÚpostÚjsonÚdumpsÚraise_for_statusÚHTTPStatusErrorÚresponserJ   r   ÚtextÚTimeoutException©
r7   rA   rB   rC   rD   rE   Ú_paramsrW   ÚerrÚ
error_codes
             r;   Ú_make_sync_callz BedrockEmbedding._make_sync_callb   sò   € ð ˆ>¤¨F´KÔ!@ØˆGØÐ"Ü˜g¤uÔ-´¸GÄSÔ1IÜ#Ÿm™m¨GÓ4�GØ%,�˜	Ñ"Ü& wÓ/‰FàˆFð	SØ$Ÿk™k¨hÀÌdÏjÉjÐY]ÓN^˜kÓ_ˆHØ×%Ñ%Ô'ð �}‰}‹Ðøô ×$Ñ$ò 	RØ #§¡× 8Ñ 8ˆJÜ¨:¸s¿|¹|×?PÑ?PÔQÐQûÜ×%Ñ%ò 	SÜ¨3Ð8QÔRÐRð	Sús   Á 7B' Â'DÂ:7C1Ã1$Dc              ƒ   ó€  K  — |�t        |t        «      sdi }|�:t        |t        «      st        |t        «      rt	        j
                  |«      }||d<   t        |t        j                  j                  ¬«      }n|}	 |j                  ||t        j                  |«      ¬«      ƒ d {  –—† }|j                  «        |j                  «       S 7 Œ$# t        j                  $ r<}|j                  j                   }	t#        |	|j                  j$                  ¬«      ‚d }~wt        j&                  $ r t#        dd¬«      ‚w xY w­w)NrB   )ÚparamsÚllm_providerrG   rI   rL   rM   )r4   r
   rN   rO   rP   rQ   r   Úlitellmr   ÚBEDROCKrR   rS   rT   rU   rV   rW   rJ   r   rX   rY   rZ   s
             r;   Ú_make_async_callz!BedrockEmbedding._make_async_call~   s  è ø€ ð ˆ>¤¨FÔ4DÔ!EØˆGØÐ"Ü˜g¤uÔ-´¸GÄSÔ1IÜ#Ÿm™m¨GÓ4�GØ%,�˜	Ñ"Ü+°7Ì×I]ÑI]×IeÑIeÔf‰FàˆFð	SØ$*§K¡K°HÀgÔTX×T^ÑT^Ð_cÓTd KÓ$e×eˆHØ×%Ñ%Ô'ð �}‰}‹Ðð fùä×$Ñ$ò 	RØ #§¡× 8Ñ 8ˆJÜ¨:¸s¿|¹|×?PÑ?PÔQÐQûÜ×%Ñ%ò 	SÜ¨3Ð8QÔRÐRð	Süs<   ‚A9D>Á<*C Â&CÂ'C Â;D>ÃC ÃD;Ã 7DÄ$D;Ä;D>Úresponse_listÚmodelÚproviderÚis_async_invokeÚ
batch_datac                 ó4  — d}|r¼t        |«      dk(  r®d|d   v r§|dk(  r t        «       j                  |d   |¬«      }�nI|dk(  r t        «       j                  |d   |¬«      }�n$|d   j	                  dd«      }dd	lm}m}	  |g dd
¬«      }
 |	dd¬«      }ddlm	}  |«       }t        |d|«       t        |
g|||¬«      }nÇ|dk(  rt        «       j                  |||¬«      }n¥|dk(  rt        «       j                  ||¬«      }n„|dk(  rt        «       j                  ||¬«      }nc|dk(  rt        «       j                  ||¬«      }nB|dk(  rt        «       j                  ||¬«      }n!|dk(  rt        «       j                  |||¬«      }|€t!        d|› �«      ‚|S )zc
        Transforms the response from the Bedrock embedding provider to the OpenAI format.
        Nr   ÚinvocationArnr   Ú
twelvelabs)rW   rf   ÚnovaÚ )Ú	EmbeddingÚUsager	   )r	   ÚindexÚobject)Úprompt_tokensÚtotal_tokens)ÚHiddenParamsÚ_invocation_arn)rE   rf   ÚusageÚhidden_paramsúamazon.titan-embed-image-v1)re   rf   ri   úamazon.titan-embed-text-v1)re   rf   úamazon.titan-embed-text-v2:0úamazon.titan-embed-g1-text-02z=Unable to map model response to known provider format. model=)Úlenr   Ú _transform_async_invoke_responser   ÚgetÚlitellm.types.utilsro   rp   Úlitellm.types.llms.baseru   Úsetattrr   r   Ú_transform_responser   r   Ú	Exception)r7   re   rf   rg   rh   ri   Úreturned_responseÚinvocation_arnro   rp   r	   rw   ru   rx   s                 r;   rƒ   z$BedrockEmbedding._transform_response›   s  € ð 7;Ðñ œs =Ó1°QÒ6¸?ÈmÐ\]ÑN^Ñ;^Ø˜<Ò'Ü$DÓ$F×$gÑ$gØ*¨1Ñ-°Uð %hó %Ò!ð ˜VÒ#Ü$=Ó$?×$`Ñ$`Ø*¨1Ñ-°Uð %aó %Ò!ð
 )6°aÑ(8×(<Ñ(<¸_ÈbÓ(Q�ç@á#,Ø ØØ&ô$�	ñ
  %°1À1ÔE�õ Aá'3£~�Ü˜Ð'8¸.ÔIä$5Ø#˜ØØØ"/ô	%Ñ!ð Ð5Ò5Ü$JÓ$L×$`Ñ$`Ø"/°uÈð %aó %Ñ!ð Ð6Ò6Ü$7Ó$9×$MÑ$MÐ\iÐqvÐ$MÓ$wÑ!ØÐ8Ò8Ü$7Ó$9×$MÑ$MÐ\iÐqvÐ$MÓ$wÑ!ØÐ9Ò9Ü$7Ó$9×$MÑ$MÐ\iÐqvÐ$MÓ$wÑ!Ø˜\Ò)Ü$DÓ$F×$ZÑ$ZØ"/°uð %[ó %Ñ!ð ˜VÒ#Ü$=Ó$?×$SÑ$SØ"/°uÈð %Tó %Ð!ð Ð$ÜÐ[Ð\aÐ[bÐcÓdÐdØ Ð ó    r:   Úextra_headersÚendpoint_urlr(   Úlogging_objÚLiteLLMLoggingObjÚapi_keyc           
      óÜ  — g }|D ]Ð  }ddi}|�ddi|¥}| j                  ||||t        j                  |«      ||¬«      }|	j                  |d||j                  |j
                  dœ¬«       t        |d«      rt        |j
                  «      ni }| j                  |||j                  ||¬«      }|	j                  |d|d	|i¬
«       |j                  |«       ŒÒ | j                  |||
||¬«      S ©NúContent-Typeúapplication/json©r:   r(   rˆ   r‰   rE   rD   rŒ   rn   )Úcomplete_input_dictrC   rD   ©ÚinputrŒ   Úadditional_argsrD   )rA   rB   rC   rD   rE   r’   ©r”   rŒ   Úoriginal_responser•   )re   rf   rg   rh   ri   )Úget_request_headersrS   rT   Úpre_callrH   rD   ÚhasattrÚdictr^   Ú	post_callÚappendrƒ   ©r7   rA   rB   ri   r:   rˆ   r‰   r(   rf   rŠ   rg   rŒ   rh   Ú	responsesrE   rD   ÚpreppedÚheaders_for_requestrW   s                      r;   Ú_single_func_embeddingsz(BedrockEmbedding._single_func_embeddingsç   sD  € ð (*ˆ	Øò *	'ˆDØ%Ð'9Ð:ˆGØÐ(Ø)Ð+=ÐOÀÐO�à×.Ñ.Ø'Ø /Ø+Ø)Ü—Z‘Z Ó%ØØð /ó ˆGð × Ñ ØØà+/Ø '§¡Ø&Ÿ™ñ!ð !ô ô <CÀ7ÈIÔ;V¤$ w§¡Ô"7Ð\^ÐØ×+Ñ+ØØØ Ÿ™Ø+Øð ,ó ˆHð ×!Ñ!ØØØ"*Ø!6¸Ð =ð	 "ô ð ×Ñ˜XÕ&ðU*	'ðX ×'Ñ'Ø#ØØØ+Ø!ð (ó 
ð 	
r‡   c           
   ƒ   óø  K  — g }|D ]Ø  }ddi}|�ddi|¥}| j                  ||||t        j                  |«      ||¬«      }|	j                  |d||j                  |j
                  dœ¬«       t        |d«      rt        |j
                  «      ni }| j                  |||j                  ||¬«      ƒ d {  –—† }|	j                  |d|d	|i¬
«       |j                  |«       ŒÚ | j                  |||
||¬«      S 7 ŒD­wrŽ   )r˜   rS   rT   r™   rH   rD   rš   r›   rd   rœ   r�   rƒ   rž   s                      r;   Ú_async_single_func_embeddingsz.BedrockEmbedding._async_single_func_embeddings+  sR  è ø€ ð (*ˆ	Øò ,	'ˆDØ%Ð'9Ð:ˆGØÐ(Ø)Ð+=ÐOÀÐO�à×.Ñ.Ø'Ø /Ø+Ø)Ü—Z‘Z Ó%ØØð /ó ˆGð × Ñ ØØà+/Ø '§¡Ø&Ÿ™ñ!ð !ô ô <CÀ7ÈIÔ;V¤$ w§¡Ô"7Ð\^ÐØ!×2Ñ2ØØØ Ÿ™Ø+Øð 3ó ÷ ˆHð ×!Ñ!ØØØ"*Ø!6¸Ð =ð	 "ô ð ×Ñ˜XÕ&ðY,	'ð\ ×'Ñ'Ø#ØØØ+Ø!ð (ó 
ð 	
ð%ús   ‚B1C:Â3C8Â4AC:r”   Úmodel_responseÚprint_verboseÚ
aembeddingÚlitellm_paramsc                 ó¸  — | j                  |«      \  }}|j                  dd «      xs |}t        j                  j	                  |d¬«      }| j                  d|i||¬«      }d|v }|r|j                  ddd«      }| j                  |«      }|€'t        d|› d	t        t        t        «      «      › �«      ‚t        j                  |«      }|j                  «       D ��ci c]%  \  }}|j                  «       | j                   vsŒ#||“Œ' }}}|j                  d
d «       d }d }|dk(  rt#        «       j%                  |||¬«      }�n^|dk(  rÀ|dv r¼g }|D ]´  }|dk(  rt'        «       j%                  ||¬«      }n€|dk(  rt)        «       j%                  ||¬«      }n_|dk(  rt+        «       j%                  ||¬«      }n>|dk(  rt)        «       j%                  ||¬«      }nt        dj-                  |g d¢«      «      ‚|j/                  |«       Œ¶ n™|dk(  rHg }|D ]@  }t1        «       j%                  |||||j3                  d«      ¬«      }|j/                  |«       ŒB nL|dk(  rGg }|D ]@  }t5        «       j%                  |||||j3                  d«      ¬«      }|j/                  |«       ŒB | j7                  ||j                  dd «      |¬«      \  }}|r|› d�}n|› d|› d�}|�s|
r1| j9                  |�t;        |t<        «      r|nd |	||||||||||¬«      S | j?                  |�t;        |t@        «      r|nd |	||||||||||¬«      } | €t        d«      ‚| S |€t        d«      ‚d d!i}!|�d d!i|¥}!| jC                  ||||tE        jF                  |«      |!|¬"«      }"tI        |"d#«      rtK        |"jL                  «      ni }#tO        ||||||||"jP                  d |
|	||#¬$«      S c c}}w )%NÚmodel_idrn   ©Úsafer(   )r    rf   rª   zasync_invoke/r   z:Unable to determine bedrock embedding provider for model: z. Supported providers: ÚuserÚcohere)rf   r”   Úinference_paramsÚamazon)ry   rz   r{   r|   ry   )r”   r¯   rz   r{   r|   z(Unmapped model. Received={}. Expected={}rl   Úoutput_s3_uri)r”   r¯   Úasync_invoke_routerª   r±   rm   Úaws_bedrock_runtime_endpoint©rC   r³   r(   z/async-invokez/model/z/invoke)rA   rB   ri   r:   rˆ   r‰   r(   rf   rŠ   rŒ   rg   rh   z)Unable to map Bedrock request to providerr�   r�   r‘   rD   )rf   r”   r¥   rŠ   r    ÚencodingrE   Úcomplete_api_baserŒ   r§   rB   rA   rD   ))r<   r3   ÚurllibÚparseÚquoteÚ_get_aws_region_nameÚreplaceÚget_bedrock_embedding_providerr„   Úlistr   r   ÚcopyÚdeepcopyÚitemsÚlowerÚaws_authentication_paramsr   Ú_transform_requestr   r   r   Úformatr�   r   r   r   Úget_runtime_endpointr¤   r4   r
   r¢   r   r˜   rS   rT   rš   r›   rD   Úcohere_embeddingrH   )$r7   rf   r”   rC   r¥   r¦   rµ   rŠ   rA   rB   r§   rˆ   r    r¨   rŒ   r:   r(   Úunencoded_model_idÚmodelIdÚhas_async_invokerg   r¯   ÚkÚvrE   ri   ÚiÚtransformed_requestÚtwelvelabs_requestÚnova_requestr‰   Úproxy_endpoint_urlr…   rD   r    r¡   s$                                       r;   Ú
embeddingszBedrockEmbedding.embeddingsq  s  € ð" (,×'=Ñ'=¸oÓ'NÑ$ˆ�_ð %4×$7Ñ$7¸
ÀDÓ$IÒ$RÈUÐÜŸ™×+Ñ+Ð,>ÀRÐ+ÓHˆØ×3Ñ3Ø.°Ð@ØØ'ð 4ó 
ˆð #2°UÐ":ÐÙØ—M‘M /°2°qÓ9ˆEØ×=Ñ=¸eÓDˆØÐÜØLÈUÈGð T(Ü(,¬XÔ6YÓ-ZÓ([Ð'\ð^óð ô  Ÿ=™=¨Ó9Ðà-×3Ñ3Ó5÷
Ù�Q˜¸¿¹»È$×JhÑJhÒ9hˆAˆq‰Dð
Ðñ 
ð 	×Ñ˜V TÔ*à.2ˆØ"&ˆ
Ø�xÒÜ/Ó1×DÑDØ 5Ð;Kð Eó ŠDð ˜Ò! eð 0
ñ '
ð ˆJØò 7�ØÐ9Ò9ä>Ó@×SÑSØ"#Ð6Fð Tó ñ (ð
 Ð:Ò:Ü*=Ó*?×*RÑ*RØÐ2Bð +Só +Ñ'ð Ð<Ò<Ü*=Ó*?×*RÑ*RØÐ2Bð +Só +Ñ'ð Ð=Ò=Ü*=Ó*?×*RÑ*RØÐ2Bð +Só +Ñ'ô $ØB×IÑIØ!òóó
ð 
ð ×!Ñ!Ð"5Õ6ñ?7ð@ ˜Ò%ØˆJØò 6�Ü%EÓ%G×%ZÑ%ZØØ%5Ø'7Ø$Ø"2×"6Ñ"6°Ó"Gð &[ó &Ð"ð ×!Ñ!Ð"4Õ5ñ6ð ˜ÒØˆJØò 0�Ü8Ó:×MÑMØØ%5Ø'7Ø$Ø"2×"6Ñ"6°Ó"Gð  Nó  �ð ×!Ñ! ,Õ/ð0ð ,0×+DÑ+DØØ)8×)<Ñ)<Ð=[Ð]aÓ)bØ+ð ,Eó ,
Ñ(ˆÐ(ñ
 Ø*˜^¨=Ð9‰Là*˜^¨7°7°)¸7ÐCˆLàÐ!ÙØ×9Ñ9Ø&,Ð&8¼ZÈÔP`Ô=a™FÐgkØ#Ø)Ø +Ø"/Ø!-Ø$3ØØ +Ø#Ø%Ø$4ð :ó ð ð (,×'CÑ'CØ"(Ð"4¼ÀFÌKÔ9X™Ð^bØØ%Ø'Ø+Ø)Ø /ØØ'ØØ!Ø 0ð (Dó (Ðð !Ð(ÜÐ KÓLÐLØ$Ð$Øˆ\ÜÐGÓHÐHà!Ð#5Ð6ˆØÐ$Ø%Ð'9ÐK¸]ÐKˆGà×1Ñ1Ø#Ø+Ø'Ø%Ü—‘˜DÓ!ØØð 2ó 
ˆô ?FÀgÈyÔ>Y¤T¨'¯/©/Ô%:Ð_aÐÜØØØ)Ø#Ø+ØØØ%Ÿk™kØØ!ØØØ'ô
ð 	
ùóS
s   Ã$OÄOr†   c              ‹   ó6  K  — | j                  |«      \  }}| j                  d|j                  d«      |¬«      \  }}ddlm}  ||d¬«      }	|j                  d«      › d	|	› �}
d
di}	 ddlm} ddlm	}  |d|
d|¬«      } ||d|«      }|j                  |«       |j                  «       }|�¤|j                  |j                  «      }dj                  |j!                  «       D ��cg c]  \  }}d|› d|› d�‘Œ c}}«      }d}|dz  }||j"                  › d�z  }||› d�z  }|j%                  |dd|i|j"                  |j                  |dœ¬«       t'        t(        j*                  ¬«      }|j                  |j"                  |j                  ¬«      ƒ d{  –—† }|�|j-                  |d|dd|ii¬ «       |j.                  d!k(  r|j1                  «       S t3        d"|j.                  › d#|j4                  › �«      ‚# t        $ r t        d«      ‚w xY wc c}}w 7 Œ�­w)$aj  
        Get the status of an async invoke job using the GetAsyncInvoke operation.

        Args:
            invocation_arn: The invocation ARN from the async invoke response
            aws_region_name: AWS region name
            **kwargs: Additional parameters (credentials, etc.)

        Returns:
            dict: Status response from AWS Bedrock
        Nr³   r´   r   )r¹   rn   r«   ú/z/async-invoke/r�   r�   )Ú	SigV4Auth)Ú
AWSRequestr$   ÚGET)ÚmethodrH   rE   rD   Úbedrockú z-H 'z: ú'z!

GET Request Sent from LiteLLM:
zcurl -X GET \
z \
ú
r†   )r’   rC   rD   Úrequest_strr“   )ra   )rH   rD   r’   r–   éÈ   z#Failed to get async invoke status: z - )r<   rÅ   r   Úurllib.parser¹   ÚrstripÚbotocore.authrÔ   Úbotocore.awsrequestrÕ   r2   Úadd_authÚprepareÚ_get_masked_headersrD   ÚjoinrÀ   rH   r™   r   r   rc   rœ   rJ   rS   r„   rX   )r7   r†   r(   rŠ   Úkwargsr:   Ú_r‰   r¹   Úencoded_arnÚ
status_urlrD   rÔ   rÕ   ÚrequestÚsigv4r    Úmasked_headersrÊ   rË   Úformatted_headersÚcustom_curlrA   rW   s                           r;   Ú_get_async_invoke_statusz)BedrockEmbedding._get_async_invoke_status0  sn  è ø€ ð  ×/Ñ/°Ó7‰ˆ�Qð ×3Ñ3ØØ)/¯©Ð4RÓ)SØ+ð 4ó 
‰ˆ�aõ 	'ñ # >¸Ô;ˆØ+×2Ñ2°3Ó7Ð8¸À{ÀmÐTˆ
ð )Ð*<Ð=ˆð	YÝ/Ý6ñ
 $ØØØØô	
ˆñ ! ¨i¸ÓIˆØ�‰�wÔð !Ÿ™Ó*ˆð Ð"à$/×$CÑ$CÀGÇOÁOÓ$TˆNØ'*§x¡xÈn×NbÑNbÓNd×0eÁdÀaÈ°4¸°s¸"¸Q¸C¸qÒ1AÓ0eÓ'fÐØ@ˆKØÐ-Ñ-ˆKØ˜gŸk™k˜]¨%Ð0Ñ0ˆKØÐ/Ð0°Ð3Ñ3ˆKà× Ñ Ø$Øà,<¸nÐ+MØ '§¡Ø&Ÿ™Ø#.ñ	!ð !ô 	ô /¼L×<PÑ<PÔQˆØ &§
¡
Ø—‘Ø—O‘Oð !+ó !
÷ 
ˆð Ð"Ø×!Ñ!Ø$ØØ"*Ø!6Ð9IÈ>Ð8ZÐ [ð	 "ô ð ×Ñ 3Ò&Ø—=‘=“?Ð"äÐAÀ(×BVÑBVÐAWÐWZÐ[c×[hÑ[hÐZiÐjÓkÐkøôw ò 	YÜÐWÓXÐXð	Yüó, 1fð&
ús9   ‚A%HÁ(G9 Á4A2HÃ&H
Ã9BHÆHÆA#HÇ9HÈ
H)FN)NFr>   )Ú__name__Ú
__module__Ú__qualname__r›   Útupler   r5   r<   r@   r   rN   rP   rQ   r^   r
   rd   r½   r   Úboolr   rƒ   r¢   r¤   r   rÑ   rï   r?   r‡   r;   r   r   ,   s‹  „ ð0,àð0,ð 
ˆs�Cˆx‰ó0,òdðà˜dÑ"ðð ˜Ÿ™Ñ&¨Ñ-ðð ð	ð
 ðð ðð 
óð8à  4Ñ'ðð ˜Ÿ™Ñ&¨Ñ-ðð ð	ð
 ðð ðð 
óðD (-Ø(,ñJ!à˜D‘zðJ!ð ðJ!ð 6ð	J!ð
  ™ðJ!ð ˜‘J Ñ%ðJ!ð 
˜TÑ	!óJ!ðp #Ø',ñB
à˜dÑ"ðB
ð ˜Ÿ™Ñ&¨Ñ-ðB
ð ˜‘Jð	B
ð
 ðB
ð ˜d‘{ðB
ð ðB
ð ðB
ð ðB
ð )ðB
ð 6ðB
ð �t‘ðB
ð  ™óB
ð` #Ø',ñD
à  4Ñ'ðD
ð ˜Ÿ™Ñ&¨Ñ-ðD
ð ˜‘Jð	D
ð
 ðD
ð ˜d‘{ðD
ð ðD
ð ðD
ð ðD
ð )ðD
ð 6ðD
ð �t‘ðD
ð  ™óD
ðj #ñ}
àð}
ð �C‰yð}
ð ˜‘*ð	}
ð
 *ð}
ð  ð}
ð Ð.Ñ.°Ñ5ð}
ð ˜Ÿ™Ñ&¨Ñ-ð}
ð ˜4‘Kð}
ð ˜d‘{ð}
ð ð}
ð ð}
ð �t‘ð}
ð  
ó!}
ð@ FJñalØ!ðalØ47ðalà	ôalr‡   r   )4Ú__doc__r¾   rS   rÞ   r·   Úcollections.abcr   Útypingr   r   r   r   rP   rb   Úlitellm.constantsr   Ú!litellm.llms.cohere.embed.handlerr	   rÆ   Ú&litellm.llms.custom_httpx.http_handlerr
   r   r   r   Úlitellm.secret_managers.mainr   Úlitellm.types.llms.bedrockr   r   r€   r   r   Úbase_aws_llmr   Úcommon_utilsr   Úamazon_nova_transformationr   Úamazon_titan_g1_transformationr   Ú&amazon_titan_multimodal_transformationr   Úamazon_titan_v2_transformationr   Úcohere_transformationr   Ú!twelvelabs_marengo_transformationr   Ú*litellm.litellm_core_utils.litellm_loggingr   r‹   r   r?   r‡   r;   ú<module>r     sw   ðñó Û Û Ý $ß 6Ó 6ã ã Ý AÝ K÷ó õ 4÷÷ @å %Ý 'Ý AÝ ?õõ @Ý ?Ý OáÝWôe	l�zõ e	lr‡   