§
    ¦eîi�D  ã                  ó6  — 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j5        ej6        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j5        e"e         f         e¦  «        ZA G d'„ d(e:ej6        e#e         f         e¦  «        ZBdS ))é    )Ú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 )ÚMutuallyExclusiveAuthErrorÚreturnÚNonec                óJ   •— t          ¦   «                              d¦  «         d S )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    €úY/home/div/.hermes/hermes-agent/venv/lib/python3.11/site-packages/anthropic/lib/foundry.pyr+   z#MutuallyExclusiveAuthError.__init__   s,   ø€ Ý‰Œ×ÒØ|ñ	
ô 	
ð 	
ð 	
ð 	
ó    ©r'   r(   )Ú__name__Ú
__module__Ú__qualname__r+   Ú__classcell__©r-   s   @r.   r&   r&      s=   ø€ € € € € ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r/   r&   c                  ó   — e Zd ZdS )ÚBaseFoundryClientN)r1   r2   r3   © r/   r.   r7   r7   $   s   € € € € € € € r/   r7   c                  ó6   — e Zd Zeedd„¦   «         ¦   «         ZdS )ÚMessagesFoundryr'   r(   c                ó   — dS ©z?Batches endpoint is not supported for Anthropic Foundry client.Nr8   ©r,   s    r.   ÚbatcheszMessagesFoundry.batches(   ó	   € ð ˆtr/   Nr0   ©r1   r2   r3   r   r   r>   r8   r/   r.   r:   r:   '   ó<   € € € € € ØØðð ð ñ „Xñ „_ðð ð r/   r:   c                  ó6   — e Zd Zeedd„¦   «         ¦   «         ZdS )ÚBetaFoundryMessagesr'   r(   c                ó   — dS r<   r8   r=   s    r.   r>   zBetaFoundryMessages.batches0   r?   r/   Nr0   r@   r8   r/   r.   rC   rC   /   rA   r/   rC   c                  ó6   — e Zd Zeedd„¦   «         ¦   «         ZdS )ÚBetaFoundryr'   ÚBetaMessagesc                ó*   — t          | j        ¦  «        S ©zKReturn beta messages resource instance with excluded unsupported endpoints.)rC   Ú_clientr=   s    r.   ÚmessageszBetaFoundry.messages8   s   € õ # 4¤<Ñ0Ô0Ð0r/   N)r'   rG   ©r1   r2   r3   r   r   rK   r8   r/   r.   rF   rF   7   s<   € € € € € ØØð1ð 1ð 1ñ „Xñ „_ð1ð 1ð 1r/   rF   c                  ó6   — e Zd Zeedd„¦   «         ¦   «         ZdS )ÚAsyncMessagesFoundryr'   r(   c                ó   — dS r<   r8   r=   s    r.   r>   zAsyncMessagesFoundry.batches@   r?   r/   Nr0   r@   r8   r/   r.   rN   rN   ?   rA   r/   rN   c                  ó6   — e Zd Zeedd„¦   «         ¦   «         ZdS )ÚAsyncBetaFoundryMessagesr'   r(   c                ó   — dS r<   r8   r=   s    r.   r>   z AsyncBetaFoundryMessages.batchesH   r?   r/   Nr0   r@   r8   r/   r.   rQ   rQ   G   rA   r/   rQ   c                  ó6   — e Zd Zeedd„¦   «         ¦   «         ZdS )ÚAsyncBetaFoundryr'   ÚAsyncBetaMessagesc                ó*   — t          | j        ¦  «        S rI   )rQ   rJ   r=   s    r.   rK   zAsyncBetaFoundry.messagesP   s   € õ (¨¬Ñ5Ô5Ð5r/   N)r'   rU   rL   r8   r/   r.   rT   rT   O   s<   € € € € € ØØð6ð 6ð 6ñ „Xñ „_ð6ð 6ð 6r/   rT   c                  óf  ‡ — e Zd Zedddeedddddœ	d1d„¦   «         Zeddeedddddœd2d„¦   «         Zddddeedddddœ
d3ˆ fd„Zeed4d„¦   «         ¦   «         Z	eed5d „¦   «         ¦   «         Z
eed6d"„¦   «         ¦   «         Zeddddededdddi d#œd7ˆ fd,„¦   «         ZeZd8d-„Zed9d0„¦   «         Zˆ xZS ):ÚAnthropicFoundryNF©	ÚresourceÚapi_keyÚazure_ad_token_providerÚtimeoutÚmax_retriesÚdefault_headersÚdefault_queryÚhttp_clientÚ_strict_response_validationrZ   ú
str | Noner[   r\   úAzureADTokenProvider | Noner]   ú!float | Timeout | None | NotGivenr^   Úintr_   úMapping[str, str] | Noner`   úMapping[str, object] | Nonera   úhttpx.Client | Nonerb   Úboolr'   r(   c       	        ó   — d S ©Nr8   ©
r,   rZ   r[   r\   r]   r^   r_   r`   ra   rb   s
             r.   r+   zAnthropicFoundry.__init__[   ó	   € ð ˆsr/   ©r[   r\   r]   r^   r_   r`   ra   rb   Úbase_urlÚstrc       	        ó   — d S rl   r8   ©
r,   rp   r[   r\   r]   r^   r_   r`   ra   rb   s
             r.   r+   zAnthropicFoundry.__init__j   rn   r/   ©
rZ   r[   r\   rp   r]   r^   r_   r`   ra   rb   c       
   
     ó¶  •— |�|nt           j                             d¦  «        }|�|nt           j                             d¦  «        }|�|nt           j                             d¦  «        }|€|€t          d¦  «        ‚|€|€t	          d¦  «        ‚d|› d�}n|�t	          d	¦  «        ‚t          ¦   «                              |||||||	|
¬
¦  «         || _        dS )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[   rp   r]   r^   r_   r`   ra   rb   ©ÚosÚenvironÚgetr   Ú
ValueErrorr*   r+   Ú_azure_ad_token_provider©r,   rZ   r[   r\   rp   r]   r^   r_   r`   ra   rb   r-   s              €r.   r+   zAnthropicFoundry.__init__y   ó  ø€ ð2 %Ð0�'�'µb´j·n²nÐE`Ñ6aÔ6aˆØ'Ð3�8�8½¼¿ºÐHdÑ9eÔ9eˆØ'Ð3�8�8½¼¿ºÐHdÑ9eÔ9eˆàˆ?Ð6Ð>Ý ð Yñô ð ð ÐØÐÝ ð Kñô ð ð N (ÐMÐMÐMˆHˆHØÐ!ÝÐKÑLÔLÐLå‰Œ×ÒØØØØ#Ø+Ø'Ø#Ø(Cð 	ñ 		
ô 		
ð 		
ð )@ˆÔ%Ð%Ð%r/   c                ó   — dS )z>Models endpoint is not supported for Anthropic Foundry client.Nr8   r=   s    r.   ÚmodelszAnthropicFoundry.models°   r?   r/   r:   c                ó"   — t          | ¬¦  «        S ©zFReturn messages resource instance with excluded unsupported endpoints.©Úclient)r:   r=   s    r.   rK   zAnthropicFoundry.messages¶   s   € õ  dÐ+Ñ+Ô+Ð+r/   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_tokenrp   r]   ra   r^   r_   Úset_default_headersr`   Úset_default_queryÚ_extra_kwargsr‘   ústr | httpx.URL | Noneúint | NotGivenr’   r“   r”   úMapping[str, Any]r   c               ór   •— t          ¦   «                              ||||||||	|
|d|p| 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‘   rp   r]   ra   r^   r_   r’   r`   r“   r”   ©r*   Úcopyr„   ©r,   r[   r\   r‘   rp   r]   ra   r^   r_   r’   r`   r“   r”   r-   s                €r.   r›   zAnthropicFoundry.copyÂ   ó]   ø€ õ( ‰wŒw�|Š|ØØ!ØØØ#Ø#Ø+Ø 3Ø'Ø/à)Ð+BÐ+cÀdÔFcðàðð ñ 
ô 
ð 	
r/   c                ó‚   — | j         }|�5 |¦   «         }|rt          |t          ¦  «        st          d|› �¦  «        ‚|S d S ©NzOExpected `azure_ad_token_provider` argument to return a string but it returned )r„   Ú
isinstancerq   rƒ   ©r,   ÚproviderÚtokens      r.   Ú_get_azure_ad_tokenz$AnthropicFoundry._get_azure_ad_tokené   s^   € ØÔ0ˆØÐØ�H‘J”JˆEØð ¥
¨5µ#Ñ 6Ô 6ð Ý ØmÐfkÐmÐmñô ð ð ˆLàˆtr/   Úoptionsr   c                óV  — t          |j        ¦  «        r	i |j        ¥ni }t          |¦  «        }||_        |                      ¦   «         }|�|                     d¦  «        €d|› �|d<   n?| j        �)|                     d¦  «        €| j        €J ‚| j        |d<   nt          d¦  «        ‚|S ©NÚAuthorizationzBearer zapi-keyzUnable to handle auth©r   Úheadersr   r¤   r‚   r[   rƒ   ©r,   r¥   rª   Úazure_ad_tokens       r.   Ú_prepare_optionsz!AnthropicFoundry._prepare_optionsõ   s¿   € å@HÈÌÑ@YÔ@YÐ)aÐ)<¨G¬OÐ)<Ð)<Ð_aˆå˜WÑ%Ô%ˆØ!ˆŒà×1Ò1Ñ3Ô3ˆØÐ%Ø�{Š{˜?Ñ+Ô+Ð3Ø+E°^Ð+EÐ+E�˜Ñ(øØŒ\Ð%Ø�{Š{˜9Ñ%Ô%Ð-Ø”|Ð/Ð/Ð/Ø%)¤\�˜	Ñ"øõ Ð4Ñ5Ô5Ð5àˆr/   )rZ   rc   r[   rc   r\   rd   r]   re   r^   rf   r_   rg   r`   rh   ra   ri   rb   rj   r'   r(   )rp   rq   r[   rc   r\   rd   r]   re   r^   rf   r_   rg   r`   rh   ra   ri   rb   rj   r'   r(   )rZ   rc   r[   rc   r\   rd   rp   rc   r]   re   r^   rf   r_   rg   r`   rh   ra   ri   rb   rj   r'   r(   r0   )r'   r:   )r'   r   )r[   rc   r\   rd   r‘   rc   rp   r•   r]   re   ra   ri   r^   r–   r_   rg   r’   rg   r`   rh   r“   rh   r”   r—   r'   r   ©r'   rc   ©r¥   r   r'   r   ©r1   r2   r3   r   r   r   r+   r   r   rˆ   rK   r�   r›   Úwith_optionsr¤   r­   r4   r5   s   @r.   rX   rX   Z   s  ø€ € € € € Øð  $Ø"Ø?CØ5>Ø.Ø48Ø59Ø+/Ø,1ðð ð ð ð ñ „Xðð ð
 #Ø?CØ5>Ø.Ø48Ø59Ø+/Ø,1ðð ð ð ð ñ „Xðð"  $Ø"Ø?CØ#Ø5>Ø.Ø48Ø59Ø+/Ø,1ð5@ð 5@ð 5@ð 5@ð 5@ð 5@ð 5@ð 5@ðn Øðð ð ñ „Xñ „_ðð Øð,ð ,ð ,ñ „Xñ „_ð,ð Øð!ð !ð !ñ „Xñ „_ð!ð ð #Ø?CØ!%Ø+/Ø5>Ø+/Ø&/Ø48Ø8<Ø59Ø9=Ø+-ð"
