
    ^h                         S SK JrJr  S SKJrJrJrJrJrJ	r	  S SK
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)
    )ABCabstractmethod)TYPE_CHECKINGAnyDictListOptionalUnionN)OptionalRerankParamsRerankResponse   )BaseLLMException)Loggingc                      \ rS rSr\ S"S\S\S\\   S\4S jj5       r\S\S\	S\S\4S	 j5       r
\S0 0 0 4S\S
\R                  S\S\S\\   S\S\S\S\4S jj5       r\S\\   S\S\4S j5       r\S\S\4S j5       r\     S#S\\   S\S\S\S\\\\\\4   4      S\\   S\\   S\\\      S\\   S\\   S\	4S jj5       r\S\S\S\\\R4                  4   S\4S  j5       rS!rg)$BaseRerankConfig   Nheadersmodelapi_keyreturnc                     g N )selfr   r   r   s       e/home/james-whalen/.local/lib/python3.13/site-packages/litellm/llms/base_llm/rerank/transformation.pyvalidate_environment%BaseRerankConfig.validate_environment   s     	    optional_rerank_paramsc                     0 $ r   r   )r   r   r   r   s       r   transform_rerank_request)BaseRerankConfig.transform_rerank_request   s	     	r   raw_responsemodel_responselogging_objrequest_dataoptional_paramslitellm_paramsc	                     U$ r   r   )	r   r   r#   r$   r%   r   r&   r'   r(   s	            r   transform_rerank_response*BaseRerankConfig.transform_rerank_response%   s
     r   api_basec                     U=(       d    S$ )z[
OPTIONAL

Get the complete url for the request

Some providers need `model` in `api_base`
 r   )r   r,   r   s      r   get_complete_url!BaseRerankConfig.get_complete_url3   s     ~2r   c                     g r   r   )r   r   s     r   "get_supported_cohere_rerank_params3BaseRerankConfig.get_supported_cohere_rerank_params>   s    r   non_default_paramsdrop_paramsquery	documentscustom_llm_providertop_nrank_fieldsreturn_documentsmax_chunks_per_docc                     g r   r   )r   r4   r   r5   r6   r7   r8   r9   r:   r;   r<   s              r   map_cohere_rerank_params)BaseRerankConfig.map_cohere_rerank_paramsB   s     	r   error_messagestatus_codec                     g r   r   )r   r@   rA   r   s       r   get_error_class BaseRerankConfig.get_error_classR   s     	r   r   r   )NNNTN)__name__
__module____qualname____firstlineno__r   dictstrr	   r   r   r!   httpxResponser   LiteLLMLoggingObjr*   r/   listr2   boolr   r
   r   r   intr>   Headersr   rC   __static_attributes__r   r   r   r   r      sU   
 "&	  #	
 
   !5 	
 
   "& "! nn '	
 ' #    
  # s s        .2#+/+/,0$TN  	
  c4S>123 &c] } d3i( #4. %SM 
   /2=B4CV=W	 r   r   )abcr   r   typingr   r   r   r   r	   r
   rK   litellm.types.rerankr   r   chat.transformationr   *litellm.litellm_core_utils.litellm_loggingr   _LiteLLMLoggingObjrM   r   r   r   r   <module>rY      s7    # B B  E 2X*Ds Dr   