Ë
    $Æ%hd  ã                  óT  — 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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j^                  f   ¬«      Z0 edee"e   e#e   f   ¬«      Z1dje                  g d¢«      Z3 G d„ de%«      Z4 G d„ de(e0e1f   «      Z5 G d„ de5ej\                  e"e   f   e«      Z6 G d„ de5ej^                  e#e   f   e«      Z7y)é    )ÚannotationsN)ÚAnyÚUnionÚMappingÚTypeVarÚCallableÚ	AwaitableÚcastÚoverload)ÚSelfÚoverrideé   )Ú	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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    €úN/var/www/skyplay_api_hub/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,   rE   zBaseAzureClient._build_request7   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)r9   r7   r?   ÚhttpxÚURLÚis_relative_urlrJ   ÚrstripÚlstripÚ	copy_withr(   Ú_prepare_url)r*   r>   Ú	merge_urlÚmerge_raw_pathr+   s       €r,   rQ   zBaseAzureClient._prepare_urlE   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-   )rF   r   r;   Úintr.   zhttpx.Request)r>   rB   r.   z	httpx.URL)r0   r1   r2   Ú__annotations__r   rE   rQ   r3   r4   s   @r,   r6   r6   3   s[   ø… Ø%Ó%Ø!Ó!àð
 ñ	Là$ðLð ð	Lð
 
ôLó ðLð ô)ó ô)r-   r6   c                  ó\  ‡ — e Zd Ze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e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eedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd	„Ze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Úwebsocket_base_urlÚtimeoutÚmax_retriesÚdefault_headersÚdefault_queryÚhttp_clientÚ_strict_response_validationc                ó   — y ©N© )r*   Úazure_endpointrX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   s                  r,   r)   zAzureOpenAI.__init__Y   ó   € ð$ r-   c                ó   — y rf   rg   )r*   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   s                 r,   r)   zAzureOpenAI.__init__m   ó   € ð" r-   )rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   c                ó   — y rf   rg   )r*   rC   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   s                 r,   r)   zAzureOpenAI.__init__€   rk   r-   )rY   rh   rX   rZ   r[   r\   r]   Úprojectr^   rC   r_   r`   ra   rb   rc   rd   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©rZ   r]   rm   rC   r_   r`   ra   rb   rc   r^   rd   ©ÚosÚenvironrA   r   Ú
ValueErrorrN   ÚAPI_KEY_SENTINELr(   r)   Ú_api_versionÚ_azure_ad_tokenÚ_azure_ad_token_providerr9   rK   rL   r7   )r*   rY   rh   rX   rZ   r[   r\   r]   rm   r^   rC   r_   r`   ra   rb   rc   rd   r+   s                    €r,   r)   zAzureOpenAI.__init__“   ó¶  ø€ ðP ˆ?Ü—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-   ©rZ   r]   rm   r^   rY   r[   r\   rC   r_   rc   r`   ra   Úset_default_headersrb   Ú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.
        )rY   r[   r\   )rZ   r]   rm   r^   rC   r_   rc   r`   ra   r†   rb   r‡   rˆ   ©r(   Úcopyr�   r‚   rƒ   ©r*   rZ   r]   rm   r^   rY   r[   r\   rC   r_   rc   r`   ra   r†   rb   r‡   rˆ   r+   s                    €r,   rŒ   zAzureOpenAI.copyû   óx   ø€ ô0 ‰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ƒ   Ú
isinstancerB   r   ©r*   ÚproviderÚtokens      r,   Ú_get_azure_ad_tokenzAzureOpenAI._get_azure_ad_token*  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•   rA   rZ   r€   r   ©r*   rF   rœ   r[   s       r,   Ú_prepare_optionszAzureOpenAI._prepare_options9  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                  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)rt   Ú
deploymentz<missing API key>rš   r˜   r™   rH   s	   /realtimerI   z	/realtimeÚwss)Úscheme)Úparams©r�   r9   rZ   r•   r^   rK   rL   rJ   rN   rP   rQ   ©
r*   r=   Úextra_queryÚauth_headersÚqueryr”   rC   rS   Úrealtime_urlr>   s
             r,   Ú_configure_realtimezAzureOpenAI._configure_realtimeM  s  € Øˆð
