L iDddlmZddlZddlZddlmZmZmZmZm Z m Z m Z m Z ddl mZddlmZmZddlZddlmZmZmZmZddlmZdd lmZmZdd lmZdd lm Z dd l!m"Z"m#Z#dd l$m%Z%ddl&m'Z'm(Z(ddl)m*Z*m+Z+ddl,m-Z-m.Z.ddl/m-Z0m.Z1e ge2fZ3e gdfZ4edeejjejlfZ7edee"ee#efZ8Gdde%Z9Gdde(e7e8fZ:Gdde-Z;Gdde0Z<Gdde*Z=Gdd e.Z>Gd!d"e1Z?Gd#d$e+Z@Gd%d&e:ejje"efeZAGd'd(e:ejle#efeZBy))) annotationsN)AnyUnionMappingTypeVarCallable Awaitablecastoverload)cached_property)Selfoverride) NOT_GIVENOmitTimeoutNotGiven)is_given) AnthropicAsyncAnthropic) model_copy)FinalRequestOptions)Stream AsyncStream)AnthropicError)DEFAULT_MAX_RETRIES BaseClient)Beta AsyncBeta)Messages AsyncMessageszstr | Awaitable[str] _HttpxClientT)bound_DefaultStreamTc eZdZdfd ZxZS)MutuallyExclusiveAuthErrorc$t|dy)NznThe `api_key` and `azure_ad_token_provider` arguments are mutually exclusive; Only one can be passed at a time)super__init__)self __class__s [/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/anthropic/lib/foundry.pyr)z#MutuallyExclusiveAuthError.__init__s  | returnNone)__name__ __module__ __qualname__r) __classcell__r+s@r,r&r&s   r-r&c eZdZy)BaseFoundryClientN)r1r2r3r-r,r7r7$sr-r7c(eZdZeeddZy)MessagesFoundrycyz?Batches endpoint is not supported for Anthropic Foundry client.Nr8r*s r,batcheszMessagesFoundry.batches(r-Nr.r1r2r3r rr>r8r-r,r:r:' r-r:c(eZdZeeddZy)BetaFoundryMessagescyr<r8r=s r,r>zBetaFoundryMessages.batches0r?r-Nr.r@r8r-r,rCrC/rAr-rCc(eZdZeeddZy) BetaFoundryc,t|jSzKReturn beta messages resource instance with excluded unsupported endpoints.)rC_clientr=s r,messageszBetaFoundry.messages8s#4<<00r-N)r/ BetaMessagesr1r2r3r rrJr8r-r,rFrF7s 11r-rFc(eZdZeeddZy)AsyncMessagesFoundrycyr<r8r=s r,r>zAsyncMessagesFoundry.batches@r?r-Nr.r@r8r-r,rNrN?rAr-rNc(eZdZeeddZy)AsyncBetaFoundryMessagescyr<r8r=s r,r>z AsyncBetaFoundryMessages.batchesHr?r-Nr.r@r8r-r,rQrQGrAr-rQc(eZdZeeddZy)AsyncBetaFoundryc,t|jSrH)rQrIr=s r,rJzAsyncBetaFoundry.messagesPs( 55r-N)r/AsyncBetaMessagesrLr8r-r,rTrTOs 66r-rTceZdZedddeeddddd ddZeddeeddddd ddZddddeeddddd dfdZeedd Z eedd Z eedd Z eddddededdddid dfd Z e Z ddZeddZxZS)AnthropicFoundryNF resourceapi_keyazure_ad_token_providertimeout max_retriesdefault_headers default_query http_client_strict_response_validationc yNr8 r*rZr[r\r]r^r_r`rarbs r,r)zAnthropicFoundry.__init__[r-r[r\r]r^r_r`rarbc yrdr8 r*base_urlr[r\r]r^r_r`rarbs r,r)zAnthropicFoundry.__init__jrfr- rZr[r\rjr]r^r_r`rarbc x||ntjjd}||ntjjd}||ntjjd}| | td|| t dd|d}n | t d t |||||||| | ||_y) aConstruct a new synchronous Anthropic Foundry client instance. This automatically infers the following arguments from their corresponding environment variables if they are not provided: - `api_key` from `ANTHROPIC_FOUNDRY_API_KEY` - `resource` from `ANTHROPIC_FOUNDRY_RESOURCE` - `base_url` from `ANTHROPIC_FOUNDRY_BASE_URL` Args: resource: Your Foundry resource name, e.g. `example-resource` for `https://example-resource.services.ai.azure.com/anthropic/` azure_ad_token_provider: A function that returns an Azure Active Directory token, will be invoked on every request. NANTHROPIC_FOUNDRY_API_KEYANTHROPIC_FOUNDRY_RESOURCEANTHROPIC_FOUNDRY_BASE_URLMissing credentials. Please pass one of `api_key`, `azure_ad_token_provider`, or the `ANTHROPIC_FOUNDRY_API_KEY` environment variable.tMust provide one of the `base_url` or `resource` arguments, or the `ANTHROPIC_FOUNDRY_RESOURCE` environment variablehttps://!.services.ai.azure.com/anthropic/,base_url and resource are mutually exclusiver[rjr]r^r_r`rarbosenvirongetr ValueErrorr(r)_azure_ad_token_provider r*rZr[r\rjr]r^r_r`rarbr+s r,r)zAnthropicFoundry.__init__y2%0'bjjnnE`6a'38Hd9e'38Hd9e ?6> Y    K"(+LMH  !KL L #+'#(C  )@%r-cy)z>Models endpoint is not supported for Anthropic Foundry client.Nr8r=s r,modelszAnthropicFoundry.modelsr?r-ct|SzFReturn messages resource instance with excluded unsupported endpoints.client)r:r=s r,rJzAnthropicFoundry.messagessd++r-ct|S)BReturn beta resource instance with excluded unsupported endpoints.)rFr=s r,betazAnthropicFoundry.betas4  r- r[r\ auth_tokenrjr]rar^r_set_default_headersr`set_default_query _extra_kwargsc \t ||||||||| | | d|xs |ji|  Sz~ Create a new client instance re-using the same options given to the current client with optional overriding. r\) r[rrjr]rar^r_rr`rrr(copyr{r*r[r\rrjr]rar^r_rr`rrr+s r,rzAnthropicFoundry.copyW(w|!##+ 3'/)+B+cdFcFc  r-cr|j}|)|}|rt|tstd||SyNzOExpected `azure_ad_token_provider` argument to return a string but it returned )r{ isinstancestrrzr*providertokens r,_get_azure_ad_tokenz$AnthropicFoundry._get_azure_ad_tokensI00  JE 5# 6 efkelmLr-cXt|jri|jni}t|}||_|j}||j dd||d<|S|j 0|j d|j J|j |d<|St dN AuthorizationzBearer zapi-keyzUnable to handle authrheadersrrryr[rzr*optionsrazure_ad_tokens r,_prepare_optionsz!AnthropicFoundry._prepare_optionss@H@Y).4859+/,1    "=  3  2 3 ) &*     #?C5>.4859+/,1    "=  3  2 3 ) &*    " $"?C#5>.4859+/,15@5@ 5@ "= 5@  5@35@5@25@35@)5@&*5@ 5@n  ,, !!#?C!%+/5>+/&/488<599=+-" " "= "  " ) " 3" )" $" 2" 6" 3" 7" )"  " " HL r-rXceZdZedddeeddddd ddZeddeeddddd ddZddddeeddddd dfdZeedd Z eedd Z eedd Z eddddededdddid dfd Z e Z ddZeddZxZS)AsyncAnthropicFoundryNFrYc yrdr8res r,r)zAsyncAnthropicFoundry.__init__ rfr-rgc yrdr8ris r,r)zAsyncAnthropicFoundry.__init__rfr-rkc x||ntjjd}||ntjjd}||ntjjd}| | td|| t dd|d}n | t d t |||||||| | ||_y) aConstruct a new asynchronous Anthropic Foundry client instance. This automatically infers the following arguments from their corresponding environment variables if they are not provided: - `api_key` from `ANTHROPIC_FOUNDRY_API_KEY` - `resource` from `ANTHROPIC_FOUNDRY_RESOURCE` - `base_url` from `ANTHROPIC_FOUNDRY_BASE_URL` Args: resource: Your Foundry resource name, e.g. `example-resource` for `https://example-resource.services.ai.azure.com/anthropic/` azure_ad_token_provider: A function that returns an Azure Active Directory token, will be invoked on every request. Nrmrnrorprqrrrsrtrurvr|s r,r)zAsyncAnthropicFoundry.__init__*r}r-cy)zwr)r{inspect isawaitablerr rrrzrs r,rz)AsyncAnthropicFoundry._get_azure_ad_tokenss00  JE""5)#  4U+;S A efkelmu: $s0A3A1?A3ctKt|jri|jni}t|}||_|jd{}||j dd||d<|S|j 0|j J|j d|j |d<|St d7hwrrrs r,rz&AsyncAnthropicFoundry._prepare_optionss@H@Y).485904,1    "B  3  2 3 . &*     #DH5>.485904,1    "B  3  2 3 . &*    " $"DH#5>.485904,15@5@ 5@ "B 5@  5@35@5@25@35@.5@&*5@ 5@n  11 --#DH!%+/5>04&/488<599=+-" " "B "  " ) " 3" ." $" 2" 6" 3" 7" )"  " " HL r-r)C __future__rrwrtypingrrrrrr r r functoolsr typing_extensionsr rhttpx_typesrrrr_utilsrrIrr_compatr_modelsr _streamingrr _exceptionsr _base_clientrrresources.betarrresources.messagesr r!resources.beta.messagesrKrVrAzureADTokenProviderAsyncAzureADTokenProviderClient AsyncClientr"r$r&r7r:rCrFrNrQrTrXrr8r-r,rsZ" TTT%, 77/ ),(:,8bC($R)?%?@uU\\5CTCT5T/UV +5kRUFV9V3WX  I =/#ABHh,1$1=06y6n(vc{)BCYnbp-e.?.?SAQ.QRTbpr-