
    ^h                         S r SSKJrJr  SSKrSSKJr  SSKJr  SSKJ	r	  SSK
Jr  SS	KJr  SS
KJr  SSKJr  \" 5       r\" 5       r\      SS\S\S\\   S\\   S\\   S\\   S\\   S\\   4S jj5       rg)z.Abstraction function for OpenAI's realtime API    )AnyOptionalN)get_llm_provider)get_secret_str)GenericLiteLLMParams   )Logging)AzureOpenAIRealtime)OpenAIRealtime)clientmodel	websocketapi_baseapi_keyapi_versionazure_ad_tokenr   timeoutc                    #    UR                  S5      n	UR                  SS5      n
UR                  SS5      nUR                  SS5      nUR                  S0 5      nUR                  SS5      n[        S0 UD6n[        U UUS9u  n nnnU	R                  U U0 U
UUUS0 S	.US
9  US:X  a  U=(       d5    UR                  =(       d"    [
        R                  =(       d    [        S5      nU=(       d9    [
        R                  =(       d"    [
        R                  =(       d    [        S5      n[        R                  U UUUSSSUU	S9	I Sh  vN   gUS:X  a  U=(       d,    UR                  =(       d    [
        R                  =(       d    SnU=(       d9    [
        R                  =(       d"    [
        R                  =(       d    [        S5      n[        R                  U UU	UUSUS9I Sh  vN   g[        SU  35      e N N7f)zH
Private function to handle the realtime API call.

For PROXY use only.
litellm_logging_objlitellm_call_idNproxy_server_request
model_infometadatauser)r   r   r   )r   r   r   r   preset_cache_keystream_response)r   r   optional_paramslitellm_paramscustom_llm_providerazureAZURE_API_BASEAZURE_API_KEYz2024-10-01-preview)	r   r   r   r   r   r   r   r   logging_objopenaizhttps://api.openai.com/OPENAI_API_KEY)r   r   r#   r   r   r   r   zUnsupported model:  )getr   r   update_environment_variablesr   litellmr   r   
openai_keyazure_realtimeasync_realtimeopenai_realtime
ValueError)r   r   r   r   r   r   r   r   kwargsr   r   r   r   r   r   r   _custom_llm_providerdynamic_api_keydynamic_api_bases                      S/home/james-whalen/.local/lib/python3.13/site-packages/litellm/realtime_api/main.py
_arealtimer4      s;    " +1**5J*K%+ZZ0A4%HO!::&<dCL$/Jzz*b)H::fd#D)3F3NEUFBE2B 44.$8$  $!
 1 5  w& 0&&00 ./	 	  //!!/ o.	 	 ++,+ , 

 
	
 
	
 
	) )&&)) )	 	  00!!0 ./	 	 ,,+ - 
 	
 	
 .ug677I
	
4	
s%   EG>G:BG>&G<'G><G>)NNNNNN)__doc__typingr   r   r)   r   litellm.secret_managers.mainr   litellm.types.routerr   "litellm_core_utils.litellm_loggingr	   LiteLLMLoggingllms.azure.realtime.handlerr
   llms.openai.realtime.handlerr   utilsr   wrapper_clientr+   r-   strfloatr4   r&       r3   <module>rB      s    4    $ 7 5 J = 9 ,$& "  #!!%$( #`8`8`8 sm`8 c]	`8
 #`8 SM`8 SM`8 e_`8 `8rA   