Ë
    Ô~ïi�D  ã                  óÒ  — d dl mZ d dlZd dlZd dlmZmZmZ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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 ddlm Z  ddl!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-m.Z. ddl/m-Z0m.Z1 e	g e2f   Z3e	g df   Z4 edeejj                  ejl                  f   ¬«      Z7 edee"e   e#e   f   ¬«      Z8 G d„ de%«      Z9 G d„ de(e7e8f   «      Z: G d„ de-«      Z; G d„ de0«      Z< G d„ de*«      Z= G d„ d e.«      Z> G d!„ d"e1«      Z? G d#„ d$e+«      Z@ G d%„ d&e:ejj                  e"e   f   e«      ZA G d'„ d(e:ejl                  e#e   f   e«      ZBy))é    )ÚannotationsN)ÚAnyÚUnionÚMappingÚTypeVarÚCallableÚ	AwaitableÚcastÚoverload)Úcached_property)ÚSelfÚoverrideé   )Ú	NOT_GIVENÚOmitÚTimeoutÚNotGiven)Úis_given)Ú	AnthropicÚAsyncAnthropic)Ú
model_copy)ÚFinalRequestOptions)ÚStreamÚAsyncStream)ÚAnthropicError)ÚDEFAULT_MAX_RETRIESÚ
BaseClient)ÚBetaÚ	AsyncBeta)ÚMessagesÚAsyncMessageszstr | Awaitable[str]Ú_HttpxClientT)ÚboundÚ_DefaultStreamTc                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )ÚMutuallyExclusiveAuthErrorc                ó$   •— t         ‰| �  d«       y )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    €úl/var/www/acinvestment.org/public_html/aci/backend/venv/lib/python3.12/site-packages/anthropic/lib/foundry.pyr)   z#MutuallyExclusiveAuthError.__init__   s   ø€ Ü‰ÑØ|õ	
ó    ©ÚreturnÚNone)Ú__name__Ú
__module__Ú__qualname__r)   Ú__classcell__©r+   s   @r,   r&   r&      s   ø„ ÷
ñ 
r-   r&   c                  ó   — e Zd Zy)ÚBaseFoundryClientN)r1   r2   r3   © r-   r,   r7   r7   $   s   … r-   r7   c                  ó(   — e Zd Zeedd„«       «       Zy)ÚMessagesFoundryc                 ó   — y©z?Batches endpoint is not supported for Anthropic Foundry client.Nr8   ©r*   s    r,   ÚbatcheszMessagesFoundry.batches(   ó   € ð r-   Nr.   ©r1   r2   r3   r   r   r>   r8   r-   r,   r:   r:   '   ó   „ ØØòó ó ñr-   r:   c                  ó(   — e Zd Zeedd„«       «       Zy)ÚBetaFoundryMessagesc                 ó   — yr<   r8   r=   s    r,   r>   zBetaFoundryMessages.batches0   r?   r-   Nr.   r@   r8   r-   r,   rC   rC   /   rA   r-   rC   c                  ó(   — e Zd Zeedd„«       «       Zy)ÚBetaFoundryc                ó,   — t        | j                  «      S ©zKReturn beta messages resource instance with excluded unsupported endpoints.)rC   Ú_clientr=   s    r,   ÚmessageszBetaFoundry.messages8   s   € ô # 4§<¡<Ó0Ð0r-   N)r/   ÚBetaMessages©r1   r2   r3   r   r   rJ   r8   r-   r,   rF   rF   7   s   „ ØØò1ó ó ñ1r-   rF   c                  ó(   — e Zd Zeedd„«       «       Zy)ÚAsyncMessagesFoundryc                 ó   — yr<   r8   r=   s    r,   r>   zAsyncMessagesFoundry.batches@   r?   r-   Nr.   r@   r8   r-   r,   rN   rN   ?   rA   r-   rN   c                  ó(   — e Zd Zeedd„«       «       Zy)ÚAsyncBetaFoundryMessagesc                 ó   — yr<   r8   r=   s    r,   r>   z AsyncBetaFoundryMessages.batchesH   r?   r-   Nr.   r@   r8   r-   r,   rQ   rQ   G   rA   r-   rQ   c                  ó(   — e Zd Zeedd„«       «       Zy)ÚAsyncBetaFoundryc                ó,   — t        | j                  «      S rH   )rQ   rI   r=   s    r,   rJ   zAsyncBetaFoundry.messagesP   s   € ô (¨¯©Ó5Ð5r-   N)r/   ÚAsyncBetaMessagesrL   r8   r-   r,   rT   rT   O   s   „ ØØò6ó ó ñ6r-   rT   c                  óÒ  ‡ — e Zd Zedddeedddddœ		 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zeddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zddddeedddddœ
	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd„Zeedd	„«       «       Z	eedd
„«       «       Z
eedd„«       «       Zeddddededdddi dœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd„«       ZeZdd„Zedd„«       Zˆ xZS )ÚAnthropicFoundryNF©	ÚresourceÚapi_keyÚazure_ad_token_providerÚtimeoutÚmax_retriesÚdefault_headersÚdefault_queryÚhttp_clientÚ_strict_response_validationc       	         ó   — y ©Nr8   ©
r*   rZ   r[   r\   r]   r^   r_   r`   ra   rb   s
             r,   r)   zAnthropicFoundry.__init__[   ó   € ð r-   ©r[   r\   r]   r^   r_   r`   ra   rb   c       	         ó   — y rd   r8   ©
