Ë
    Ô~ïi­D  ã                  ód  — U d dl mZ d dlZd dlZd dlZd dlmZmZm	Z	m
Z
 d dlmZmZ d dlZddlmZ ddlmZmZ dd	lmZ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 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+ ddl,m-Z-m.Z. ddl/m0Z0m1Z1  ejd                  e3«      Z4de5d<   dZ6 e
deejn                  ejp                  f   ¬«      Z9 e
dee e   e!e   f   ¬«      Z:d!d„Z;d"d„Z< G d„ de&e9e:f   «      Z= G d„ de=ejn                  e e   f   e'«      Z> G d„ d e=ejp                  e!e   f   e(«      Z?y)#é    )ÚannotationsN)ÚAnyÚUnionÚMappingÚTypeVar)ÚSelfÚoverrideé   )Ú_exceptionsé   )ÚBetaÚ	AsyncBeta)Ú	NOT_GIVENÚTimeoutÚNotGiven)Úis_dictÚis_given)Ú
model_copy)Ú__version__)ÚStreamÚAsyncStream)ÚAnthropicErrorÚAPIStatusError)ÚDEFAULT_MAX_RETRIESÚ
BaseClientÚSyncAPIClientÚAsyncAPIClientÚFinalRequestOptions©ÚAWSEventStreamDecoder)ÚMessagesÚAsyncMessages)ÚCompletionsÚAsyncCompletionszlogging.LoggerÚlogzbedrock-2023-05-31Ú_HttpxClientT)ÚboundÚ_DefaultStreamTc                ó4  — t        | d¬«      }t        |j                  «      r}|j                  j                  dt        «       t        |j                  «      rH|j                  j                  d«      }|r+|j                  j                  d|j                  d«      «       |j                  dv rª|j                  dk(  r›t        |j                  «      st        d	«      ‚|j                  j                  d
d «      }t        j                  j                  t!        |«      d¬«      }|j                  j                  dd«      }|rd|› d�|_	        nd|› d�|_	        |j                  j#                  d«      rt%        d«      ‚|j                  dk(  rt%        d«      ‚|S )NT)ÚdeepÚanthropic_versionzanthropic-betaÚanthropic_betaú,>   ú/v1/completeú/v1/messagesú/v1/messages?beta=trueÚpostz<Expected dictionary json_data for post /completions endpointÚmodelú:)ÚsafeÚstreamFz/model/z/invoke-with-response-streamz/invokez/v1/messages/batchesz-The Batch API is not supported in Bedrock yetz/v1/messages/count_tokensz.Token counting is not supported in Bedrock yet)r   r   Ú	json_dataÚ
setdefaultÚDEFAULT_VERSIONr   ÚheadersÚgetÚsplitÚurlÚmethodÚRuntimeErrorÚpopÚurllibÚparseÚquoteÚstrÚ
startswithr   )Úinput_optionsÚoptionsÚbetasr2   r5   s        út/var/www/acinvestment.org/public_html/aci/backend/venv/lib/python3.12/site-packages/anthropic/lib/bedrock/_client.pyÚ_prepare_optionsrI   &   s[  € Ü˜¨TÔ2€Gäˆw× Ñ Ô!Ø×Ñ×$Ñ$Ð%8¼/ÔJä�G—O‘OÔ$Ø—O‘O×'Ñ'Ð(8Ó9ˆEÙØ×!Ñ!×,Ñ,Ð-=¸u¿{¹{È3Ó?OÔPà‡{�{ÐPÑPÐU\×UcÑUcÐgmÒUmÜ�w×(Ñ(Ô)ÜÐ]Ó^Ð^à×!Ñ!×%Ñ% g¨tÓ4ˆÜ—‘×"Ñ"¤3 u£:°CÐ"Ó8ˆØ×"Ñ"×&Ñ& x°Ó7ˆÙØ# E 7Ð*FÐGˆG�Kà# E 7¨'Ð2ˆGŒKà‡{�{×ÑÐ4Ô5ÜÐLÓMÐMà‡{�{Ð1Ò1ÜÐMÓNÐNà€Nó    c                 óò   — t         j                  j                  d«      } | €-	 ddl}|j	                  «       }|j
                  r|j
                  } | €t        j                  d«       d} | S # t        $ r Y Œ&w xY w)zi
    Infer the AWS region from the environment variables or
    from the boto3 session if available.
    Ú
AWS_REGIONNr   z0No AWS region specified, defaulting to us-east-1ú	us-east-1)	ÚosÚenvironr:   Úboto3ÚSessionÚregion_nameÚImportErrorr%   Úwarning)Ú
aws_regionrP   Úsessions      rH   Ú_infer_regionrW   F   sw   € ô
 —‘—‘ Ó-€JØÐð	Ûà—m‘m“oˆGØ×"Ò"Ø$×0Ñ0�
ð ÐÜ�‰ÐFÔGØ ˆ
àÐøô ò 	Ùð	ús   £,A* Á*	A6Á5A6c                  ó.   — e Zd Ze	 	 	 	 	 	 	 	 dd„«       Zy)ÚBaseBedrockClientc               óÜ  — |j                   dk(  rt        j                  |||¬«      S |j                   dk(  rt        j                  |||¬«      S |j                   dk(  rt        j                  |||¬«      S |j                   dk(  rt        j
                  |||¬«      S |j                   dk(  rt        j                  |||¬«      S |j                   dk(  rt        j                  |||¬«      S |j                   dk(  rt        j                  |||¬«      S |j                   d	k(  rt        j                  |||¬«      S |j                   d
k\  rt        j                  |||¬«      S t        |||¬«      S )Ni�  )ÚresponseÚbodyi‘  i“  i”  i™  i¦  i­  i÷  iô  )Ústatus_coder   ÚBadRequestErrorÚAuthenticationErrorÚPermissionDeniedErrorÚNotFoundErrorÚConflictErrorÚUnprocessableEntityErrorÚRateLimitErrorÚServiceUnavailableErrorÚInternalServerErrorr   )ÚselfÚerr_msgr\   r[   s       rH   Ú_make_status_errorz$BaseBedrockClient._make_status_error^   sT  € ð ×Ñ 3Ò&Ü×.Ñ.¨wÀÐPTÔUÐUà×Ñ 3Ò&Ü×2Ñ2°7ÀXÐTXÔYÐYà×Ñ 3Ò&Ü×4Ñ4°WÀxÐVZÔ[Ð[à×Ñ 3Ò&Ü×,Ñ,¨W¸xÈdÔSÐSà×Ñ 3Ò&Ü×,Ñ,¨W¸xÈdÔSÐSà×Ñ 3Ò&Ü×7Ñ7¸È(ÐY]Ô^Ð^à×Ñ 3Ò&Ü×-Ñ-¨gÀÈtÔTÐTà×Ñ 3Ò&Ü×6Ñ6°wÈÐX\Ô]Ð]à×Ñ 3Ò&Ü×2Ñ2°7ÀXÐTXÔYÐYÜ˜g°¸tÔDÐDrJ   N)rh   rC   r\   Úobjectr[   zhttpx.ResponseÚreturnr   )Ú__name__Ú
__module__Ú__qualname__r	   ri   © rJ   rH   rY   rY   ]   s@   „ Øð!Eàð!Eð ð	!Eð
 !ð!Eð 
ò!Eó ñ!ErJ   rY   c                  ó.  ‡ — e Zd ZU ded<   ded<   ded<   dddddddeeddddf	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd	„Zedd
„«       Zedd„«       Z	edd„«       Z
ddddddededdddi dœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„ZeZˆ xZS )ÚAnthropicBedrockr!   Úmessagesr#   Úcompletionsr   ÚbetaNFc           
     óú  •— |€t         j                  j                  d«      }|d uxs |d uxs
 |d uxs |d u}|�|rt        d«      ‚|| _        || _        || _        |€
t        «       n|| _        || _	        || _
        |€t         j                  j                  d«      }|€d| j                  › d�}t        ‰| �1  t        |||	|