Øð
à×,Ñ,Ø×0Ñ0Ò9°Eò
ˆð
 �<‰<Ð.Ò.Ø% 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-   )rh   rB   rX   r8   rY   r8   rZ   r8   r[   r8   r\   úAzureADTokenProvider | Noner]   r8   r^   ústr | httpx.URL | Noner_   ú!float | Timeout | None | NotGivenr`   rT   ra   úMapping[str, str] | Nonerb   úMapping[str, object] | Nonerc   úhttpx.Client | Nonerd   Úboolr.   r/   )rX   r8   rY   r8   rZ   r8   r[   r8   r\   r¬   r]   r8   r^   r­   r_   r®   r`   rT   ra   r¯   rb   r°   rc   r±   rd   r²   r.   r/   )rC   rB   rY   r8   rZ   r8   r[   r8   r\   r¬   r]   r8   r^   r­   r_   r®   r`   rT   ra   r¯   rb   r°   rc   r±   rd   r²   r.   r/   )"rY   r8   rh   r8   rX   r8   rZ   r8   r[   r8   r\   r¬   r]   r8   rm   r8   r^   r­   rC   r8   r_   r®   r`   rT   ra   r¯   rb   r°   rc   r±   rd   r²   r.   r/   )"rZ   r8   r]   r8   rm   r8   r^   r­   rY   r8   r[   r8   r\   r¬   rC   r­   r_   r®   rc   r±   r`   úint | NotGivenra   r¯   r†   r¯   rb   r°   r‡   r°   rˆ   úMapping[str, Any]r.   r   ©r.   r8   ©rF   r   r.   r   ©r=   rB   r§   r   r.   z tuple[httpx.URL, dict[str, str]]©r0   r1   r2   r   r   r   r)   r   rŒ   Úwith_optionsr•   rž   r«   r3   r4   s   @r,   rW   rW   X   s  ø„ Øð
 (,Ø"&Ø"Ø%)Ø?CØ#'Ø59Ø5>Ø.Ø48Ø59Ø+/Ø,1ñ!ð ðð %ð	ð
  ðð ðð #ðð "=ðð !ðð 3ðð 3ðð ðð 2ðð 3ðð )ðð  &*ð!ð" 
ò#ó ðð& ð (,Ø"&Ø"Ø%)Ø?CØ#'Ø59Ø5>Ø.Ø48Ø59Ø+/Ø,1ñð %ðð  ð	ð
 ðð #ðð "=ðð !ðð 3ðð 3ðð ðð 2ðð 3ðð )ðð &*ðð  
ò!ó ðð$ ð
 #'Ø"Ø%)Ø?CØ#'Ø59Ø5>Ø.Ø48Ø59Ø+/Ø,1ñð ðð  ð	ð
 ðð #ðð "=ðð !ðð 3ðð 3ðð ðð 2ðð 3ðð )ðð &*ðð  
ò!ó ðð* #'Ø%)Ø'+Ø"Ø%)Ø?CØ#'Ø"Ø59Ø#Ø5>Ø.Ø48Ø59Ø+/Ø,1ñ%fUð  ðfUð #ð	fUð
 %ðfUð ðfUð #ðfUð "=ðfUð !ðfUð ðfUð 3ðfUð ðfUð 3ðfUð ðfUð 2ðfUð  3ð!fUð" )ð#fUð$ &*ð%fUð& 
õ'fUðP ð #Ø#'Ø"Ø59Ø"&Ø%)Ø?CØ+/Ø5>Ø+/Ø&/Ø48Ø8<Ø59Ø9=Ø+-ñ%*
ð ð*
ð !ð	*
ð
 ð*
