
    ^h                         S SK r S SKrS SKJr  S SKrS SKJrJr   " S S\5      r	S r
  SS\S\S	\S
\S\4
S jjrS rg)    N)Callable)ModelResponseUsagec                   (   ^  \ rS rSrU 4S jrSrU =r$ )BasetenError	   c                 P   > Xl         X l        [        TU ]  U R                  5        g N)status_codemessagesuper__init__)selfr   r   	__class__s      N/home/james-whalen/.local/lib/python3.13/site-packages/litellm/llms/baseten.pyr   BasetenError.__init__
   s"    &LL	
    r   r   )__name__
__module____qualname____firstlineno__r   __static_attributes____classcell__)r   s   @r   r   r   	   s    
 
r   r   c                 .    SSS.nU (       a  SU  3US'   U$ )Nzapplication/json)acceptzcontent-typezApi-Key Authorization )api_keyheaderss     r   validate_environmentr!      s*    $*G %-gY#7 Nr   modelmessagesmodel_responseprint_verboseoptional_paramsc
                 V   [        U5      n
SnSnU n SnU H.  nSU;   a  US   S:X  a
  XS    -  nM  XS    -  nM&  XS    -  nM0     UUUSU;   a
  US   SL a  SOS	S
.nUR                  UUSU0S9  [        R                  R	                  X-   U-   U
[
        R                  " U5      SU;   a
  US   SL a  SOS	S9nSUR                  S   ;   d  SU;   a  US   SL a  UR                  5       $ UR                  UUUR                  SU0S9  U" SUR                   35        UR                  5       nSU;   a  [        US   UR                  S9eSU;   a  [        US   [        5      (       aM  SUS   ;   aD  [        US   S   [        5      (       a)  US   S   S   UR                   S   R"                  l        GOn[        US   [&        5      (       a!  US   UR                   S   R"                  l        GO3SU;   a:  [        US   [&        5      (       a"  US   UR                   S   R"                  l        O[        U[        5      (       a  [)        U5      S:  a  SU;  a!  [        SUR                   3UR                  S9eUS   S   UR                   S   R"                  l        SUS   ;   aY  SUS   S   ;   aM  US   S   S   UR                   S   l        SnUS   S   S    H  nUUS   -  nM     UUR                   S   l        O![        SUR                   3UR                  S9e[)        UR/                  U5      5      n[)        UR/                  US   S   S   S   5      5      n[1        [2        R2                  " 5       5      Ul        Xl        [9        UUUU-   S 9n[;        US!U5        U$ )"Nzhttps://app.baseten.co/models/z/predict roleusercontentstreamTF)inputsprompt
parametersr,   complete_input_dict)inputr   additional_args)r    datar,   ztext/event-streamzContent-Type)r1   r   original_responser2   zraw model_response: errorr   model_outputr3   r   
completiongenerated_textz-Unable to parse response. Original response: detailstokensfinish_reasonlogprobchoicesr   )prompt_tokenscompletion_tokenstotal_tokensusage)r!   pre_calllitellmmodule_level_clientpostjsondumpsr    
iter_lines	post_calltextr   r   
isinstancedictlistr=   r   r+   strlenr;   logprobsencodeinttimecreatedr"   r   setattr)r"   r#   r$   r%   encodingr   logging_objr&   litellm_params	logger_fnr    completion_url_fragment_1completion_url_fragment_2r.   r   r3   responsecompletion_responsesum_logprobtokenr>   r?   rA   s                          r   r7   r7      st    #7+G @ *EFWv&(Y/01Y/01+,-F  % ?*x/HD/P 	D .5   **//!),EEZZ ?*x/HD/P  0 	H h..~>>O#(AT(I""$$ 	&mm2D9	 	 	
 	,X]]O<=&mmo))+G4$00 
 !442>BDII"5n"EE"#6~#Fv#NPTUU@S&A A
 AN**1-55=   3N CSII@S&AN**1-55= !44#L13: : =P =&&q)119 /663?R;SVW;W#+>>&"OPXP]P] _$,$8$8  =PPQ<R$=&&q)119
 !4Q!77 $7$:9$EE>QRS>T!?%?'N**1-; #$K!4Q!7	!B8!L#uY'77 "M9DN**1-6"KHMM?[ ( 4 4  HOOF34OON95a8CINO
 "%TYY[!1$'/&)::
 	/r   c                      g r
   r   r   r   r   	embeddingra      s    r   )NN)rF   rS   typingr   rC   litellm.types.utilsr   r   	Exceptionr   r!   rN   rM   rL   r7   ra   r   r   r   <module>re      sl        4
9 
& KKK "K 	K K\	r   