ð "
ð "
ð "
ð "
ð "
ð "
ñ „Xð"
ðH €Lð
ð 
ð 
ð 
ð ðð ð ñ „Xðð ð ð ð r/   rX   c                  óf  ‡ — e Zd Zedddeedddddœ	d1d„¦   «         Zeddeedddddœd2d„¦   «         Zddddeedddddœ
d3ˆ fd„Zeed4d„¦   «         ¦   «         Z	eed5d „¦   «         ¦   «         Z
eed6d"„¦   «         ¦   «         Zeddddededdddi d#œd7ˆ fd,„¦   «         ZeZd8d-„Zed9d0„¦   «         Zˆ xZS ):ÚAsyncAnthropicFoundryNFrY   rZ   rc   r[   r\   ú AsyncAzureADTokenProvider | Noner]   re   r^   rf   r_   rg   r`   rh   ra   úhttpx.AsyncClient | Nonerb   rj   r'   r(   c       	        ó   — d S rl   r8   rm   s
             r.   r+   zAsyncAnthropicFoundry.__init__  rn   r/   ro   rp   rq   c       	        ó   — d S rl   r8   rs   s
             r.   r+   zAsyncAnthropicFoundry.__init__  rn   r/   rt   c       
   
     ó¶  •— |�|nt           j                             d¦  «        }|�|nt           j                             d¦  «        }|�|nt           j                             d¦  «        }|€|€t          d¦  «        ‚|€|€t	          d¦  «        ‚d|› d�}n|�t	          d	¦  «        ‚t          ¦   «                              |||||||	|
