
    7|hD
                    ~    d Z ddlmZ ddlmZmZ ddlmZmZm	Z	 ddl
mZmZ ddlmZ ddlmZ dZd	Z G d
 de      Zy)zAnyscale embeddings wrapper.    )annotations)DictOptional)convert_to_secret_strget_from_dict_or_envpre_init)Field	SecretStr)OpenAIEmbeddings)is_openai_v1z%https://api.endpoints.anyscale.com/v1zthenlper/gte-largec                      e Zd ZU dZ ed      Zded<   	  ee      Zded<   	  ee	      Z
ded<   	 d	Zd
ed<   	 dZded<   	 edd       Zedd       Zedd       Zy)AnyscaleEmbeddingsz`Anyscale` Embeddings API.NdefaultzOptional[SecretStr]anyscale_api_keystrmodelanyscale_api_baseFbooltiktoken_enabledi  intembedding_ctx_lengthc                
    ddiS )Nr   ANYSCALE_API_KEY selfs    f/var/www/html/test/engine/venv/lib/python3.12/site-packages/langchain_community/embeddings/anyscale.py
lc_secretszAnyscaleEmbeddings.lc_secrets   s      2
 	
    c                   t        t        |dd            |d<   t        |ddt              |d<   	 ddl}t               r:|d   j                         |d   d	} |j                  di |j                  |d
<   |S |d   |d<   |d   j                         |d<   |j                  |d
<   |S # t        $ r t	        d      w xY w)z?Validate that api key and python package exists in environment.r   r   r   ANYSCALE_API_BASEr   r   NzTCould not import openai python package. Please install it with `pip install openai`.)api_keybase_urlclientopenai_api_baseopenai_api_keyr   )
r   r   DEFAULT_API_BASEopenaiImportErrorr   get_secret_valueOpenAI
embeddings	Embedding)clsvaluesr)   client_paramss       r   validate_environmentz'AnyscaleEmbeddings.validate_environment%   s    &; ""&
!" ';$	'
"#	 > ""45FFH"#67M  -v}}=}=HHF8
  )//B(CF$%'-.@'A'R'R'TF#$%//F8!  	? 	s   B( (B=c                     y)Nzanyscale-embeddingr   r   s    r   	_llm_typezAnyscaleEmbeddings._llm_typeJ   s    #r    )returnzDict[str, str])r0   dictr5   r6   )r5   r   )__name__
__module____qualname____doc__r	   r   __annotations__DEFAULT_MODELr   r(   r   r   r   propertyr   r   r2   r4   r   r    r   r   r      s    $,1$,?)?&}-E3-"+;<s<)"d"P ###8
 

 " "H $ $r    r   N)r:   
__future__r   typingr   r   langchain_core.utilsr   r   r   pydanticr	   r
   %langchain_community.embeddings.openair    langchain_community.utils.openair   r(   r<   r   r   r    r   <module>rD      s5    " " ! V V % B 9: $;$) ;$r    