|||¬«       t        | «      | _        t!        | «      | _        t%        | «      | _        y ©NÚAWS_BEARER_TOKEN_BEDROCKzzCannot specify both `api_key` and AWS credentials (`aws_access_key`, `aws_secret_key`, `aws_session_token`, `aws_profile`)ÚANTHROPIC_BEDROCK_BASE_URLzhttps://bedrock-runtime.z.amazonaws.com)ÚversionÚbase_urlÚtimeoutÚmax_retriesÚcustom_headersÚcustom_queryÚhttp_clientÚ_strict_response_validation)rN   rO   r:   Ú
ValueErrorÚapi_keyÚaws_secret_keyÚaws_access_keyrW   rU   Úaws_profileÚaws_session_tokenÚsuperÚ__init__r   r   rt   r!   rr   r#   rs   ©rg   rƒ   r„   rU   r…   r†   r‚   rz   r{   r|   Údefault_headersÚdefault_queryr   r€   Úhas_aws_credentialsÚ	__class__s                  €rH   rˆ   zAnthropicBedrock.__init__ˆ   s-  ø€ ð2 ˆ?Ü—j‘j—n‘nÐ%?Ó@ˆGð  $Ð&ò 'Ø TÐ)ò'à ¨Ð,ò'ð  $Ð&ð	 	ð ÐÑ#6Üð Móð ð $+ˆŒà,ˆÔà,ˆÔà-7Ð-?œ-œ/ÀZˆŒØ&ˆÔà!2ˆÔàÐÜ—z‘z—~‘~Ð&BÓCˆHØÐØ1°$·/±/Ð1BÀ.ÐQˆHä‰ÑÜØØØ#Ø*Ø&Ø#Ø(Cð 	ô 		
ô ˜“JˆŒ	Ü  ›ˆŒÜ& tÓ,ˆÕrJ   c                ó   — t        «       S ©Nr   ©rg   s    rH   Ú_make_sse_decoderz"AnthropicBedrock._make_sse_decoderÎ   ó   € ä$Ó&Ð&rJ   c                ó   — t        |«      S r�   ©rI   ©rg   rF   s     rH   rI   z!AnthropicBedrock._prepare_optionsÒ   s   € ä Ó(Ð(rJ   c                ó°  — | j                   �d| j                   › �|j                  d<   y ddlm} |j	                  «       j                  «       } ||j                  t        |j                  «      |j                  | j                  | j                  | j                  | j                  xs d| j                  |¬«	      }|j                  j                  |«       y ©NzBearer ÚAuthorizationr   )Úget_auth_headersrM   )	r=   r<   r9   r„   rƒ   r†   ÚregionÚprofileÚdata©r‚   r9   Ú_authr™   ÚreadÚdecoder=   rC   r<   r„   rƒ   r†   rU   r…   Úupdate©rg   Úrequestr™   rœ   r9   s        rH   Ú_prepare_requestz!AnthropicBedrock._prepare_requestÖ   sª   € à�<‰<Ð#Ø18¸¿¹¸Ð/GˆG�O‰O˜OÑ,Øå+à�|‰|‹~×$Ñ$Ó&ˆá"Ø—>‘>Ü�G—K‘KÓ Ø—O‘OØ×.Ñ.Ø×.Ñ.Ø"×4Ñ4Ø—?‘?Ò1 kØ×$Ñ$Øô