¬
¦  «         || _        dS )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.
        Nrv   rw   rx   ry   rz   r{   r|   r}   r~   r   r…   s              €r.   r+   zAsyncAnthropicFoundry.__init__*  r†   r/   c                ó   — dS )z<Models endpoint is not supported for Azure Anthropic client.Nr8   r=   s    r.   rˆ   zAsyncAnthropicFoundry.modelsa  r?   r/   rN   c                ó"   — t          | ¬¦  «        S rŠ   )rN   r=   s    r.   rK   zAsyncAnthropicFoundry.messagesg  s   € õ $¨4Ð0Ñ0Ô0Ð0r/   rT   c                ó"   — t          | ¬¦  «        S )rŽ   r‹   )rT   r=   s    r.   r�   zAsyncAnthropicFoundry.betam  s   € õ   tÐ,Ñ,Ô,Ð,r/   r�   r‘   r•   r–   r’   r“   r”   r—   r   c               ór   •— t          ¦   «                              ||||||||	|
|d|p| j        i|¥¬¦  «        S r™   rš   rœ   s                €r.   r›   zAsyncAnthropicFoundry.copys  r�   r/   c              ƒ  óþ   K  — | j         }|�q |¦   «         }t          j        |¦  «        r|ƒ d {V —†}|r(t          t	          t
          |¦  «        t          ¦  «        st          d|› �¦  «        ‚t          |¦  «        S d S rŸ   )r„   ÚinspectÚisawaitabler    r
   r   rq   rƒ   r¡   s      r.   r¤   z)AsyncAnthropicFoundry._get_azure_ad_tokenš  s—   è è € ØÔ0ˆØÐØ�H‘J”JˆEÝÔ" 5Ñ)Ô)ð $Ø#˜˜˜˜˜˜�Øð ¥
