
    ̺i@                    0   S SK Jr  S SKrS SK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)J*r*J+r+J,r,  SSK-J.r.J/r/  \(       a  S SK0J1r2  Sr3\" S\\Rh                  \Rj                  4   S9r6\" S\\$\   \%\   4   S9r7 " S S\*\6\74   5      r8 " S S\8\Rh                  \$\   4   \+5      r9 " S S\8\Rj                  \%\   4   \,5      r:SS jr;g)     )annotationsN)TYPE_CHECKINGAnyUnionMappingTypeVar)Selfoverride   )_exceptions   )	load_authrefresh_auth)Beta	AsyncBeta)	NOT_GIVENNotGiven)is_dictasyncifyis_given)
model_copytyped_cached_property)FinalRequestOptions)__version__)StreamAsyncStream)AnthropicErrorAPIStatusError)DEFAULT_MAX_RETRIES
BaseClientSyncAPIClientAsyncAPIClient)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    [/var/www/piano.thomer.com/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r.   
project_ids     r/   r9   BaseVertexClient.project_id*   s!    ZZ^^$AB
r2   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   )r.   err_msgr=   r<   s       r/   _make_status_error#BaseVertexClient._make_status_error2   sb    3&..wPTUU3&227TXYY3&44WVZ[[3&,,WdSS3&,,WdSS3&77Y]^^3&--gtTT3&66wX\]]3&44WVZ[[3&227TXYYgtDDr2    Nreturnstr)rN   
str | None)rI   rO   r=   objectr<   zhttpx.ResponserN   r   )
__name__
__module____qualname____firstlineno__r   r0   r9   r
   rJ   __static_attributes__rL   r2   r/   r*   r*   %   sh    - -   $E$E 	$E
 !$E 
$E $Er2   r*   c                  "  ^  \ rS rSr% 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rU =r$ )AnthropicVertexZ   r#   messagesr   betaNFr0   r9   access_tokencredentialsbase_urltimeoutmax_retriesdefault_headersdefault_queryhttp_client_strict_response_validationc                 > [        U5      (       d$  [        R                  R                  S[        5      n[        U5      (       d  [        S5      eUc1  [        R                  R                  S5      nUc  US:X  a  SnOSU S3n[        T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_REGIONzNo 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/v1zhttps://z-aiplatform.googleapis.com/v1)versionr_   r`   ra   custom_headerscustom_queryrd   re   )r   r5   r6   r7   r   
ValueErrorsuper__init__r   r9   r0   r]   r^   r#   rZ   r   r[   r.   r0   r9   r]   r^   r_   r`   ra   rb   rc   rd   re   	__class__s               r/   rp   AnthropicVertex.__init__^   s      ZZ^^$5yAF a  zz~~&ABHX%EH!)&1NOH#*&#(C 	 		
 J(O(& J	r2   c                >    [        XR                  U R                  S9$ N)r9   r0   _prepare_optionsr9   r0   r.   optionss     r/   rw    AnthropicVertex._prepare_options   s    OODKKXXr2   c                    UR                   R                  S5      (       a  g SU R                  5        3UR                   S'   g NAuthorizationzBearer headersr7   _ensure_access_tokenr.   requests     r/   _prepare_request AnthropicVertex._prepare_request   s9    ??//-4T5N5N5P4Q+R(r2   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)r9   z0Could not resolve API token from the environment)
r]   r^   r   r9   expiredtokenr   r-   
isinstancerO   r8   s     r/   r   $AnthropicVertex._ensure_access_token   s    ($$$+4+P(Dj??",##4+;+;+A+A))*%%QRR$**00#6666%%%r2   r0   r9   r]   r^   r_   r`   rd   ra   rb   set_default_headersrc   set_default_query_extra_kwargsc                  U	b  U
b  [        S5      eUb  Ub  [        S5      eU R                  nU	b  0 UEU	E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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)
r0   r9   r]   r^   r_   r`   rd   ra   rb   rc   rL   rn   _custom_headers_custom_query_clientrr   r   r0   r9   r   r]   r^   r_   r   r   r`   ra   r.   r0   r9   r]   r^   r_   r`   rd   ra   rb   r   rc   r   r   r   paramss                   r/   copyAnthropicVertex.copy   ?   ( &+>+Jopp$):)Fkll&&&44O4G ,)G##$00-0F*&F!1T\\~~ 
%f--64;;%-j%9%9zt?[R[%:):):#7t'7'7.$.w$A$ADLLw#'/'<'<$BRBR# 
 
 	
r2   r]   r[   r^   rZ   r9   r0   )r0   str | NotGivenr9   r   r]   rP   r^   GoogleCredentials | Noner_   str | httpx.URL | Noner`   'float | httpx.Timeout | None | NotGivenra   intrb   Mapping[str, str] | Nonerc   Mapping[str, object] | Nonerd   httpx.Client | Nonere   boolrN   Nonery   r   rN   r   r   zhttpx.RequestrN   r   rM   )r0   r   r9   r   r]   rP   r^   r   r_   r   r`   r   rd   r   ra   int | NotGivenrb   r   r   r   rc   r   r   r   r   Mapping[str, Any]rN   r	   rR   rS   rT   rU   __annotations__r   r   rp   r
   rw   r   r   r   with_optionsrV   __classcell__rr   s   @r/   rX   rX   Z   s   
J
 "+%.#'04+/;D.4859+/,12 2 #	2
 !2 .2 )2 92 2 22 32 )2 &*2 
2 2h Y Y S S&* "+%.#'04+/;D+/&/488<599=+-4
 4
 #	4

 !4
 .4
 )4
 94
 )4
 $4
 24
 64
 34
 74
 )4
  
