Ë
    «ëi¿i  ã                  ó`  — 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mZ d dlZddlmZ ddlmZmZmZmZmZ ddlmZ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*  e+g d¢«      Z,e	g e-f   Z.e	g df   Z/ edeej`                  ejb                  f   ¬«      Z2 edee$e   e%e   f   ¬«      Z3dji                  g d¢«      Z5 G d„ de'«      Z6 G d„ de*e2e3f   «      Z7 G d„ de7ej`                  e$e   f   e«      Z8 G d„ de7ejb                  e%e   f   e«      Z9y)é    )ÚannotationsN)ÚAnyÚUnionÚMappingÚTypeVarÚCallableÚ	AwaitableÚcastÚoverload)ÚSelfÚoverrideé   )ÚWorkloadIdentity)Ú	NOT_GIVENÚOmitÚQueryÚTimeoutÚNotGiven)Úis_givenÚ
is_mapping)ÚOpenAIÚAsyncOpenAI)Ú
model_copy)ÚFinalRequestOptions)ÚStreamÚAsyncStream)ÚOpenAIError)ÚDEFAULT_MAX_RETRIESÚ
BaseClient)z/completionsz/chat/completionsz/embeddingsz/audio/transcriptionsz/audio/translationsz/audio/speechz/images/generationsz/images/editszstr | Awaitable[str]Ú_HttpxClientT)ÚboundÚ_DefaultStreamTÚ )ú<zmissing API keyú>c                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )ÚMutuallyExclusiveAuthErrorc                ó$   •— t         ‰| �  d«       y )Nz€The `api_key`, `azure_ad_token` and `azure_ad_token_provider` arguments are mutually exclusive; Only one can be passed at a time)ÚsuperÚ__init__)ÚselfÚ	__class__s    €úP/var/www/html/chat/reports/venv/lib/python3.12/site-packages/openai/lib/azure.pyr*   z#MutuallyExclusiveAuthError.__init__/   s   ø€ Ü‰Ñð Oõ	
ó    )ÚreturnÚNone)Ú__name__Ú
__module__Ú__qualname__r*   Ú__classcell__©r,   s   @r-   r'   r'   .   s   ø„ ÷
ñ 
r.   r'   c                  óf   ‡ — e Zd ZU ded<   ded<   eddœ	 	 	 	 	 d	ˆ fd„«       Zed
ˆ fd„«       Zˆ xZS )ÚBaseAzureClientzhttpx.URL | NoneÚ_azure_endpointú
str | NoneÚ_azure_deploymentr   ©Úretries_takenc               ó  •— |j                   t        v rit        |j                  «      rT|j                  j	                  d«      }|�7dt        | j                  j                  «      vrd|› |j                   › �|_         t        ‰| �%  ||¬«      S )NÚmodelz/deploymentsz/deployments/r;   )
ÚurlÚ_deployments_endpointsr   Ú	json_dataÚgetÚstrÚbase_urlÚpathr)   Ú_build_request)r+   Úoptionsr<   r>   r,   s       €r-   rF   zBaseAzureClient._build_request9   s|   ø€ ð �;‰;Ô0Ñ0´ZÀ×@QÑ@QÔ5RØ×%Ñ%×)Ñ)¨'Ó2ˆEØÐ  ^¼3¸t¿}¹}×?QÑ?QÓ;RÑ%RØ -¨e¨W°W·[±[°MÐB�”ä‰wÑ% g¸]Ð%ÓKÐKr.   c                óh  •— | j                   r—| j                  r‹|t        vrƒt        j                  |«      }|j
                  r`| j                  j                  j                  d«      dz   |j                  j                  d«      z   }| j                  j                  |¬«      S |S t        ‰| �-  |«      S )zïAdjust the URL if the client was configured with an Azure endpoint + deployment
        and the API feature being called is **not** a deployments-based endpoint
        (i.e. requires /deployments/deployment-name in the URL path).
        ó   /s   /openai/©Úraw_path)r:   r8   r@   ÚhttpxÚURLÚis_relative_urlrK   ÚrstripÚlstripÚ	copy_withr)   Ú_prepare_url)r+   r?   Ú	merge_urlÚmerge_raw_pathr,   s       €r-   rR   zBaseAzureClient._prepare_urlG   s¡   ø€ ð ×!Ò! d×&:Ò&:¸sÔJ`Ñ?`ÜŸ	™	 #›ˆIØ×(Ò(à×(Ñ(×1Ñ1×8Ñ8¸Ó>ÀÑLÈy×OaÑOa×OhÑOhÐimÓOnÑnð ð ×+Ñ+×5Ñ5¸~Ð5ÓNÐNàÐä‰wÑ# CÓ(Ð(r.   )rG   r   r<   Úintr/   zhttpx.Request)r?   rC   r/   z	httpx.URL)r1   r2   r3   Ú__annotations__r   rF   rR   r4   r5   s   @r-   r7   r7   5   s[   ø… Ø%Ó%Ø!Ó!àð
 ñ	Là$ðLð ð	Lð
 
ôLó ðLð ô)ó ô)r.   r7   c                  ó†  ‡ — e Zd Zeddddddddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zeddddddddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zedddddddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zddddddddddddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd	„Zedddddd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dd„Zˆ xZS )ÚAzureOpenAINF)Úazure_deploymentÚapi_versionÚapi_keyÚazure_ad_tokenÚazure_ad_token_providerÚorganizationÚwebhook_secretÚwebsocket_base_urlÚtimeoutÚmax_retriesÚdefault_headersÚdefault_queryÚhttp_clientÚ_strict_response_validationc                ó   — y ©N© )r+   Úazure_endpointrY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   s                   r-   r*   zAzureOpenAI.__init__[   ó   € ð& r.   c                ó   — y rh   ri   )r+   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   s                  r-   r*   zAzureOpenAI.__init__p   ó   € ð$ r.   )rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   c                ó   — y rh   ri   )r+   rD   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   s                  r-   r*   zAzureOpenAI.__init__„   rm   r.   )rZ   rj   rY   r[   Úworkload_identityr\   r]   r^   Úprojectr_   r`   rD   ra   rb   rc   rd   re   rf   c               óÊ  •— |€t         j                  j                  d«      }|€t         j                  j                  d«      }|€|€|€t        d«      ‚|€t         j                  j                  d«      }|€t	        d«      ‚|€d|i}ni |¥d|i¥}|€\|€t         j                  j                  d«      }|€t	        d	«      ‚|�|j                  d
«      › d|› �}n"|j                  d
«      › d�}n|�t	        d«      ‚|€t        }t        ‰| �!  |||	|
||||||||¬«       || _	        || _
        || _        |r|nd| _        |rt        j                  |«      | _        yd| _        y)aa  Construct a new synchronous azure openai client instance.

        This automatically infers the following arguments from their corresponding environment variables if they are not provided:
        - `api_key` from `AZURE_OPENAI_API_KEY`
        - `organization` from `OPENAI_ORG_ID`
        - `project` from `OPENAI_PROJECT_ID`
        - `azure_ad_token` from `AZURE_OPENAI_AD_TOKEN`
        - `api_version` from `OPENAI_API_VERSION`
        - `azure_endpoint` from `AZURE_OPENAI_ENDPOINT`

        Args:
            azure_endpoint: Your Azure endpoint, including the resource, e.g. `https://example-resource.azure.openai.com/`

            azure_ad_token: Your Azure Active Directory token, https://www.microsoft.com/en-us/security/business/identity-access/microsoft-entra-id

            azure_ad_token_provider: A function that returns an Azure Active Directory token, will be invoked on every request.

            azure_deployment: A model deployment, if given with `azure_endpoint`, sets the base client URL to include `/deployments/{azure_deployment}`.
                Not supported with Assistants APIs.
        NÚAZURE_OPENAI_API_KEYÚAZURE_OPENAI_AD_TOKENú¯Missing credentials. Please pass one of `api_key`, `azure_ad_token`, `azure_ad_token_provider`, or the `AZURE_OPENAI_API_KEY` or `AZURE_OPENAI_AD_TOKEN` environment variables.ÚOPENAI_API_VERSIONú_Must provide either the `api_version` argument or the `OPENAI_API_VERSION` environment variableúapi-versionÚAZURE_OPENAI_ENDPOINTúuMust provide one of the `base_url` or `azure_endpoint` arguments, or the `AZURE_OPENAI_ENDPOINT` environment variableú/ú/openai/deployments/ú/openaiú2base_url and azure_endpoint are mutually exclusive©r[   r^   rp   r_   rD   ra   rb   rc   rd   re   r`   rf   ©ÚosÚenvironrB   r   Ú
ValueErrorrO   ÚAPI_KEY_SENTINELr)   r*   Ú_api_versionÚ_azure_ad_tokenÚ_azure_ad_token_providerr:   rL   rM   r8   )r+   rZ   rj   rY   r[   ro   r\   r]   r^   rp   r_   r`   rD   ra   rb   rc   rd   re   rf   r,   s                      €r-   r*   zAzureOpenAI.__init__˜   ó¹  ø€ ðV ˆ?Ü—j‘j—n‘nÐ%;Ó<ˆGàÐ!ÜŸZ™ZŸ^™^Ð,CÓDˆNàˆ?˜~Ð5Ð:QÐ:YÜð Bóð ð ÐÜŸ*™*Ÿ.™.Ð)=Ó>ˆKàÐÜØqóð ð Ð Ø*¨KÐ8‰MàI˜}ÐI¨m¸[ÑIˆMàÐØÐ%Ü!#§¡§¡Ð0GÓ!H�àÐ%Ü ð Lóð ð  Ð+Ø,×3Ñ3°CÓ8Ð9Ð9MÐN^ÐM_Ð`‘à,×3Ñ3°CÓ8Ð9¸ÐA‘àÐ)Ü Ð!UÓVÐVàˆ?ä&ˆGä‰ÑØØ%ØØ)ØØØ#Ø+Ø'Ø#Ø1Ø(Cð 	ô 	
ð (ˆÔØ-ˆÔØ(?ˆÔ%Ù5CÑ!1ÈˆÔÙ<JœuŸy™y¨Ó8ˆÕÐPTˆÕr.   ©r[   ro   r^   rp   r_   r`   rZ   r\   r]   rD   ra   re   rb   rc   Úset_default_headersrd   Úset_default_queryÚ_extra_kwargsc               ó    •— t         ‰| �  |||||||
||||||||xs | j                  |xs | j                  |	xs | j                  dœ|¥¬«      S ©z~
        Create a new client instance re-using the same options given to the current client with optional overriding.
        )rZ   r\   r]   )r[   ro   r^   rp   r_   r`   rD   ra   re   rb   rc   r‰   rd   rŠ   r‹   ©r)   Úcopyr„   r…   r†   ©r+   r[   ro   r^   rp   r_   r`   rZ   r\   r]   rD   ra   re   rb   rc   r‰   rd   rŠ   r‹   r,   s                      €r-   r�   zAzureOpenAI.copy  ó~   ø€ ô4 ‰w‰|ØØ/Ø%ØØ)Ø1ØØØ#Ø#Ø+Ø 3Ø'Ø/à*Ò?¨d×.?Ñ.?Ø"0Ò"H°D×4HÑ4HØ+BÒ+cÀd×FcÑFcñð  ð	ð ó 
ð 	
r.   c                ó¢   — | j                   �| j                   S | j                  }|�) |«       }|rt        |t        «      st	        d|› �«      ‚|S y ©NzOExpected `azure_ad_token_provider` argument to return a string but it returned )r…   r†   Ú
isinstancerC   r‚   ©r+   ÚproviderÚtokens      r-   Ú_get_azure_ad_tokenzAzureOpenAI._get_azure_ad_token7  sa   € Ø×ÑÐ+Ø×'Ñ'Ð'à×0Ñ0ˆØÐÙ“JˆEÙ¤
¨5´#Ô 6Ü ØeÐfkÐelÐmóð ð ˆLàr.   c                óH  — t        |j                  «      ri |j                  ¥ni }t        |«      }||_        | j                  «       }|�|j	                  d«      €d|› �|d<   |S | j
                  t        ur"|j	                  d«      €| j
                  |d<   |S t        d«      ‚©NÚAuthorizationúBearer úapi-keyzUnable to handle auth©r   Úheadersr   r˜   rB   r[   rƒ   r‚   ©r+   rG   rŸ   r\   s       r-   Ú_prepare_optionszAzureOpenAI._prepare_optionsF  s­   € ä@HÈÏÉÔ@YÐ)<¨G¯O©OÑ)<Ð_aˆä˜WÓ%ˆØ!ˆŒà×1Ñ1Ó3ˆØÐ%Ø�{‰{˜?Ó+Ð3Ø-4°^Ð4DÐ+E�˜Ñ(ð ˆð �\‰\Ô!1Ñ1Ø�{‰{˜9Ó%Ð-Ø%)§\¡\�˜	Ñ"ð
 ˆô Ð4Ó5Ð5r.   c                óü  — i }i |¥| j                   | j                  xs |dœ¥}| j                  r| j                  dk7  rd| j                  i}n| j                  «       }|rdd|› �i}| j                  �Pt        j                  | j                  «      }|j                  j                  d«      dz   }|j                  |¬«      }n#| j                  d	«      }|j                  d
¬«      }|j                  i |¥¬«      }	|	|fS ©N)rw   Ú
deploymentz<missing API key>r�   r›   rœ   rI   s	   /realtimerJ   z	/realtimeÚwss)Úscheme)Úparams©r„   r:   r[   r˜   r`   rL   rM   rK   rO   rQ   rR   ©
r+   r>   Úextra_queryÚauth_headersÚqueryr—   rD   rT   Úrealtime_urlr?   s
             r-   Ú_configure_realtimezAzureOpenAI._configure_realtimeZ  s
  € Øˆð
Øð
à×,Ñ,Ø×0Ñ0Ò9°Eò
ˆð
 �<Š<˜DŸL™LÐ,?Ò?Ø% t§|¡|Ð4‰Là×,Ñ,Ó.ˆEÙØ /°7¸5¸'Ð1BÐC�à×"Ñ"Ð.Ü—y‘y ×!8Ñ!8Ó9ˆHØ%×.Ñ.×5Ñ5°dÓ;¸lÑJˆNØ#×-Ñ-°~Ð-ÓF‰Là×(Ñ(¨Ó5ˆHØ#×-Ñ-°UÐ-Ó;ˆLà×$Ñ$¨I¨u¨IÐ$Ó6ˆØ�LÐ Ð r.   ) rj   rC   rY   r9   rZ   r9   r[   ústr | Callable[[], str] | Noner\   r9   r]   úAzureADTokenProvider | Noner^   r9   r_   r9   r`   ústr | httpx.URL | Nonera   ú!float | Timeout | None | NotGivenrb   rU   rc   úMapping[str, str] | Nonerd   úMapping[str, object] | Nonere   úhttpx.Client | Nonerf   Úboolr/   r0   )rY   r9   rZ   r9   r[   r¯   r\   r9   r]   r°   r^   r9   r_   r9   r`   r±   ra   r²   rb   rU   rc   r³   rd   r´   re   rµ   rf   r¶   r/   r0   )rD   rC   rZ   r9   r[   r¯   r\   r9   r]   r°   r^   r9   r_   r9   r`   r±   ra   r²   rb   rU   rc   r³   rd   r´   re   rµ   rf   r¶   r/   r0   )&rZ   r9   rj   r9   rY   r9   r[   r¯   ro   úWorkloadIdentity | Noner\   r9   r]   r°   r^   r9   rp   r9   r_   r9   r`   r±   rD   r9   ra   r²   rb   rU   rc   r³   rd   r´   re   rµ   rf   r¶   r/   r0   )&r[   r¯   ro   r·   r^   r9   rp   r9   r_   r9   r`   r±   rZ   r9   r\   r9   r]   r°   rD   r±   ra   r²   re   rµ   rb   úint | NotGivenrc   r³   r‰   r³   rd   r´   rŠ   r´   r‹   úMapping[str, Any]r/   r   ©r/   r9   ©rG   r   r/   r   ©r>   rC   rª   r   r/   z tuple[httpx.URL, dict[str, str]]©r1   r2   r3   r   r   r   r*   r   r�   Úwith_optionsr˜   r¡   r®   r4   r5   s   @r-   rX   rX   Z   sÞ  ø„ Øð
 (,Ø"&Ø26Ø%)Ø?CØ#'Ø%)Ø59Ø5>Ø.Ø48Ø59Ø+/Ø,1ñ#ð ðð %ð	ð
  ðð 0ðð #ðð "=ðð !ðð #ðð 3ðð 3ðð ðð 2ðð 3ðð  )ð!ð" &*ð#ð$ 
ò%ó ðð( ð (,Ø"&Ø26Ø%)Ø?CØ#'Ø%)Ø59Ø5>Ø.Ø48Ø59Ø+/Ø,1ñ!ð %ðð  ð	ð
 0ðð #ðð "=ðð !ðð #ðð 3ðð 3ðð ðð 2ðð 3ðð )ðð  &*ð!ð" 
ò#ó ðð& ð
 #'Ø26Ø%)Ø?CØ#'Ø%)Ø59Ø5>Ø.Ø48Ø59Ø+/Ø,1ñ!ð ðð  ð	ð
 0ðð #ðð "=ðð !ðð #ðð 3ðð 3ðð ðð 2ðð 3ðð )ðð  &*ð!ð" 
ò#ó ðð, #'Ø%)Ø'+Ø26à59Ø%)Ø?CØ#'Ø"Ø%)Ø59Ø#Ø5>Ø.Ø48Ø59Ø+/Ø,1ñ+jUð  ðjUð #ð	jUð
 %ðjUð 0ðjUð 3ðjUð #ðjUð "=ðjUð !ðjUð ðjUð #ðjUð 3ðjUð ðjUð  3ð!jUð" ð#jUð$ 2ð%jUð& 3ð'jUð( )ð)jUð* &*ð+jUð, 
õ-jUðX ð 37Ø59Ø#'Ø"Ø%)Ø59Ø"&Ø%)Ø?CØ+/Ø5>Ø+/Ø&/Ø48Ø8<Ø59Ø9=Ø+-ñ).
ð 0ð.
ð 3ð	.
ð
 !ð.
ð ð.
ð #ð.
ð 3ð.
ð  ð.
ð #ð.
ð "=ð.
ð )ð.
ð 3ð.
ð )ð.
ð $ð.
ð  2ð!.
ð" 6ð#.
ð$ 3ð%.
ð& 7ð'.
ð( )ð).
ð* 
ô+.
ó ð.
ð` €Lóð òó ð÷&!r.   rX   c                  ó˜  ‡ — e Zd Zedddddddddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zedddddddddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zeddddddddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„«       Zddddddddddddeedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd	„Zedddddd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dd„Zˆ xZS )ÚAsyncAzureOpenAINF)rY   rZ   r[   r\   r]   r^   rp   r_   r`   ra   rb   rc   rd   re   rf   c                ó   — y rh   ri   )r+   rj   rY   rZ   r[   r\   r]   r^   rp   r_   r`   ra   rb   rc   rd   re   rf   s                    r-   r*   zAsyncAzureOpenAI.__init__u  s   € ð( r.   c                ó   — y rh   ri   )r+   rY   rZ   r[   r\   r]   r^   rp   r_   r`   ra   rb   rc   rd   re   rf   s                   r-   r*   zAsyncAzureOpenAI.__init__‹  rk   r.   )rZ   r[   r\   r]   r^   rp   r_   r`   ra   rb   rc   rd   re   rf   c                ó   — y rh   ri   )r+   rD   rZ   r[   r\   r]   r^   rp   r_   r`   ra   rb   rc   rd   re   rf   s                   r-   r*   zAsyncAzureOpenAI.__init__   rk   r.   )rj   rY   rZ   r[   ro   r\   r]   r^   rp   r_   rD   r`   ra   rb   rc   rd   re   rf   c               óÊ  •— |€t         j                  j                  d«      }|€t         j                  j                  d«      }|€|€|€t        d«      ‚|€t         j                  j                  d«      }|€t	        d«      ‚|€d|i}ni |¥d|i¥}|€\|€t         j                  j                  d«      }|€t	        d	«      ‚|�|j                  d
«      › d|› �}n"|j                  d
«      › d�}n|�t	        d«      ‚|€t        }t        ‰| �!  |||	|
||||||||¬«       || _	        || _
        || _        |r|nd| _        |rt        j                  |«      | _        yd| _        y)ab  Construct a new asynchronous azure openai client instance.

        This automatically infers the following arguments from their corresponding environment variables if they are not provided:
        - `api_key` from `AZURE_OPENAI_API_KEY`
        - `organization` from `OPENAI_ORG_ID`
        - `project` from `OPENAI_PROJECT_ID`
        - `azure_ad_token` from `AZURE_OPENAI_AD_TOKEN`
        - `api_version` from `OPENAI_API_VERSION`
        - `azure_endpoint` from `AZURE_OPENAI_ENDPOINT`

        Args:
            azure_endpoint: Your Azure endpoint, including the resource, e.g. `https://example-resource.azure.openai.com/`

            azure_ad_token: Your Azure Active Directory token, https://www.microsoft.com/en-us/security/business/identity-access/microsoft-entra-id

            azure_ad_token_provider: A function that returns an Azure Active Directory token, will be invoked on every request.

            azure_deployment: A model deployment, if given with `azure_endpoint`, sets the base client URL to include `/deployments/{azure_deployment}`.
                Not supported with Assistants APIs.
        Nrr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   )r+   rj   rY   rZ   r[   ro   r\   r]   r^   rp   r_   rD   r`   ra   rb   rc   rd   re   rf   r,   s                      €r-   r*   zAsyncAzureOpenAI.__init__µ  r‡   r.   rˆ   c               ó    •— t         ‰| �  |||||||
||||||||xs | j                  |xs | j                  |	xs | j                  dœ|¥¬«      S r�   rŽ   r�   s                      €r-   r�   zAsyncAzureOpenAI.copy!  r‘   r.   c              ƒ  ó  K  — | j                   �| j                   S | j                  }|�_ |«       }t        j                  |«      r
|ƒ d {  –—† }|rt	        t        t        |«      t        «      st        d|› �«      ‚t        |«      S y 7 Œ>­wr“   )	r…   r†   ÚinspectÚisawaitabler”   r
   r   rC   r‚   r•   s      r-   r˜   z$AsyncAzureOpenAI._get_azure_ad_tokenT  s‹   è ø€ Ø×ÑÐ+Ø×'Ñ'Ð'à×0Ñ0ˆØÐÙ“JˆEÜ×"Ñ" 5Ô)Ø#Ÿ�Ù¤
¬4´°UÓ+;¼SÔ AÜ ØeÐfkÐelÐmóð ô �u“:Ðàð $ús   ‚ABÁ
B	Á?Bc              ƒ  ód  K  — t        |j                  «      ri |j                  ¥ni }t        |«      }||_        | j                  «       ƒ d {  –—† }|�|j	                  d«      €d|› �|d<   |S | j
                  t        ur"|j	                  d«      €| j
                  |d<   |S t        d«      ‚7 Œ`­wrš   rž   r    s       r-   r¡   z!AsyncAzureOpenAI._prepare_optionse  s¹   è ø€ ä@HÈÏÉÔ@YÐ)<¨G¯O©OÑ)<Ð_aˆä˜WÓ%ˆØ!ˆŒà#×7Ñ7Ó9×9ˆØÐ%Ø�{‰{˜?Ó+Ð3Ø-4°^Ð4DÐ+E�˜Ñ(ð ˆð �\‰\Ô!1Ñ1Ø�{‰{˜9Ó%Ð-Ø%)§\¡\�˜	Ñ"ð
 ˆô Ð4Ó5Ð5ð :ús   ‚AB0ÁB.ÁA!B0c              ƒ  ó  K  — i }i |¥| j                   | j                  xs |dœ¥}| j                  r| j                  dk7  rd| j                  i}n!| j                  «       ƒ d {  –—† }|rdd|› �i}| j                  �Pt        j                  | j                  «      }|j                  j                  d«      dz   }|j                  |¬«      }n#| j                  d	«      }|j                  d