­4µ°UÑ+;Ô+;½SÑ AÔ Að Ý ØmÐfkÐmÐmñô ð õ �u‘:”:Ðàˆtr/   r¥   r   c              ƒ  óf  K  — t          |j        ¦  «        r	i |j        ¥ni }t          |¦  «        }||_        |                      ¦   «         ƒ d {V —†}|�|                     d¦  «        €d|› �|d<   n?| j        �)| j        €J ‚|                     d¦  «        €
| j        |d<   nt          d¦  «        ‚|S r§   r©   r«   s       r.   r­   z&AsyncAnthropicFoundry._prepare_options¨  sÕ   è è € å@HÈÌÑ@YÔ@YÐ)aÐ)<¨G¬OÐ)<Ð)<Ð_aˆå˜WÑ%Ô%ˆØ!ˆŒà#×7Ò7Ñ9Ô9Ð9Ð9Ð9Ð9Ð9Ð9ˆØÐ%Ø�{Š{˜?Ñ+Ô+Ð3Ø+E°^Ð+EÐ+E�˜Ñ(øØŒ\Ð%Ø”<Ð+Ð+Ð+Ø�{Š{˜9Ñ%Ô%Ð-Ø%)¤\�˜	Ñ"øõ Ð4Ñ5Ô5Ð5àˆr/   )rZ   rc   r[   rc   r\   r´   r]   re   r^   rf   r_   rg   r`   rh   ra   rµ   rb   rj   r'   r(   )rp   rq   r[   rc   r\   r´   r]   re   r^   rf   r_   rg   r`   rh   ra   rµ   rb   rj   r'   r(   )rZ   rc   r[   rc   r\   r´   rp   rc   r]   re   r^   rf   r_   rg   r`   rh   ra   rµ   rb   rj   r'   r(   r0   )r'   rN   )r'   rT   )r[   rc   r\   r´   r‘   rc   rp   r•   r]   re   ra   rµ   r^   r–   r_   rg   r’   rg   r`   rh   r“   rh   r”   r—   r'   r   r®   r¯   r°   r5   s   @r.   r³   r³     s  ø€ € € € € Øð  $Ø"ØDHØ5>Ø.Ø48Ø59Ø04Ø,1ðð ð ð ð ñ „Xðð ð
 #ØDHØ5>Ø.Ø48Ø59Ø04Ø,1ðð ð ð ð ñ „Xðð"  $Ø"ØDHØ#Ø5>Ø.Ø48Ø59Ø04Ø,1ð5@ð 5@ð 5@ð 5@ð 5@ð 5@ð 5@ð 5@ðn Øðð ð ñ „Xñ „_ðð Øð1ð 1ð 1ñ „Xñ „_ð1ð Øð-ð -ð -ñ „Xñ „_ð-ð ð #ØDHØ!%Ø+/Ø5>Ø04Ø&/Ø48Ø8<Ø59Ø9=Ø+-ð"