ð 3ð*
ð  ð*
ð #ð*
ð "=ð*
ð )ð*
ð 3ð*
ð )ð*
ð $ð*
ð 2ð*
ð 6ð*
ð  3ð!*
ð" 7ð#*
ð$ )ð%*
ð& 
ô'*
ó ð*
ðX €Lóð òó ð÷&!r-   rW   c                  ón  ‡ — 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eedddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd	„Ze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)rX   rY   rZ   r[   r\   r]   rm   r^   r_   r`   ra   rb   rc   rd   c                ó   — y rf   rg   )r*   rh   rX   rY   rZ   r[   r\   r]   rm   r^   r_   r`   ra   rb   rc   rd   s                   r,   r)   zAsyncAzureOpenAI.__init__h  s   € ð& r-   c                ó   — y rf   rg   )r*   rX   rY   rZ   r[   r\   r]   rm   r^   r_   r`   ra   rb   rc   rd   s                  r,   r)   zAsyncAzureOpenAI.__init__}  ri   r-   )rY   rZ   r[   r\   r]   rm   r^   r_   r`   ra   rb   rc   rd   c                ó   — y rf   rg   )r*   rC   rY   rZ   r[   r\   r]   rm   r^   r_   r`   ra   rb   rc   rd   s                  r,   r)   zAsyncAzureOpenAI.__init__‘  ri   r-   )rh   rX   rY   rZ   r[   r\   r]   rm   rC   r^   r_   r`   ra   rb   rc   rd   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.
        Nro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   )r*   rh   rX   rY   rZ   r[   r\   r]   rm   rC   r^   r_   r`   ra   rb   rc   rd   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   rB   r   r’   s      r,   r•   z$AsyncAzureOpenAI._get_azure_ad_token<  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_optionsM  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                  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_realtimea  s  è ø€ Øˆð
Øð
à×,Ñ,Ø×0Ñ0Ò9°Eò
ˆð
 �<‰<Ð.Ò.Ø% 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C>ÁC<ÁB%C>) rh   rB   rX   r8   rY   r8   rZ   r8   r[   r8   r\   ú AsyncAzureADTokenProvider | Noner]   r8   rm   r8   r^   r­   r_   r®   r`   rT   ra   r¯   rb   r°   rc   úhttpx.AsyncClient | Nonerd   r²   r.   r/   )rX   r8   rY   r8   rZ   r8   r[   r8   r\   rÆ   r]   r8   rm   r8   r^   r­   r_   r®   r`   rT   ra   r¯   rb   r°   rc   rÇ   rd   r²   r.   r/   )rC   rB   rY   r8   rZ   r8   r[   r8   r\   rÆ   r]   r8   rm   r8   r^   r­   r_   r®   r`   rT   ra   r¯   rb   r°   rc   rÇ   rd   r²   r.   r/   )"rh   r8   rX   r8   rY   r8   rZ   r8   r[   r8   r\   rÆ   r]   r8   rm   r8   rC   r8   r^   r­   r_   r®   r`   rT   ra   r¯   rb   r°   rc   rÇ   rd   r²   r.   r/   )"rZ   r8   r]   r8   rm   r8   r^   r­   rY   r8   r[   r8   r\   rÆ   rC   r­   r_   r®   rc   rÇ   r`   r³   ra   r¯   r†   r¯   rb   r°   r‡   r°   rˆ   r´   r.   r   rµ   r¶   r·   r¸   r4   s   @r,   r»   r»   g  s«  ø„ Øð
 (,Ø"&Ø"Ø%)ØDHØ#'Ø"Ø59Ø5>Ø.Ø48Ø59Ø04Ø,1ñ#ð ðð %ð	ð
  ðð ðð #ðð "Bðð !ðð ðð 3ðð 3ðð ðð 2ðð 3ðð  .ð!ð" &*ð#ð$ 
ò%ó ðð( ð (,Ø"&Ø"Ø%)ØDHØ#'Ø"Ø59Ø5>Ø.Ø48Ø59Ø04Ø,1ñ!ð %ðð  ð	ð
 ðð #ðð "Bðð !ðð ðð 3ðð 3ðð ðð 2ðð 3ðð .ðð  &*ð!ð" 
ò#ó ðð& ð
 #'Ø"Ø%)ØDHØ#'Ø"Ø59Ø5>Ø.Ø48Ø59Ø04Ø,1ñ!ð ðð  ð	ð
 ðð #ðð "Bðð !ðð ðð 3ðð 3ðð ðð 2ðð 3ðð .ðð  &*ð!ð" 
ò#ó ðð, &*Ø'+Ø"&Ø"Ø%)ØDHØ#'Ø"Ø#Ø59Ø5>Ø.Ø48Ø59Ø04Ø,1ñ%fUð #ðfUð %ð	fUð
  ðfUð ðfUð #ðfUð "BðfUð !ðfUð ðfUð ðfUð 3ðfUð 3ðfUð ðfUð 2ðfUð  3ð!fUð" .ð#fUð$ &*ð%fUð& 
õ'fUðP ð #Ø#'Ø"Ø59Ø"&Ø%)ØDHØ+/Ø5>Ø04Ø&/Ø48Ø8<Ø59Ø9=Ø+-ñ%*
ð ð*
ð !ð	*
ð
 ð*
ð 3ð*
ð  ð*
ð #ð*
ð "Bð*
ð )ð*
ð 3ð*
ð .ð*
ð $ð*
ð 2ð*
ð 6ð*
ð  3ð!*
ð" 7ð#*
ð$ )ð%*
ð& 
ô'*
ó ð*
ðX €Lóð" òó ð÷&!r-   r»   )8Ú
__future__r   r}   rÂ   Útypingr   r   r   r   r   r	   r
   r   Útyping_extensionsr   r   rK   Ú_typesr   r   r   r   r   Ú_utilsr   r   Ú_clientr   r   Ú_compatr   Ú_modelsr   Ú
_streamingr   r   Ú_exceptionsr   Ú_base_clientr   r   Úsetr?   rB   ÚAzureADTokenProviderÚAsyncAzureADTokenProviderÚClientÚAsyncClientr   r!   Újoinr€   r&   r6   rW   r»   rg   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L!�/ %§,¡,°°s±Ð";Ñ<¸fô L!ô^Q!� u×'8Ñ'8¸+ÀcÑ:JÐ'JÑKÈ[õ Q!r-   