¬«      }|j                  i |¥¬«      }	|	|fS 7 Œ¤­wr£   r¨   r©   s
             r-   r®   z$AsyncAzureOpenAI._configure_realtimey  s  è ø€ Øˆð
Øð
à×,Ñ,Ø×0Ñ0Ò9°Eò
ˆð
 �<Š<˜DŸL™LÐ,?Ò?Ø% t§|¡|Ð4‰Là×2Ñ2Ó4×4ˆEÙØ /°7¸5¸'Ð1BÐC�à×"Ñ"Ð.Ü—y‘y ×!8Ñ!8Ó9ˆHØ%×.Ñ.×5Ñ5°dÓ;¸lÑJˆNØ#×-Ñ-°~Ð-ÓF‰Là×(Ñ(¨Ó5ˆHØ#×-Ñ-°UÐ-Ó;ˆLà×$Ñ$¨I¨u¨IÐ$Ó6ˆØ�LÐ Ð ð 5ús   ‚A!D
Á#DÁ$B%D
)"rj   rC   rY   r9   rZ   r9   r[   ú)str | Callable[[], Awaitable[str]] | Noner\   r9   r]   ú AsyncAzureADTokenProvider | Noner^   r9   rp   r9   r_   r9   r`   r±   ra   r²   rb   rU   rc   r³   rd   r´   re   úhttpx.AsyncClient | Nonerf   r¶   r/   r0   ) rY   r9   rZ   r9   r[   rË   r\   r9   r]   rÌ   r^   r9   rp   r9   r_   r9   r`   r±   ra   r²   rb   rU   rc   r³   rd   r´   re   rÍ   rf   r¶   r/   r0   ) rD   rC   rZ   r9   r[   rË   r\   r9   r]   rÌ   r^   r9   rp   r9   r_   r9   r`   r±   ra   r²   rb   rU   rc   r³   rd   r´   re   rÍ   rf   r¶   r/   r0   )&rj   r9   rY   r9   rZ   r9   r[   rË   ro   r·   r\   r9   r]   rÌ   r^   r9   rp   r9   r_   r9   rD   r9   r`   r±   ra   r²   rb   rU   rc   r³   rd   r´   re   rÍ   rf   r¶   r/   r0   )&r[   rË   ro   r·   r^   r9   rp   r9   r_   r9   r`   r±   rZ   r9   r\   r9   r]   rÌ   rD   r±   ra   r²   re   rÍ   rb   r¸   rc   r³   r‰   r³   rd   r´   rŠ   r´   r‹   r¹   r/   r   rº   r»   r¼   r½   r5   s   @r-   rÀ   rÀ   t  s  ø„ Øð
 (,Ø"&Ø=AØ%)ØDHØ#'Ø"Ø%)Ø59Ø5>Ø.Ø48Ø59Ø04Ø,1ñ%ð ðð %ð	ð
  ðð ;ðð #ðð "Bðð !ðð ðð #ðð 3ðð 3ðð ðð 2ðð  3ð!ð" .ð#ð$ &*ð%ð& 
