
    ^h                         S SK r S SKJrJr  S SKJrJr  S SKJr  S SK	r	S SK
Jr  S SKJr  S SKJrJr  SS	KJrJrJr   " S
 S\5      rg)    N)AnyOptional)AsyncAzureOpenAIAzureOpenAI)	BaseModel)get_audio_file_name)	FileTypes)TranscriptionResponse convert_to_model_response_object   )AzureChatCompletionget_azure_ad_token_from_oidc!select_azure_base_url_or_endpointc                       \ rS rSr      SS\S\S\S\S\S\	S	\
S
\\   S\\   S\\   S\\   S\S\4S jjr    SS\S\S\S\	S\S\S
\\   S\\   4S jjrSrg)AzureAudioTranscription   Nmodel
audio_fileoptional_paramslogging_objmodel_responsetimeoutmax_retriesapi_keyapi_baseapi_versionazure_ad_tokenatranscriptionreturnc                    XS.UEnU
U	UUS.n[        US9nUb  XS'   O(Ub%  UR                  S5      (       a  [        U5      nXS'   Ub  XS'   USL a  U R                  UUUUUU	UUUUS	9
$ Uc  [	        SS
[
        R                  0UD6nOUnUR                  S[        R                  " 5        3UR                  SSUR                   30UR                  R                  SUS.S9  UR                  R                  R                  " S0 UDSU0D6n[!        U["        5      (       a  UR%                  5       nO['        US9R%                  5       nUR)                  [+        U5      USU0US9  SSS.n[-        UUUSS9nU$ )N)r   file)r   azure_endpointazure_deploymentr   )azure_client_paramsr   zoidc/r   r   T)
r   datar   r   r   r   clientr$   r   r   http_clientaudio_file_AuthorizationBearer headersr   r   complete_input_dictinputr   additional_argsr   textr-   r/   r   r0   original_response	whisper-1azurer   custom_llm_provideraudio_transcription)response_objectmodel_response_objecthidden_paramsresponse_type )r   
startswithr   async_audio_transcriptionsr   litellmclient_sessionpre_calluuiduuid4r   	_base_url_uri_referenceaudiotranscriptionscreate
isinstancer   
model_dumpr
   	post_callr   r   )selfr   r   r   r   r   r   r   r   r   r   r&   r   r   r%   r$   azure_clientresponsestringified_responser<   final_responses                        a/home/james-whalen/.local/lib/python3.13/site-packages/litellm/llms/azure/audio_transcriptions.pyaudio_transcriptions,AzureAudioTranscription.audio_transcriptions   s     FoF '& %	
 @ 3
 -4	*'((11!=n!M4B 01"1<.T!22%-!$7'' 3   >&a73I3IaM`aL!L 	

~. ((+w|7K7K6L-MN(22AA"&'+	 	 		
  %%44;; 

#
 h	**#+#6#6#8 #8h#G#R#R#T  	%j12D92	 	 	
 #.gN0Pau  N\  ly  I^  1_    r%   r$   c           	      Z  #    S n U	c  [        S0 UDS[        R                  0D6nOU	nUR                  S[        R
                  " 5        3UR                  SSUR                   30UR                  R                  SUS.S9  UR                  R                  R                  R                  " S0 UDSU0D6I S h  vN n[        UR                  5      nUR                  5       n[!        U["        5      (       a  UR%                  5       nO['        US	9R%                  5       nUR)                  [+        U5      USSUR                   30UR                  R                  SUS.US
9  SSS.n[-        UUUUSS9nU$  N! [.         a%  nUR)                  [0        U[3        U5      S9  UeS nAff = f7f)Nr'   r(   r)   r*   Tr+   r.   r   r1   r3   r5   r6   r7   r9   )_response_headersr:   r;   r<   r=   )r/   r   r4   r>   )r   rA   aclient_sessionrC   rD   rE   r   rF   rG   rH   rI   with_raw_responserJ   dictr,   parserK   r   rL   r
   rM   r   r   	Exceptionr/   str)rN   r   r%   r   r   r$   r   r   r   r&   r   rP   async_azure_clientraw_responser,   rQ   r<   es                     rS   r@   2AzureAudioTranscription.async_audio_transcriptionsm   s     C	~%5 &)& ' 7 7&"
 &,"   #DJJL>2*22 (73E3M3M2N)O  !3 < < K K&*+/! !  )..==OOVV $+   <//0G#))+H(I..'/':':'<$'<('K'V'V'X$ !!)*5 (73E3M3M2N)O  !3 < < K K&*+/! #7 "  '2'RM7") 4&4+3H OGH  	!!"%a& " 
 G	s<   F+B3E9 9E7:B<E9 6F+7E9 9
F( F##F((F+r>   )NNNNNF)NNNN)__name__
__module____qualname____firstlineno__r^   r	   r[   r   r
   floatintr   boolrT   r@   __static_attributes__r>   rV   rS   r   r      s2    "&"&%)(,$WW W 	W
 W .W W W #W 3-W c]W !W W 
WB "&"&QQ Q .	Q
 Q "Q Q #Q 3-Q QrV   r   )rD   typingr   r   openair   r   pydanticr   rA   ,litellm.litellm_core_utils.audio_utils.utilsr   litellm.types.utilsr	   litellm.utilsr
   r   r6   r   r   r   r   r>   rV   rS   <module>rq      s6       0   L ) Q k1 krV   