
    ^h                         S SK r S SKJrJrJr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Jr  SSKJr  \(       a	  S S	KJr  \rO\r " S
 S\5      rg)    N)TYPE_CHECKINGAnyListOptionalUnion)BaseLLMException)OpenAIGPTConfig)AllMessageValues)ModelResponseUsage   OobaboogaError)Loggingc                       \ rS rSr SS\S\S\\\\	R                  4      S\4S jjr  SS\S	\	R                  S
\S\S\S\\   S\S\S\S\\   S\\   S\4S jjr SS\S\S\\   S\S\\   S\4S jjrSrg)OobaboogaConfig   Nerror_messagestatus_codeheadersreturnc                     [        X!US9$ )N)r   messager   r   )selfr   r   r   s       d/home/james-whalen/.local/lib/python3.13/site-packages/litellm/llms/oobabooga/chat/transformation.pyget_error_classOobaboogaConfig.get_error_class   s     #G
 	
    modelraw_responsemodel_responselogging_objrequest_datamessagesoptional_paramslitellm_paramsencodingapi_key	json_modec                 P   UR                  UU
UR                  SU0S9   UR                  5       nSU;   a  [	        US   UR
                  S9e US   S   S   S   UR                  S   R                  l        [        [        R                  " 5       5      Ul        Xl        [        US	   S
   US	   S   US	   S   S9n[        US	U5        U$ ! [         a    [	        UR                  UR
                  S9ef = f! [         a"  n[	        [        U5      UR
                  S9eS nAff = f)Ncomplete_input_dict)inputr(   original_responseadditional_args)r   r   errorchoicesr   r   contentusageprompt_tokenscompletion_tokenstotal_tokens)r3   r4   r5   )	post_calltextjson	Exceptionr   r   r0   r   r1   strinttimecreatedr   r   setattr)r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   completion_responseer2   s                  r   transform_response"OobaboogaConfig.transform_response    s_    	*//2LA	 	 	
	"."3"3"5
 )) +G4(44 
<OPY<Z[\<]^g<hir<s&&q)119 "%TYY[!1$-g6G1':;NO,W5nE

 	/5  	 $))|7O7O 	  $F , 8 8 s#   C *C9 )C69
D%D  D%c                 &    SSS.nUb  SU 3US'   U$ )Nzapplication/json)acceptzcontent-typezToken Authorization )r   r   r   r$   r%   r(   s         r   validate_environment$OobaboogaConfig.validate_environmentU   s/     ).
 )/y'9GO$r   rF   )N)NN)__name__
__module____qualname____firstlineno__r:   r;   r   r   dicthttpxHeadersr   r   Responser   LoggingClassr   r
   r   boolrA   rG   __static_attributes__rF   r   r   r   r      s.   
 9=	

 
 %emm 345	

 

* "&$(33 nn3 &	3
 "3 3 '(3 3 3 3 #3 D>3 
3v "&  '(	
  # 
 r   r   )r<   typingr   r   r   r   r   rN   )litellm.llms.base_llm.chat.transformationr   +litellm.llms.openai.chat.gpt_transformationr	   litellm.types.llms.openair
   litellm.types.utilsr   r   common_utilsr   *litellm.litellm_core_utils.litellm_loggingr   LiteLLMLoggingObjrQ   r   rF   r   r   <module>r\      s>     < <  F G 6 4 )W$LLNo Nr   