ò'ó ðð* ð (,Ø"&Ø=AØ%)ØDHØ#'Ø"Ø%)Ø59Ø5>Ø.Ø48Ø59Ø04Ø,1ñ#ð %ðð  ð	ð
 ;ðð #ðð "Bðð !ðð ðð #ðð 3ðð 3ðð ðð 2ðð 3ðð  .ð!ð" &*ð#ð$ 
ò%ó ðð( ð
 #'Ø=AØ%)ØDHØ#'Ø"Ø%)Ø59Ø5>Ø.Ø48Ø59Ø04Ø,1ñ#ð ðð  ð	ð
 ;ðð #ðð "Bðð !ðð ðð #ðð 3ðð 3ðð ðð 2ðð 3ðð  .ð!ð" &*ð#ð$ 
ò%ó ðð. &*Ø'+Ø"&Ø=Aà59Ø%)ØDHØ#'Ø"Ø%)Ø#Ø59Ø5>Ø.Ø48Ø59Ø04Ø,1ñ+jUð #ðjUð %ð	jUð
  ðjUð ;ðjUð 3ðjUð #ðjUð "BðjUð !ðjUð ðjUð #ðjUð ðjUð 3ðjUð  3ð!jUð" ð#jUð$ 2ð%jUð& 3ð'jUð( .ð)jUð* &*ð+jUð, 
õ-jUðX ð >BØ59Ø#'Ø"Ø%)Ø59Ø"&Ø%)ØDHØ+/Ø5>Ø04Ø&/Ø48Ø8<Ø59Ø9=Ø+-ñ).
ð ;ð.
ð 3ð	.
ð
 !ð.
ð ð.
ð #ð.
ð 3ð.
ð  ð.
ð #ð.
ð "Bð.
ð )ð.
ð 3ð.
ð .ð.
ð $ð.
ð  2ð!.
ð" 6ð#.
ð$ 3ð%.
ð& 7ð'.
ð( )ð).
ð* 
ô+.
ó ð.
ð` €Lóð" òó ð÷&!r.   rÀ   ):Ú
__future__r   r€   rÇ   Útypingr   r   r   r   r   r	   r
   r   Útyping_extensionsr   r   rL   Úauthr   Ú_typesr   r   r   r   r   Ú_utilsr   r   Ú_clientr   r   Ú_compatr   Ú_modelsr   Ú
_streamingr   r   Ú_exceptionsr   Ú_base_clientr   r   Úsetr@   rC   ÚAzureADTokenProviderÚAsyncAzureADTokenProviderÚClientÚAsyncClientr    r"   Újoinrƒ   r'   r7   rX   rÀ   ri   r.   r-   ú<module>rà      s+  ðÝ "ã 	Û ß T× TÓ Tß ,ã å #ß >Õ >ß )ß )Ý  Ý )ß ,Ý %ß :áò	óÐ ð    C Ñ(Ð Ø$ RÐ)?Ð%?Ñ@Ð Ù˜¨u°U·\±\À5×CTÑCTÐ5TÑ/UÔV€ÙÐ+°5¸À¹ÀkÐRUÑFVÐ9VÑ3WÔX€ð —7‘7Ò8Ó9Ð ô
 ô 
ô")�j °Ð!?Ñ@ô ")ôJW!�/ %§,¡,°°s±Ð";Ñ<¸fô W!ôt\!� u×'8Ñ'8¸+ÀcÑ:JÐ'JÑKÈ[õ \!r.   