ˆð 	�‰×Ñ˜wÕ'rJ   ©rƒ   r„   rU   r†   r‚   rz   r{   r   r|   rŠ   Úset_default_headersr‹   Úset_default_queryÚ_extra_kwargsc               óì  — |
�|�t        d«      ‚|�|�t        d«      ‚| j                  }|
�i |¥|
¥}n|�|}| j                  }|�i |¥|¥}n|�|} | j                  d|xs | j                  |xs | j
                  |xs | j                  |xs | j                  |xs | j                  |xs | j                  t        |t        «      r| j                  n||t        |	«      r|	n| j                  ||dœ|¤ŽS ©z~
        Create a new client instance re-using the same options given to the current client with optional overriding.
        zPThe `default_headers` and `set_default_headers` arguments are mutually exclusivezLThe `default_query` and `set_default_query` arguments are mutually exclusive)rƒ   r„   rU   r†   r‚   rz   r{   r   r|   rŠ   r‹   ro   ©r�   Ú_custom_headersÚ_custom_queryr�   rƒ   r„   rU   r†   r‚   rz   Ú
isinstancer   r{   r   r|   ©rg   rƒ   r„   rU   r†   r‚   rz   r{   r   r|   rŠ   r¦   r‹   r§   r¨   r9   Úparamss                    rH   ÚcopyzAnthropicBedrock.copyí   ó'  € ð* Ð&Ð+>Ð+JÜÐoÓpÐpàÐ$Ð):Ð)FÜÐkÓlÐlà×&Ñ&ˆØÐ&Ø4˜Ð4 OÐ4‰GØ Ð,Ø)ˆGà×#Ñ#ˆØÐ$Ø0˜Ð0 -Ð0‰FØÐ*Ø&ˆFàˆt�~‰~ð 
Ø)Ò@¨T×-@Ñ-@Ø)Ò@¨T×-@Ñ-@Ø!Ò4 T§_¡_Ø/ÒI°4×3IÑ3IØÒ+˜tŸ|™|ØÒ. §¡Ü$.¨w¼Ô$A�D—L’LÀwØ#Ü'/°Ô'<™À$×BRÑBRØ#Ø ñ
ð ñ
ð 	
rJ   )rƒ   ú
str | Noner„   r³   rU   r³   r…   r³   r†   r³   r‚   r³   rz   ústr | httpx.URL | Noner{   ú'float | httpx.Timeout | None | NotGivenr|   ÚintrŠ   úMapping[str, str] | Noner‹   úMapping[str, object] | Noner   úhttpx.Client | Noner€   Úboolrk   ÚNone©rk   r    ©rF   r   rk   r   ©r£   zhttpx.Requestrk   r»   )rƒ   r³   r„   r³   rU   r³   r†   r³   r‚   r³   rz   r´   r{   ú!float | Timeout | None | NotGivenr   r¹   r|   úint | NotGivenrŠ   r·   r¦   r·   r‹   r¸   r§   r¸   r¨   úMapping[str, Any]rk   r   ©rl   rm   rn   Ú__annotations__r   r   rˆ   r	   r‘   rI   r¤   r±   Úwith_optionsÚ__classcell__©r�   s   @rH   rq   rq   ƒ   sé  ø… ØÓØÓØ
ƒJð &*Ø%)Ø!%Ø"&Ø(,Ø"Ø+/Ø;DØ.Ø48Ø59à+/ð -2ð/D-à"ðD-ð #ðD-ð ð	D-ð
  ðD-ð &ðD-ð ðD-ð )ðD-ð 9ðD-ð ðD-ð 2ðD-ð 3ðD-ð )ðD-ð. &*ð/D-ð0 
