o
    ưi                     @   sR   d Z ddlZddlmZ ddlmZ ddlmZ ddlm	Z	 G d	d
 d
ee	Z
dS )z)
Calling logic for Databricks embeddings
    N)Optional)EmbeddingResponse   )OpenAILikeEmbeddingHandler   )DatabricksBasec                       sf   e Zd Z					ddedededee dee dedee d	ee	 d
ee def fddZ
  ZS )DatabricksEmbeddingHandlerNmodelinputtimeoutapi_keyapi_baseoptional_paramsmodel_responsecustom_endpointheadersreturnc                    sj   | dd p| dd ptdptd}| j||d|||d\}}t j|||||||||	|
d|dS )	N
user_agentZdatabricks_user_agentZLITELLM_USER_AGENTZDATABRICKS_USER_AGENTZ
embeddings)r   r   Zendpoint_typer   r   custom_user_agentT)r	   r
   r   logging_objr   r   r   r   client
aembeddingr   r   )poposgetenvZdatabricks_validate_environmentsuper	embedding)selfr	   r
   r   r   r   r   r   r   r   r   r   r   r   	__class__ \/home/app/Keep/.python/lib/python3.10/site-packages/litellm/llms/databricks/embed/handler.pyr      s:   

z$DatabricksEmbeddingHandler.embedding)NNNNN)__name__
__module____qualname__strlistfloatr   dictr   boolr   __classcell__r    r    r   r!   r      s6    
	r   )__doc__r   typingr   Zlitellm.utilsr   Zopenai_like.embedding.handlerr   Zcommon_utilsr   r   r    r    r    r!   <module>   s    