!4
p Lr2   rX   c                  "  ^  \ rS rSr% 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rU =r$ )AsyncAnthropicVertex   r$   rZ   r   r[   NFr\   c                 > [        U5      (       d$  [        R                  R                  S[        5      n[        U5      (       d  [        S5      eUc1  [        R                  R                  S5      nUc  US:X  a  SnOSU S3n[        T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 rg   )r   r5   r6   r7   r   rn   ro   rp   r   r9   r0   r]   r^   r$   rZ   r   r[   rq   s               r/   rp   AsyncAnthropicVertex.__init__   s      ZZ^^$5yAF a  zz~~&ABHX%EH!)&1NOH#*&#(C 	 		
 J(O(&%d+dO	r2   c                F   #    [        XR                  U R                  S9$ 7fru   rv   rx   s     r/   rw   %AsyncAnthropicVertex._prepare_options#  s     OODKKXXs   !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     r/   r   %AsyncAnthropicVertex._prepare_request'  sB     ??//-44;T;T;V5V4W+X(5Vs   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]   r^   r   r   r9   r   r   r   r-   r   rO   r8   s     r/   r   )AsyncAnthropicVertex._ensure_access_token/  s     ($$$19)1DPTP_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  0 UEU	E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S.
UD6$ r   r   r   s                   r/   r   AsyncAnthropicVertex.copyA  r   r2   r   )r0   r   r9   r   r]   rP   r^   r   r_   r   r`   r   ra   r   rb   r   rc   r   rd   httpx.AsyncClient | Nonere   r   rN   r   r   r   rM   )r0   r   r9   r   r]   rP   r^   r   r_   r   r`   r   rd   r   ra   r   rb   r   r   r   rc   r   r   r   r   r   rN   r	   r   r   s   @r/   r   r      s   
O
 "+%.#'04+/;D.485904,12$ 2$ #	2$
 !2$ .2$ )2$ 92$ 2$ 22$ 32$ .2$ &*2$ 
2$ 2$h Y Y Y Y&* "+%.#'04+/;D04&/488<599=+-4
 4
 #	4

 !4
 .4
 )4
 94
 .4
 $4
 24
 64
 34
 74
 )4
  
!4
p Lr2   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postzNo 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methodr-   popr7   
startswithr   )input_optionsr9   r0   ry   r   r   	specifiers          r/   rw   rw   |  sZ   T2Gw  !!$$%8/J{{@@W^^W]E] c  w(())\]]!!%%g.""&&x7*0&l	":,k&A^_d^eefgpfqr{{ZZ_f_m_mqw_w c  #:,k&Auv{{455VWWNr2   )r   r   r9   rP   r0   rO   rN   r   )<
__future__r   r5   typingr   r   r   r   r   typing_extensionsr	   r
   httpx r   _authr   r   _betar   r   _typesr   r   _utilsr   r   r   _compatr   r   _modelsr   _versionr   
_streamingr   r   r   r   _base_clientr   r    r!   r"   resources.messagesr#   r$   google.auth.credentialsr%   GoogleCredentialsr   ClientAsyncClientr&   r(   r*   rX   r   rw   rL   r2   r/   <module>r      s    " 	 > > ,   * " ) 1 1 8 * # - 9  :H &uU\\5CTCT5T/UV+5kRUFV9V3WX2Ez-"@A 2EjN&u||VC['@A= NbN+E,=,={3?O,OPR` Nb r2   