õ1D-ðL ò'ó ð'ð ò)ó ð)ð ò(ó ð(ð2 &*Ø%)Ø!%Ø(,Ø"Ø+/Ø5>Ø+/Ø&/Ø48Ø8<Ø59Ø9=Ø+-ñ!4
ð #ð4
ð #ð	4
ð
 ð4
ð &ð4
ð ð4
ð )ð4
ð 3ð4
ð )ð4
ð $ð4
ð 2ð4
ð 6ð4
ð 3ð4
ð 7ð4
ð  )ð!4
ð" 
ó#4
ðp „LrJ   rq   c                  ó.  ‡ — e Zd ZU ded<   ded<   ded<   dddddddeeddddf	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd	„Zedd
„«       Zedd„«       Z	edd„«       Z
ddddddededdddi dœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„ZeZˆ xZS )ÚAsyncAnthropicBedrockr"   rr   r$   rs   r   rt   NFc           
     óú  •— |€t         j                  j                  d«      }|d uxs |d uxs
 |d uxs |d u}|�|rt        d«      ‚|| _        || _        || _        |€
t        «       n|| _        || _	        || _
        |€t         j                  j                  d«      }|€d| j                  › d�}t        ‰| �1  t        |||	|
|||¬«       t        | «      | _        t!        | «      | _        t%        | «      | _        y rv   )rN   rO   r:   r�   r‚   rƒ   r„   rW   rU   r…   r†   r‡   rˆ   r   r"   rr   r$   rs   r   rt   r‰   s                  €rH   rˆ   zAsyncAnthropicBedrock.__init__-  s.  ø€ ð2 ˆ?Ü—j‘j—n‘nÐ%?Ó@ˆGð  $Ð&ò 'Ø TÐ)ò'à ¨Ð,ò'ð  $Ð&ð	 	ð ÐÑ#6Üð Móð ð $+ˆŒà,ˆÔà,ˆÔà-7Ð-?œ-œ/ÀZˆŒØ&ˆÔà!2ˆÔàÐÜ—z‘z—~‘~Ð&BÓCˆHØÐØ1°$·/±/Ð1BÀ.ÐQˆHä‰ÑÜØØØ#Ø*Ø&Ø#Ø(Cð 	ô 		
ô & dÓ+ˆŒÜ+¨DÓ1ˆÔÜ˜d“Oˆ�	rJ   c                ó   — t        «       S r�   r   r�   s    rH   r‘   z'AsyncAnthropicBedrock._make_sse_decoders  r’   rJ   c              ƒ  ó    K  — t        |«      S ­wr�   r”   r•   s     rH   rI   z&AsyncAnthropicBedrock._prepare_optionsw  s   è ø€ ä Ó(Ð(ùs   ‚c              ƒ  ó¸  K  — | j                   �d| j                   › �|j                  d<   y ddlm} |j	                  «       j                  «       } ||j                  t        |j                  «      |j                  | j                  | j                  | j                  | j                  xs d| j                  |¬«	      }|j                  j                  |«       y ­wr—   r�   r¢   s        rH   r¤   z&AsyncAnthropicBedrock._prepare_request{  s®   è ø€ à�<‰<Ð#Ø18¸¿¹¸Ð/GˆG�O‰O˜OÑ,Øå+à�|‰|‹~×$Ñ$Ó&ˆá"Ø—>‘>Ü�G—K‘KÓ Ø—O‘OØ×.Ñ.Ø×.Ñ.Ø"×4Ñ4Ø—?‘?Ò1 kØ×$Ñ$Øô