r*   Úbase_urlr[   r\   r]   r^   r_   r`   ra   rb   s
             r,   r)   zAnthropicFoundry.__init__j   rf   r-   ©
rZ   r[   r\   rj   r]   r^   r_   r`   ra   rb   c       
   
     óx  •— |�|nt         j                  j                  d«      }|�|nt         j                  j                  d«      }|�|nt         j                  j                  d«      }|€|€t        d«      ‚|€|€t	        d«      ‚d|› d�}n|�t	        d	«      ‚t
        ‰| �  |||||||	|
¬
«       || _        y)a‡  Construct 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.
        NÚANTHROPIC_FOUNDRY_API_KEYÚANTHROPIC_FOUNDRY_RESOURCEÚANTHROPIC_FOUNDRY_BASE_URLú†Missing 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 variableúhttps://ú!.services.ai.azure.com/anthropic/ú,base_url and resource are mutually exclusive©r[   rj   r]   r^   r_   r`   ra   rb   ©ÚosÚenvironÚgetr   Ú
ValueErrorr(   r)   Ú_azure_ad_token_provider©r*   rZ   r[   r\   rj   r]   r^   r_   r`   ra   rb   r+   s              €r,   r)   zAnthropicFoundry.__init__y   óê   ø€ ð2 %Ð0‘'´b·j±j·n±nÐE`Ó6aˆØ'Ð3‘8¼¿¹¿¹ÐHdÓ9eˆØ'Ð3‘8¼¿¹¿¹ÐHdÓ9eˆàˆ?Ð6Ð>Ü ð Yóð ð ÐØÐÜ ð Kóð ð " ( Ð+LÐM‰HØÐ!ÜÐKÓLÐLä‰ÑØØØØ#Ø+Ø'Ø#Ø(Cð 	ô 		
ð )@ˆÕ%r-   c                 ó   — y)z>Models endpoint is not supported for Anthropic Foundry client.Nr8   r=   s    r,   ÚmodelszAnthropicFoundry.models°   r?   r-   c                ó   — t        | ¬«      S ©zFReturn messages resource instance with excluded unsupported endpoints.©Úclient)r:   r=   s    r,   rJ   zAnthropicFoundry.messages¶   s   € ô  dÔ+Ð+r-   c                ó   — t        | «      S )úBReturn beta resource instance with excluded unsupported endpoints.)rF   r=   s    r,   ÚbetazAnthropicFoundry.beta¼   s   € ô ˜4Ó Ð r-   ©r[   r\   Ú
auth_tokenrj   r]   ra   r^   r_   Úset_default_headersr`   Úset_default_queryÚ_extra_kwargsc               ó\   •— t         ‰| �  ||||||||	|
|d|xs | j                  i|¥¬«      S ©z~
        Create a new client instance re-using the same options given to the current client with optional overriding.
        r\   )r[   rˆ   rj   r]   ra   r^   r_   r‰   r`   rŠ   r‹   ©r(   Úcopyr{   ©r*   r[   r\   rˆ   rj   r]   ra   r^   r_   r‰   r`   rŠ   r‹   r+   s                €r,   r�   zAnthropicFoundry.copyÂ   óW   ø€ ô( ‰w‰|ØØ!ØØØ#Ø#Ø+Ø 3Ø'Ø/à)Ð+BÒ+cÀd×FcÑFcðàðð ó 
ð 	
r-   c                ór   — | j                   }|�) |«       }|rt        |t        «      st        d|› �«      ‚|S y ©NzOExpected `azure_ad_token_provider` argument to return a string but it returned )r{   Ú
isinstanceÚstrrz   ©r*   ÚproviderÚtokens      r,   Ú_get_azure_ad_tokenz$AnthropicFoundry._get_azure_ad_tokené   sI   € Ø×0Ñ0ˆØÐÙ“JˆEÙ¤
¨5´#Ô 6Ü ØeÐfkÐelÐmóð ð ˆLàr-   c                óX  — t        |j                  «      ri |j                  ¥ni }t        |«      }||_        | j                  «       }|�|j	                  d«      €d|› �|d<   |S | j
                  �0|j	                  d«      €| j
                  €J ‚| j
                  |d<   |S t        d«      ‚©NÚAuthorizationzBearer zapi-keyzUnable to handle auth©r   Úheadersr   r™   ry   r[   rz   ©r*   Úoptionsrž   Úazure_ad_tokens       r,   Ú_prepare_optionsz!AnthropicFoundry._prepare_optionsõ   sº   € ä@HÈÏÉÔ@YÐ)<¨G¯O©OÑ)<Ð_aˆä˜WÓ%ˆØ!ˆŒà×1Ñ1Ó3ˆØÐ%Ø�{‰{˜?Ó+Ð3Ø-4°^Ð4DÐ+E�˜Ñ(ð ˆð �\‰\Ð%Ø�{‰{˜9Ó%Ð-Ø—|‘|Ð/Ð/Ð/Ø%)§\¡\�˜	Ñ"ð
 ˆô Ð4Ó5Ð5r-   )rZ   ú
str | Noner[   r£   r\   úAzureADTokenProvider | Noner]   ú!float | Timeout | None | NotGivenr^   Úintr_   úMapping[str, str] | Noner`   úMapping[str, object] | Nonera   úhttpx.Client | Nonerb   Úboolr/   r0   )rj   r•   r[   r£   r\   r¤   r]   r¥   r^   r¦   r_   r§   r`   r¨   ra   r©   rb   rª   r/   r0   )rZ   r£   r[   r£   r\   r¤   rj   r£   r]   r¥   r^   r¦   r_   r§   r`   r¨   ra   r©   rb   rª   r/   r0   r.   )r/   r:   )r/   r   )r[   r£   r\   r¤   rˆ   r£   rj   ústr | httpx.URL | Noner]   r¥   ra   r©   r^   úint | NotGivenr_   r§   r‰   r§   r`   r¨   rŠ   r¨   r‹   úMapping[str, Any]r/   r   ©r/   r£   ©r    r   r/   r   ©r1   r2   r3   r   r   r   r)   r   r   r   rJ   r†   r�   Úwith_optionsr™   r¢   r4   r5   s   @r,   rX   rX   Z   sù  ø„ Øð  $Ø"Ø?CØ5>Ø.Ø48Ø59Ø+/Ø,1ñð ðð ð	ð
 "=ðð 3ðð ðð 2ðð 3ðð )ðð &*ðð 
òó ðð ð
 #Ø?CØ5>Ø.Ø48Ø59Ø+/Ø,1ñð ðð ð	ð
 "=ðð 3ðð ðð 2ðð 3ðð )ðð &*ðð 
òó ðð"  $Ø"Ø?CØ#Ø5>Ø.Ø48Ø59Ø+/Ø,1ñ5@ð ð5@ð ð	5@ð
 "=ð5@ð ð5@ð 3ð5@ð ð5@ð 2ð5@ð 3ð5@ð )ð5@ð &*ð5@ð 
õ5@ðn Øòó ó ðð Øò,ó ó ð,ð Øò!ó ó ð!ð ð #Ø?CØ!%Ø+/Ø5>Ø+/Ø&/Ø48Ø8<Ø59Ø9=Ø+-ñ"
ð ð"
ð "=ð	"
ð
 ð"
ð )ð"
ð 3ð"
ð )ð"
ð $ð"
ð 2ð"
ð 6ð"
ð 3ð"
ð 7ð"
ð )ð"
ð 
ô"
ó ð"
ðH €Ló
ð òó ôr-   rX   c                  óÒ  ‡ — e Zd Zedddeedddddœ		 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zeddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zddddeedddddœ
	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd„Zeedd	„«       «       Z	eedd
„«       «       Z
eedd„«       «       Zeddddededdddi dœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd„«       ZeZdd„Zedd„«       Zˆ xZS )ÚAsyncAnthropicFoundryNFrY   c       	         ó   — y rd   r8   re   s
             r,   r)   zAsyncAnthropicFoundry.__init__  rf   r-   rg   c       	         ó   — y rd   r8   ri   s
             r,   r)   zAsyncAnthropicFoundry.__init__  rf   r-   rk   c       
   
     óx  •— |�|nt         j                  j                  d«      }|�|nt         j                  j                  d«      }|�|nt         j                  j                  d«      }|€|€t        d«      ‚|€|€t	        d«      ‚d|› d�}n|�t	        d	«      ‚t
        ‰| �  |||||||	|
¬
«       || _        y)aˆ  Construct 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.
        Nrm   rn   ro   rp   rq   rr   rs   rt   ru   rv   r|   s              €r,   r)   zAsyncAnthropicFoundry.__init__*  r}   r-   c                 ó   — y)z<Models endpoint is not supported for Azure Anthropic client.Nr8   r=   s    r,   r   zAsyncAnthropicFoundry.modelsa  r?   r-   c                ó   — t        | ¬«      S r�   )rN   r=   s    r,   rJ   zAsyncAnthropicFoundry.messagesg  s   € ô $¨4Ô0Ð0r-   c                ó   — t        | ¬«      S )r…   r‚   )rT   r=   s    r,   r†   zAsyncAnthropicFoundry.betam  s   € ô   tÔ,Ð,r-   r‡   c               ó\   •— t         ‰| �  ||||||||	|
|d|xs | j                  i|¥¬«      S r�   rŽ   r�   s                €r,   r�   zAsyncAnthropicFoundry.copys  r‘   r-   c              ƒ  óê   K  — | j                   }|�_ |«       }t        j                  |«      r
|ƒ d {  –—† }|rt        t	        t
        |«      t        «      st        d|› �«      ‚t        |«      S y 7 Œ>­wr“   )r{   ÚinspectÚisawaitabler”   r
   r   r•   rz   r–   s      r,   r™   z)AsyncAnthropicFoundry._get_azure_ad_tokenš  ss   è ø€ Ø×0Ñ0ˆØÐÙ“JˆEÜ×"Ñ" 5Ô)Ø#Ÿ�Ù¤
¬4´°UÓ+;¼SÔ AÜ ØeÐfkÐelÐmóð ô �u“:Ðàð $ús   ‚0A3²A1³?A3c              ƒ  ót  K  — t        |j                  «      ri |j                  ¥ni }t        |«      }||_        | j                  «       ƒ d {  –—† }|�|j	                  d«      €d|› �|d<   |S | j
                  �0| j
                  €J ‚|j	                  d«      €| j
                  |d<   |S t        d«      ‚7 Œh­wr›   r�   rŸ   s       r,   r¢   z&AsyncAnthropicFoundry._prepare_options¨  sÆ   è ø€ ä@HÈÏÉÔ@YÐ)<¨G¯O©OÑ)<Ð_aˆä˜WÓ%ˆØ!ˆŒà#×7Ñ7Ó9×9ˆØÐ%Ø�{‰{˜?Ó+Ð3Ø-4°^Ð4DÐ+E�˜Ñ(ð ˆð �\‰\Ð%Ø—<‘<Ð+Ð+Ð+Ø�{‰{˜9Ó%Ð-Ø%)§\¡\�˜	Ñ"ð
 ˆô Ð4Ó5Ð5ð :ús   ‚AB8ÁB6ÁA)B8)rZ   r£   r[   r£   r\   ú AsyncAzureADTokenProvider | Noner]   r¥   r^   r¦   r_   r§   r`   r¨   ra   úhttpx.AsyncClient | Nonerb   rª   r/   r0   )rj   r•   r[   r£   r\   r¿   r]   r¥   r^   r¦   r_   r§   r`   r¨   ra   rÀ   rb   rª   r/   r0   )rZ   r£   r[   r£   r\   r¿   rj   r£   r]   r¥   r^   r¦   r_   r§   r`   r¨   ra   rÀ   rb   rª   r/   r0   r.   )r/   rN   )r/   rT   )r[   r£   r\   r¿   rˆ   r£   rj   r«   r]   r¥   ra   rÀ   r^   r¬   r_   r§   r‰   r§   r`   r¨   rŠ   r¨   r‹   r­   r/   r   r®   r¯   r°   r5   s   @r,   r³   r³     sý  ø„ Øð  $Ø"ØDHØ5>Ø.Ø48Ø59Ø04Ø,1ñð ðð ð	ð
 "Bðð 3ðð ðð 2ðð 3ðð .ðð &*ðð 
òó ðð ð
 #ØDHØ5>Ø.Ø48Ø59Ø04Ø,1ñð ðð ð	ð
 "Bðð 3ðð ðð 2ðð 3ðð .ðð &*ðð 
òó ðð"  $Ø"ØDHØ#Ø5>Ø.Ø48Ø59Ø04Ø,1ñ5@ð ð5@ð ð	5@ð
 "Bð5@ð ð5@ð 3ð5@ð ð5@ð 2ð5@ð 3ð5@ð .ð5@ð &*ð5@ð 
õ5@ðn Øòó ó ðð Øò1ó ó ð1ð Øò-ó ó ð-ð ð #ØDHØ!%Ø+/Ø5>Ø04Ø&/Ø48Ø8<Ø59Ø9=Ø+-ñ"
ð ð"
ð "Bð	"
ð
 ð"
ð )ð"
ð 3ð"
ð .ð"
ð $ð"
ð 2ð"
ð 6ð"
ð 3ð"
ð 7ð"
ð )ð"
ð 
ô"
ó ð"
ðH €Lóð òó ôr-   r³   )CÚ
__future__r   rw   r¼   Útypingr   r   r   r   r   r	   r
   r   Ú	functoolsr   Útyping_extensionsr   r   ÚhttpxÚ_typesr   r   r   r   Ú_utilsr   rI   r   r   Ú_compatr   Ú_modelsr   Ú
_streamingr   r   Ú_exceptionsr   Ú_base_clientr   r   Úresources.betar   r   Úresources.messagesr    r!   Úresources.beta.messagesrK   rV   r•   ÚAzureADTokenProviderÚAsyncAzureADTokenProviderÚClientÚAsyncClientr"   r$   r&   r7   r:   rC   rF   rN   rQ   rT   rX   r³   r8   r-   r,   ú<module>rÔ      sZ  ðÝ "ã 	Û ß T× TÓ TÝ %ß ,ã ç 7Ó 7Ý ß /Ý  Ý )ß ,Ý (ß :ß ,ß 8ß bà  C Ñ(Ð Ø$ RÐ)?Ð%?Ñ@Ð Ù˜¨u°U·\±\À5×CTÑCTÐ5TÑ/UÔV€ÙÐ+°5¸À¹ÀkÐRUÑFVÐ9VÑ3WÔX€ô
 ô 
ô I˜
 =°/Ð#AÑBÔ Hô�hô ô˜,ô ô1�$ô 1ô˜=ô ôÐ0ô ô6�yô 6ônÐ(¨¯©°v¸c±{Ð)BÑCÀYô nôbpÐ-¨e×.?Ñ.?ÀÈSÑAQÐ.QÑRÐTbõ pr-   