ð "
ð "
ð "
ð "
ð "
ð "
ñ „Xð"
ðH €Lðð ð ð ð ðð ð ñ „Xðð ð ð ð r/   r³   )CÚ
__future__r   r€   r¾   Útypingr   r   r   r   r   r	   r
   r   Ú	functoolsr   Útyping_extensionsr   r   ÚhttpxÚ_typesr   r   r   r   Ú_utilsr   rJ   r   r   Ú_compatr   Ú_modelsr   Ú
_streamingr   r   Ú_exceptionsr   Ú_base_clientr   r   Úresources.betar   r   Úresources.messagesr    r!   Úresources.beta.messagesrG   rU   rq   ÚAzureADTokenProviderÚAsyncAzureADTokenProviderÚClientÚAsyncClientr"   r$   r&   r7   r:   rC   rF   rN   rQ   rT   rX   r³   r8   r/   r.   ú<module>rÔ      sè  ðØ "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø €€€Ø TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TØ %Ð %Ð %Ð %Ð %Ð %Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,à €€€à 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø Ð Ð Ð Ð Ð Ø /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ø  Ð  Ð  Ð  Ð  Ð  Ø )Ð )Ð )Ð )Ð )Ð )Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø (Ð (Ð (Ð (Ð (Ð (Ø :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ø bÐ bÐ bÐ bÐ bÐ bÐ bÐ bà  C Ô(Ð Ø$ RÐ)?Ð%?Ô@Ð Ø�˜¨u°U´\À5ÔCTÐ5TÔ/UÐVÑVÔV€Ø�'Ð+°5¸À¼ÀkÐRUÔFVÐ9VÔ3WÐXÑXÔX€ð
ð 
ð 
ð 
ð 
 ñ 
ô 
ð 
ð IÐ HÐ HÐ HÐ H˜
 =°/Ð#AÔBÑ HÔ HÐ Hðð ð ð ð �hñ ô ð ðð ð ð ð ˜,ñ ô ð ð1ð 1ð 1ð 1ð 1�$ñ 1ô 1ð 1ðð ð ð ð ˜=ñ ô ð ðð ð ð ð Ð0ñ ô ð ð6ð 6ð 6ð 6ð 6�yñ 6ô 6ð 6ðnð nð nð nð nÐ(¨¬°v¸c´{Ð)BÔCÀYñ nô nð nðbpð pð pð pð pÐ-¨eÔ.?ÀÈSÔAQÐ.QÔRÐTbñ pô pð pð pð pr/   