ó
    °"³jgH  ã                  óD  • S SK Jr  S SKrS SKJrJrJrJrJrJ	r	  S SK
JrJr  S SKrSSKJr  SSKJrJr  SS	KJrJr  SS
KJrJr  SSKJrJrJr  SSKJrJr  SSK J!r!  SSK"J#r#  SSK$J%r%J&r&  SSKJ'r'J(r(  SSK)J*r*  SSK+J,r,J-r-J.r.J/r/J0r0  SSK1J2r2J3r3  \(       a  S SK4J5r6  Sr7\" S\\Rp                  \Rr                  4   S9r:\" S\\%\   \&\   4   S9r; " S S\-\:\;4   5      r< " S S\<\Rp                  \%\   4   \.5      r= " S S\<\Rr                  \&\   4   \/5      r>S S jr?g)!é    )ÚannotationsN)ÚTYPE_CHECKINGÚAnyÚUnionÚMappingÚTypeVarÚSequence)ÚSelfÚoverrideé   )Ú_exceptionsé   )Ú	load_authÚrefresh_auth)ÚBetaÚ	AsyncBeta)ÚNotGivenÚ	not_given)Úis_dictÚasyncifyÚis_given)Ú
model_copyÚtyped_cached_property)ÚFinalRequestOptions)Ú__version__)ÚStreamÚAsyncStream)ÚAnthropicErrorÚAPIStatusError)ÚMiddlewareInput)ÚDEFAULT_MAX_RETRIESÚ
BaseClientÚSyncAPIClientÚAsyncAPIClientÚmerge_headers)ÚMessagesÚAsyncMessages)ÚCredentialszvertex-2023-10-16Ú_HttpxClientT)ÚboundÚ_DefaultStreamTc                  ó`   • \ rS rSr\SS j5       r\SS j5       r\        S	S j5       rSr	g)
ÚBaseVertexClienté'   c                ó   • [        S5      e)Nzregion not set)ÚRuntimeError)Úselfs    ÚY/home/mande/repo/quber/.venv/lib/python3.13/site-packages/anthropic/lib/vertex/_client.pyÚregionÚBaseVertexClient.region(   s   € äÐ+Ó,Ð,ó    c                óT   • [         R                  R                  S5      nU(       a  U$ g )NÚANTHROPIC_VERTEX_PROJECT_ID)ÚosÚenvironÚget©r1   Ú
project_ids     r2   r<   ÚBaseVertexClient.project_id,   s!   € ä—Z‘Z—^‘^Ð$AÓBˆ
ÞØÐàr5   c               óú  • UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R
                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S:X  a  [        R                  " XUS9$ UR                   S	:X  a  [        R                  " XUS9$ UR                   S
:X  a  [        R                  " XUS9$ UR                   S:¼  a  [        R                  " XUS9$ [        XUS9$ )Ni�  )ÚresponseÚbodyi‘  i“  i”  i™  i¦  i­  i÷  iø  iô  )Ústatus_coder   ÚBadRequestErrorÚAuthenticationErrorÚPermissionDeniedErrorÚNotFoundErrorÚConflictErrorÚUnprocessableEntityErrorÚRateLimitErrorÚServiceUnavailableErrorÚDeadlineExceededErrorÚInternalServerErrorr   )r1   Úerr_msgr@   r?   s       r2   Ú_make_status_errorÚ#BaseVertexClient._make_status_error4   sb  € ð ×Ñ 3Ó&Ü×.Ò.¨wÐPTÑUÐUà×Ñ 3Ó&Ü×2Ò2°7ÐTXÑYÐYà×Ñ 3Ó&Ü×4Ò4°WÐVZÑ[Ð[à×Ñ 3Ó&Ü×,Ò,¨WÈdÑSÐSà×Ñ 3Ó&Ü×,Ò,¨WÈdÑSÐSà×Ñ 3Ó&Ü×7Ò7¸ÐY]Ñ^Ð^à×Ñ 3Ó&Ü×-Ò-¨gÈtÑTÐTà×Ñ 3Ó&Ü×6Ò6°wÐX\Ñ]Ð]à×Ñ 3Ó&Ü×4Ò4°WÐVZÑ[Ð[à×Ñ 3Ó&Ü×2Ò2°7ÐTXÑYÐYÜ˜g¸tÑDÐDr5   © N©ÚreturnÚstr)rQ   ú
str | None)rL   rR   r@   Úobjectr?   zhttpx2.ResponserQ   r   )
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r3   r<   r   rM   Ú__static_attributes__rO   r5   r2   r-   r-   '   sh   † Øó-ó ð-ð óó ðð ð$Eàð$Eð ð	$Eð
 "ð$Eð 
ó$Eó ó$Er5   r-   c                  ó8  ^ • \ rS rSr% S\S'   S\S'   \\SSS\\SSSSSS.                         SU 4S	 jjjr\SS
 j5       r	\SS j5       r
SS jr\\SSS\S\SSSS\0 S.                             SS jjr\rSS jrSrU =r$ )ÚAnthropicVertexé\   r&   Úmessagesr   ÚbetaNF©r3   r<   Úaccess_tokenÚcredentialsÚbase_urlÚtimeoutÚmax_retriesÚdefault_headersÚdefault_queryÚhttp_clientÚ
middlewareÚ_strict_response_validationc               óò  >• [        U5      (       d$  [        R                  R                  S[        5      n[        U5      (       d  [        S5      eUcC  [        R                  R                  S5      nUc!  US:X  a  SnOUS:X  a  SnOUS:X  a  S	nOS
U S3n[        TU ]  [        UUUUU	U
UUS9	  [        U5      (       a  X l	        Xl
        X0l        X@l        [        U 5      U l        [        U 5      U l        g ©NÚCLOUD_ML_REGIONzŽNo region was given. The client should be instantiated with the `region` argument or the `CLOUD_ML_REGION` environment variable should be set.ÚANTHROPIC_VERTEX_BASE_URLÚglobalz$https://aiplatform.googleapis.com/v1Úusz+https://aiplatform.us.rep.googleapis.com/v1Úeuz+https://aiplatform.eu.rep.googleapis.com/v1zhttps://z-aiplatform.googleapis.com/v1)	Úversionrb   rc   rd   Úcustom_headersÚcustom_queryrg   rh   ri   )r   r8   r9   r:   r   Ú
ValueErrorÚsuperÚ__init__r   r<   r3   r`   ra   r&   r]   r   r^   ©r1   r3   r<   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   Ú	__class__s                €r2   rv   ÚAnthropicVertex.__init__`   sþ   ø€ ô" ˜×ÑÜ—Z‘Z—^‘^Ð$5´yÓAˆFÜ˜×ÑÜð aóð ð ÑÜ—z‘z—~‘~Ð&AÓBˆHØÑØ˜XÓ%ØE‘HØ˜t“^ØL‘HØ˜t“^ØL‘Hà!)¨&¨Ð1NÐO�Hä‰ÑÜØØØ#Ø*Ø&Ø#Ø!Ø(Cð 	ñ 
	
ô �J×ÑØ(ŒOàŒØ(ÔØ&Ôä  ›ˆŒÜ˜“Jˆ�	r5   c                ó>   • [        XR                  U R                  S9$ ©N)r<   r3   ©Ú_prepare_optionsr<   r3   ©r1   Úoptionss     r2   r}   Ú AnthropicVertex._prepare_optionsš   s   € ä ·O±OÈDÏKÉKÑXÐXr5   c                ó†   • UR                   R                  S5      (       a  g SU R                  5        3UR                   S'   g ©NÚAuthorizationzBearer ©Úheadersr:   Ú_ensure_access_token©r1   Úrequests     r2   Ú_prepare_requestÚ AnthropicVertex._prepare_requestž   s9   € à�?‰?×Ñ˜×/Ñ/àà-4°T×5NÑ5NÓ5PÐ4QÐ+Rˆ�‰˜Ò(r5   c                ó  • U R                   b  U R                   $ U R                  (       d2  [        U R                  S9u  U l        nU R                  (       d  Xl        U R                  R                  (       d  U R                  R
                  (       d  [        U R                  5        U R                  R
                  (       d  [        S5      e[        U R                  R
                  [        5      (       d   eU R                  R
                  $ ©N)r<   z0Could not resolve API token from the environment)
r`   ra   r   r<   ÚexpiredÚtokenr   r0   Ú
isinstancerR   r;   s     r2   r†   Ú$AnthropicVertex._ensure_access_token¦   s¼   € Ø×ÑÑ(Ø×$Ñ$Ð$à××Ü+4ÀÇÁÑ+PÑ(ˆDÔ˜jØ—?—?Ø",”à×Ñ×#×#¨4×+;Ñ+;×+A×+AÜ˜×)Ñ)Ô*à×Ñ×%×%ÜÐQÓRÐRä˜$×*Ñ*×0Ñ0´#×6Ñ6Ð6Ð6Ø×Ñ×%Ñ%Ð%r5   ©r3   r<   r`   ra   rb   rc   rg   rd   re   Úset_default_headersrf   Úset_default_queryrh   Ú_extra_kwargsc               óÚ  • U	b  U
b  [        S5      eUb  Ub  [        S5      eU R                  nU	b  [        Xù5      nOU
b  U
nU R                  nUb  0 UEUEnOUb  UnU=(       d    U R                  nU R
                  " S[        U5      (       a  UOU R                  [        U5      (       a  UOU R                  =(       d    [        U=(       d    U R                  U=(       d    U R                  U=(       d    U R                  [        U[        5      (       a  U R                  OUU[        U5      (       a  UOU R                   UU[        U[        5      (       a  U R"                  OUS.UD6$ ©zn
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)r3   r<   r`   ra   rb   rc   rg   rd   re   rf   rh   rO   ©rt   Ú_custom_headersr%   Ú_custom_queryÚ_clientrx   r   r3   r<   r   r`   ra   rb   r�   r   rc   rd   Ú_middleware©r1   r3   r<   r`   ra   rb   rc   rg   rd   re   r’   rf   r“   rh   r”   r…   Úparamss                    r2   ÚcopyÚAnthropicVertex.copy¸   óR  € ð* Ñ&Ð+>Ñ+JÜÐoÓpÐpàÑ$Ð):Ñ)FÜÐkÓlÐlà×&Ñ&ˆØÑ&Ü# GÓ=‰GØ Ñ,Ø)ˆGà×#Ñ#ˆØÑ$Ø0˜Ð0 -Ð0‰FØÑ*Ø&ˆFà!×1 T§\¡\ˆà�~Š~ð 
Ü% f×-Ñ-‘6°4·;±;Ü%-¨j×%9Ñ%9‘z¸t¿¹×?[ÔR[Ø%×:¨×):Ñ):Ø#×7 t×'7Ñ'7Ø×. §¡Ü$.¨w¼×$AÑ$A�D—L’LÀwØ#Ü'/°×'<Ñ'<™À$×BRÑBRØ#Ø Ü+5°jÄ(×+KÑ+K�t×'Ò'ÐQ[ñ
ð ñ
ð 	
r5   c                ó<   • U R                  / U R                  QUQS9$ ©zÖA new client with the given middleware appended after this client's middleware.

Convenience for applying extra middleware to a single request:

```py
client.with_middleware(my_middleware).messages.create(...)
```
)rh   ©rž   r›   ©r1   rh   s     r2   Úwith_middlewareÚAnthropicVertex.with_middlewareô   ó&   € ð �y‰yÐ$D d×&6Ñ&6Ð$D¸Ð$DˆyÐEÐEr5   ©r`   r^   ra   r]   r<   r3   )r3   ústr | NotGivenr<   r©   r`   rS   ra   úGoogleCredentials | Nonerb   ústr | httpx2.URL | Nonerc   ú(float | httpx2.Timeout | None | NotGivenrd   Úintre   úMapping[str, str] | Nonerf   úMapping[str, object] | Nonerg   úhttpx2.Client | Nonerh   ú Sequence[MiddlewareInput] | Noneri   ÚboolrQ   ÚNone©r   r   rQ   r   ©rˆ   zhttpx2.RequestrQ   r³   rP   )r3   r©   r<   r©   r`   rS   ra   rª   rb   r«   rc   r¬   rg   r°   rd   úint | NotGivenre   r®   r’   r®   rf   r¯   r“   r¯   rh   ú+Sequence[MiddlewareInput] | None | NotGivenr”   úMapping[str, Any]rQ   r
   ©rh   r    rQ   r
   ©rU   rV   rW   rX   Ú__annotations__r   r!   rv   r   r}   r‰   r†   rž   Úwith_optionsr¥   rY   Ú__classcell__©rx   s   @r2   r[   r[   \   sÎ  ø‡ ØÓØ
ƒJð
 "+Ø%.Ø#'Ø04Ø,0Ø<EØ.Ø48Ø59à,0Ø7;Ø,1ñ8ð ð8ð #ð	8ð
 !ð8ð .ð8ð *ð8ð :ð8ð ð8ð 2ð8ð 3ð8ð *ð8ð 5ð8ð &*ð8ð  
÷!8ð 8ðt óYó ðYð óSó ðSô&ð* "+Ø%.Ø#'Ø04Ø,0Ø<EØ,0Ø&/Ø48Ø8<Ø59Ø9=ØBKØ+-ñ!6
ð ð6
ð #ð	6
ð
 !ð6
ð .ð6
ð *ð6
ð :ð6
ð *ð6
ð $ð6
ð 2ð6
ð 6ð6
ð 3ð6
ð 7ð6
ð @ð6
ð  )ð!6
ð" 
õ#6
ðt €L÷	Fò 	Fr5   r[   c                  ó8  ^ • \ rS rSr% S\S'   S\S'   \\SSS\\SSSSSS.                         SU 4S	 jjjr\SS
 j5       r	\SS j5       r
SS jr\\SSS\S\SSSS\0 S.                             SS jjr\rSS jrSrU =r$ )ÚAsyncAnthropicVertexé   r'   r]   r   r^   NFr_   c               óò  >• [        U5      (       d$  [        R                  R                  S[        5      n[        U5      (       d  [        S5      eUcC  [        R                  R                  S5      nUc!  US:X  a  SnOUS:X  a  SnOUS:X  a  S	nOS
U S3n[        TU ]  [        UUUUU	U
UUS9	  [        U5      (       a  X l	        Xl
        X0l        X@l        [        U 5      U l        [        U 5      U l        g rk   )r   r8   r9   r:   r   rt   ru   rv   r   r<   r3   r`   ra   r'   r]   r   r^   rw   s                €r2   rv   ÚAsyncAnthropicVertex.__init__  sÿ   ø€ ô" ˜×ÑÜ—Z‘Z—^‘^Ð$5´yÓAˆFÜ˜×ÑÜð aóð ð ÑÜ—z‘z—~‘~Ð&AÓBˆHØÑØ˜XÓ%ØE‘HØ˜t“^ØL‘HØ˜t“^ØL‘Hà!)¨&¨Ð1NÐO�Hä‰ÑÜØØØ#Ø*Ø&Ø#Ø!Ø(Cð 	ñ 
	
ô �J×ÑØ(ŒOàŒØ(ÔØ&Ôä% dÓ+ˆŒÜ˜d“Oˆ�	r5   c              ƒ  óF   #   • [        XR                  U R                  S9$ 7fr{   r|   r~   s     r2   r}   Ú%AsyncAnthropicVertex._prepare_options>  s   é € ä ·O±OÈDÏKÉKÑXÐXùs   ‚!c              ƒ  ó¢   #   • UR                   R                  S5      (       a  g SU R                  5       I S h  v•N  3UR                   S'   g  N7fr‚   r„   r‡   s     r2   r‰   Ú%AsyncAnthropicVertex._prepare_requestB  sB   é € à�?‰?×Ñ˜×/Ñ/àà-4¸4×;TÑ;TÓ;V×5VÐ4WÐ+Xˆ�‰˜Ò(Ñ5Vùs   ‚6A¸A¹Ac              ƒ  óv  #   • U R                   b  U R                   $ U R                  (       dD  [        [        5      " U R                  S9I S h  v•N u  U l        nU R                  (       d  Xl        U R                  R
                  (       d  U R                  R                  (       d'  [        [        5      " U R                  5      I S h  v•N   U R                  R                  (       d  [        S5      e[        U R                  R                  [        5      (       d   eU R                  R                  $  Nç Nm7frŒ   )r`   ra   r   r   r<   r�   rŽ   r   r0   r�   rR   r;   s     r2   r†   Ú)AsyncAnthropicVertex._ensure_access_tokenJ  sà   é € Ø×ÑÑ(Ø×$Ñ$Ð$à××Ü19¼)Ô1DÐPT×P_ÑP_Ñ1`×+`Ñ(ˆDÔ˜jØ—?—?Ø",”à×Ñ×#×#¨4×+;Ñ+;×+A×+AÜœ<Ô(¨×)9Ñ)9Ó:×:Ð:à×Ñ×%×%ÜÐQÓRÐRä˜$×*Ñ*×0Ñ0´#×6Ñ6Ð6Ð6Ø×Ñ×%Ñ%Ð%ñ ,añ
 ;ùs&   ‚AD9ÁD5ÁA;D9Ã	D7Ã
A,D9Ä7D9r‘   c               óÚ  • U	b  U
b  [        S5      eUb  Ub  [        S5      eU R                  nU	b  [        Xù5      nOU
b  U
nU R                  nUb  0 UEUEnOUb  UnU=(       d    U R                  nU R
                  " S[        U5      (       a  UOU R                  [        U5      (       a  UOU R                  =(       d    [        U=(       d    U R                  U=(       d    U R                  U=(       d    U R                  [        U[        5      (       a  U R                  OUU[        U5      (       a  UOU R                   UU[        U[        5      (       a  U R"                  OUS.UD6$ r–   r—   rœ   s                    r2   rž   ÚAsyncAnthropicVertex.copy\  r    r5   c                ó<   • U R                  / U R                  QUQS9$ r¢   r£   r¤   s     r2   r¥   Ú$AsyncAnthropicVertex.with_middleware˜  r§   r5   r¨   )r3   r©   r<   r©   r`   rS   ra   rª   rb   r«   rc   r¬   rd   r­   re   r®   rf   r¯   rg   úhttpx2.AsyncClient | Nonerh   r±   ri   r²   rQ   r³   r´   rµ   rP   )r3   r©   r<   r©   r`   rS   ra   rª   rb   r«   rc   r¬   rg   rÎ   rd   r¶   re   r®   r’   r®   rf   r¯   r“   r¯   rh   r·   r”   r¸   rQ   r
   r¹   rº   r¾   s   @r2   rÀ   rÀ      sÎ  ø‡ ØÓØ
ƒOð
 "+Ø%.Ø#'Ø04Ø,0Ø<EØ.Ø48Ø59à15Ø7;Ø,1ñ8$ð ð8$ð #ð	8$ð
 !ð8$ð .ð8$ð *ð8$ð :ð8$ð ð8$ð 2ð8$ð 3ð8$ð /ð8$ð 5ð8$ð &*ð8$ð  
÷!8$ð 8$ðt óYó ðYð óYó ðYô&ð* "+Ø%.Ø#'Ø04Ø,0Ø<EØ15Ø&/Ø48Ø8<Ø59Ø9=ØBKØ+-ñ!6
ð ð6
ð #ð	6
ð
 !ð6
ð .ð6
ð *ð6
ð :ð6
ð /ð6
ð $ð6
ð 2ð6
ð 6ð6
ð 3ð6
ð 7ð6
ð @ð6
ð  )ð!6
ð" 
õ#6
ðt €L÷	Fò 	Fr5   rÀ   c               ó¬  • [        U SS9n[        UR                  5      (       a   UR                  R                  S[        5        UR
                  S;   a˜  UR                  S:X  aˆ  Uc  [        S5      e[        UR                  5      (       d  [        S5      eUR                  R                  S5      nUR                  R                  S	S
5      nU(       a  SOSnSU SU SU SU 3Ul        UR
                  S;   a,  UR                  S:X  a  Uc  [        S5      eSU SU S3Ul        UR
                  R                  S5      (       a  [        S5      eU$ )NT)ÚdeepÚanthropic_version>   ú/v1/messagesú/v1/messages?beta=trueÚpostzÐNo project_id was given and it could not be resolved from credentials. The client should be instantiated with the `project_id` argument or the `ANTHROPIC_VERTEX_PROJECT_ID` environment variable should be set.z;Expected json data to be a dictionary for post /v1/messagesÚmodelÚstreamFÚstreamRawPredictÚ
rawPredictz
/projects/z/locations/z/publishers/anthropic/models/Ú:>   ú/v1/messages/count_tokensú#/v1/messages/count_tokens?beta=truez4/publishers/anthropic/models/count-tokens:rawPredictz/v1/messages/batchesz7The Batch API is not supported in the Vertex client yet)r   r   Ú	json_dataÚ
setdefaultÚDEFAULT_VERSIONÚurlÚmethodr0   Úpopr:   Ú
startswithr   )Úinput_optionsr<   r3   r   rÕ   rÖ   Ú	specifiers          r2   r}   r}   ¤  sZ  € Ü˜¨TÑ2€Gäˆw× Ñ ×!Ñ!Ø×Ñ×$Ñ$Ð%8¼/ÔJà‡{�{Ð@Ó@ÀWÇ^Á^ÐW]ÓE]ØÑÜð cóð ô �w×(Ñ(×)Ñ)ÜÐ\Ó]Ð]à×!Ñ!×%Ñ% gÓ.ˆØ×"Ñ"×&Ñ& x°Ó7ˆÞ*0Ñ&°lˆ	à" : ,¨k¸&¸ÐA^Ð_dÐ^eÐefÐgpÐfqÐrˆŒà‡{�{ÐZÓZÐ_f×_mÑ_mÐqwÓ_wØÑÜð cóð ð # : ,¨k¸&¸ÐAuÐvˆŒà‡{�{×ÑÐ4×5Ñ5ÜÐVÓWÐWà€Nr5   )rã   r   r<   rS   r3   rR   rQ   r   )@Ú
__future__r   r8   Útypingr   r   r   r   r   r	   Útyping_extensionsr
   r   Úhttpx2Ú r   Ú_authr   r   Ú_betar   r   Ú_typesr   r   Ú_utilsr   r   r   Ú_compatr   r   Ú_modelsr   Ú_versionr   Ú
_streamingr   r   r   r   r›   r    Ú_base_clientr!   r"   r#   r$   r%   Úresources.messagesr&   r'   Úgoogle.auth.credentialsr(   ÚGoogleCredentialsrÞ   ÚClientÚAsyncClientr)   r+   r-   r[   rÀ   r}   rO   r5   r2   Ú<module>rø      s  ðÝ "ã 	ß H× Hß ,ã å ß *ß "ß )ß 1Ñ 1ß 8Ý *Ý #ß -ß 9Ý *÷õ ÷ :æÝHð &€á˜¨u°V·]±]ÀF×DVÑDVÐ5VÑ/WÑX€ÙÐ+°5¸À¹ÀkÐRUÑFVÐ9VÑ3WÑX€ô2E�z -°Ð"@ÑAô 2EôjaFÐ& v§}¡}°f¸S±kÐ'AÑBÀMô aFôHaFÐ+¨F×,>Ñ,>ÀÈCÑ@PÐ,PÑQÐSaô aFõH r5   