ˆð 	�‰×Ñ˜wÕ'ùs   ‚CCr¥   c               óì  — |
�|�t        d«      ‚|�|�t        d«      ‚| j                  }|
�i |¥|
¥}n|�|}| j                  }|�i |¥|¥}n|�|} | j                  d|xs | j                  |xs | j
                  |xs | j                  |xs | j                  |xs | j                  |xs | j                  t        |t        «      r| j                  n||t        |	«      r|	n| j                  ||dœ|¤ŽS rª   r«   r¯   s                    rH   r±   zAsyncAnthropicBedrock.copy’  r²   rJ   )rƒ   r³   r„   r³   rU   r³   r…   r³   r†   r³   r‚   r³   rz   r´   r{   rµ   r|   r¶   rŠ   r·   r‹   r¸   r   úhttpx.AsyncClient | Noner€   rº   rk   r»   r¼   r½   r¾   )rƒ   r³   r„   r³   rU   r³   r†   r³   r‚   r³   rz   r´   r{   r¿   r   rÎ   r|   rÀ   rŠ   r·   r¦   r·   r‹   r¸   r§   r¸   r¨   rÁ   rk   r   rÂ   rÆ   s   @rH   rÈ   rÈ   (  sé  ø… ØÓØ!Ó!Ø
ƒOð &*Ø%)Ø!%Ø"&Ø(,Ø"Ø+/Ø;DØ.Ø48Ø59à04ð -2ð/D$à"ðD$ð #ðD$ð ð	D$ð
  ðD$ð &ðD$ð ðD$ð )ðD$ð 9ðD$ð ðD$ð 2ðD$ð 3ðD$ð .ðD$ð. &*ð/D$ð0 
õ1D$ðL ò'ó ð'ð ò)ó ð)ð ò(ó ð(ð2 &*Ø%)Ø!%Ø(,Ø"Ø+/Ø5>Ø04Ø&/Ø48Ø8<Ø59Ø9=Ø+-ñ!4
ð #ð4
ð #ð	4
ð
 ð4
ð &ð4
ð ð4
ð )ð4
ð 3ð4
ð .ð4
ð $ð4
ð 2ð4
ð 6ð4
ð 3ð4
ð 7ð4
ð  )ð!4
ð" 
ó#4
ðp „LrJ   rÈ   )rE   r   rk   r   )rk   rC   )@Ú
__future__r   rN   ÚloggingÚurllib.parser@   Útypingr   r   r   r   Útyping_extensionsr   r	   ÚhttpxÚ r   Ú_betar   r   Ú_typesr   r   r   Ú_utilsr   r   Ú_compatr   Ú_versionr   Ú
_streamingr   r   r   r   Ú_base_clientr   r   r   r   r   Ú_stream_decoderr    Úresources.messagesr!   r"   Úresources.completionsr#   r$   Ú	getLoggerrl   r%   rÃ   r8   ÚClientÚAsyncClientr&   r(   rI   rW   rY   rq   rÈ   ro   rJ   rH   ú<module>rã      s  ðÞ "ã 	Û Û ß /Ó /ß ,ã å ß "ß 2Ñ 2ß 'Ý !Ý #ß -ß 9÷õ õ 3ß 9ß Bà'�g×'Ñ'¨Ó1€€^Ó 1à&€á˜¨u°U·\±\À5×CTÑCTÐ5TÑ/UÔV€ÙÐ+°5¸À¹ÀkÐRUÑFVÐ9VÑ3WÔX€óó@ô.#E˜
 =°/Ð#AÑBô #EôLbÐ(¨¯©°v¸c±{Ð)BÑCÀ]ô bôJbÐ-¨e×.?Ñ.?ÀÈSÑAQÐ.QÑRÐTbõ brJ   