a
    bgC                  T   @   s  d Z ddlZddlZddlmZmZ erddlmZmZ ddl	m
Z
 ddlmZ ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z  ddl!m"Z" ddl#m$Z$ ddl%m&Z& ddl'm(Z( ddl)m*Z* ddl+m,Z, ddl-m.Z.m/Z/ ddl0m1Z1 ddl2m3Z3 ddl4m5Z5 ddl6m7Z7 ddl8m9Z9 ddl:m;Z;m<Z<m=Z=m>Z> ddl?m@Z@ ddlAmBZB dd lCmDZD dd!lEmFZF dd"lGmHZH dd#lImJZJ dd$lKmLZL dd%lMmNZN dd&lOmPZP dd'lQmRZR dd(lSmTZT dd)lUmVZV dd*lWmXZX dd+lYmZZZ dd,l[m\Z\ dd-l]m^Z^m_Z_ dd.l`maZa dd/lbmcZc dd0ldmeZe dd1lfmgZg dd2lhmiZi dd3ljmkZk dd4llmmZm dd5lnmoZo dd6lpmqZq dd7lrmsZs dd8ltmuZu dd9lvmwZwmxZx dd:lymzZz dd;l{m|Z| dd<l}m~Z~ dd=lmZ dd>lmZ dd?lmZ dd@lmZ ddAlmZmZ ddBlmZ ddClmZ ddDlmZ ddElmZ ddFlmZ ddGlmZ ddHlmZ ddIlmZ ddJlmZ ddKlmZ ddLlmZ ddMlmZ ddNlmZ g dOZdPdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbd^dcdddedfdgdhdhdidhdhdjdkdldmdndodpdqdrdsdtdudvdwdwdxdydzd{d|d}d~dddddddddddddddddddddddddddddddSZeedddZeeZG dd dZdS )a  **Embedding models**  are wrappers around embedding models
from different APIs and services.

**Embedding models** can be LLMs or not.

**Class hierarchy:**

.. code-block::

    Embeddings --> <name>Embeddings  # Examples: OpenAIEmbeddings, HuggingFaceEmbeddings
    N)TYPE_CHECKINGAny)%AlephAlphaAsymmetricSemanticEmbedding$AlephAlphaSymmetricSemanticEmbedding)AnyscaleEmbeddings)AscendEmbeddings)AwaEmbeddings)AzureOpenAIEmbeddings)BaichuanTextEmbeddings)QianfanEmbeddingsEndpoint)BedrockEmbeddings)BookendEmbeddings)ClarifaiEmbeddings)ClovaEmbeddings)CohereEmbeddings)DashScopeEmbeddings)DatabricksEmbeddings)DeepInfraEmbeddings)EdenAiEmbeddings)ElasticsearchEmbeddings)EmbaasEmbeddings)ErnieEmbeddings)DeterministicFakeEmbeddingFakeEmbeddings)FastEmbedEmbeddings)GigaChatEmbeddings)GooglePalmEmbeddings)GPT4AllEmbeddings)GradientEmbeddings)HuggingFaceBgeEmbeddingsHuggingFaceEmbeddings!HuggingFaceInferenceAPIEmbeddingsHuggingFaceInstructEmbeddings)HuggingFaceHubEmbeddings)HunyuanEmbeddings)InfinityEmbeddings)InfinityEmbeddingsLocal)IpexLLMBgeEmbeddings)QuantizedBgeEmbeddings)JavelinAIGatewayEmbeddings)JinaEmbeddings)JohnSnowLabsEmbeddings)LaserEmbeddings)LlamaCppEmbeddings)LlamafileEmbeddings)LLMRailsEmbeddings)LocalAIEmbeddings)MiniMaxEmbeddings)MlflowCohereEmbeddingsMlflowEmbeddings)MlflowAIGatewayEmbeddings)Model2vecEmbeddings)ModelScopeEmbeddings)MosaicMLInstructorEmbeddings)ClovaXEmbeddings)NeMoEmbeddings)NLPCloudEmbeddings)OCIGenAIEmbeddings)OctoAIEmbeddings)OllamaEmbeddings)OpenAIEmbeddings)OpenVINOBgeEmbeddingsOpenVINOEmbeddings)QuantizedBiEncoderEmbeddings)OracleEmbeddings)OVHCloudEmbeddings)PremAIEmbeddings)SagemakerEndpointEmbeddings)SambaStudioEmbeddings)SelfHostedEmbeddings)SelfHostedHuggingFaceEmbeddings'SelfHostedHuggingFaceInstructEmbeddings)SentenceTransformerEmbeddings)SolarEmbeddings)SpacyEmbeddings)SparkLLMTextEmbeddings)TensorflowHubEmbeddings)TextEmbedEmbeddings)TitanTakeoffEmbed)VertexAIEmbeddings)VolcanoEmbeddings)VoyageEmbeddings)XinferenceEmbeddings)YandexGPTEmbeddings)ZhipuAIEmbeddings)Sr   r   r   r   r   r	   r
   r   r   r   r   r8   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r#   r!   r"   r%   r&   r'   r)   r*   r+   r/   r,   r-   r.   r0   r1   r4   r2   r3   r5   r6   r7   r:   r9   r;   r<   r=   r>   r?   r@   rB   rC   rD   r   r(   rA   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   r$   z*langchain_community.embeddings.aleph_alphaz'langchain_community.embeddings.anyscalez"langchain_community.embeddings.awaz+langchain_community.embeddings.azure_openaiz'langchain_community.embeddings.baichuanz&langchain_community.embeddings.bedrockz&langchain_community.embeddings.bookendz'langchain_community.embeddings.clarifaiz$langchain_community.embeddings.clovaz$langchain_community.embeddings.naverz%langchain_community.embeddings.coherez(langchain_community.embeddings.dashscopez)langchain_community.embeddings.databricksz(langchain_community.embeddings.deepinfraz#langchain_community.embeddings.fakez%langchain_community.embeddings.edenaiz,langchain_community.embeddings.elasticsearchz%langchain_community.embeddings.embaasz$langchain_community.embeddings.erniez(langchain_community.embeddings.fastembedz&langchain_community.embeddings.gpt4allz*langchain_community.embeddings.google_palmz*langchain_community.embeddings.gradient_aiz'langchain_community.embeddings.gigachatz*langchain_community.embeddings.huggingfacez.langchain_community.embeddings.huggingface_hubz'langchain_community.embeddings.infinityz-langchain_community.embeddings.infinity_localz'langchain_community.embeddings.ipex_llmz1langchain_community.embeddings.javelin_ai_gatewayz#langchain_community.embeddings.jinaz+langchain_community.embeddings.johnsnowlabsz(langchain_community.embeddings.llm_railsz$langchain_community.embeddings.laserz'langchain_community.embeddings.llamacppz(langchain_community.embeddings.llamafilez&langchain_community.embeddings.localaiz&langchain_community.embeddings.minimaxz-langchain_community.embeddings.mlflow_gatewayz%langchain_community.embeddings.mlflowz(langchain_community.embeddings.model2vecz-langchain_community.embeddings.modelscope_hubz'langchain_community.embeddings.mosaicmlz'langchain_community.embeddings.nlpcloudz#langchain_community.embeddings.nemoz0langchain_community.embeddings.oci_generative_aiz0langchain_community.embeddings.octoai_embeddingsz%langchain_community.embeddings.ollamaz%langchain_community.embeddings.openaiz'langchain_community.embeddings.openvinoz5langchain_community.embeddings.baidu_qianfan_endpointz$langchain_community.embeddings.itrexz,langchain_community.embeddings.optimum_intelz'langchain_community.embeddings.oracleaiz'langchain_community.embeddings.ovhcloudz1langchain_community.embeddings.sagemaker_endpointz(langchain_community.embeddings.sambanovaz*langchain_community.embeddings.self_hostedz7langchain_community.embeddings.self_hosted_hugging_facez3langchain_community.embeddings.sentence_transformerz$langchain_community.embeddings.solarz/langchain_community.embeddings.spacy_embeddingsz'langchain_community.embeddings.sparkllmz-langchain_community.embeddings.tensorflow_hubz'langchain_community.embeddings.vertexaiz)langchain_community.embeddings.volcenginez'langchain_community.embeddings.voyageaiz)langchain_community.embeddings.xinferencez(langchain_community.embeddings.textembedz,langchain_community.embeddings.titan_takeoffz%langchain_community.embeddings.premaiz%langchain_community.embeddings.yandexz%langchain_community.embeddings.ascendz&langchain_community.embeddings.zhipuaiz&langchain_community.embeddings.hunyuan)Sr   r   r   r   r	   r
   r   r   r   r   r8   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r#   r!   r"   r%   r&   r'   r)   r*   r+   r/   r,   r-   r.   r0   r1   r4   r2   r3   r5   r6   r7   r:   r9   r;   r<   r=   r>   r@   r?   r   r(   rA   rB   rC   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rQ   rR   rS   rT   rO   rP   rD   rU   r   rV   r$   )namereturnc                 C   s8   | t v r tt |  }t|| S tdt d|  d S )Nzmodule z has no attribute )_module_lookup	importlibimport_modulegetattrAttributeError__name__)rW   module r`   u/var/www/html/cobodadashboardai.evdpl.com/venv/lib/python3.9/site-packages/langchain_community/embeddings/__init__.py__getattr__  s    
rb   c                   @   s2   e Zd ZeedddZeeeedddZdS )HypotheticalDocumentEmbedder)argskwargsc                 O   s$   t d ddlm} ||i |S NzhUsing a deprecated class. Please use `from langchain.chains import HypotheticalDocumentEmbedder` insteadr   )rc   )loggerwarninglangchain.chains.hyde.baserc   )selfrd   re   Hr`   r`   ra   __init__  s
    z%HypotheticalDocumentEmbedder.__init__)rd   re   rX   c                 O   s&   t d ddlm} |j|i |S rf   )rg   rh   ri   rc   from_llm)clsrd   re   rk   r`   r`   ra   rm     s
    z%HypotheticalDocumentEmbedder.from_llmN)r^   
__module____qualname__r   rl   classmethodrm   r`   r`   r`   ra   rc     s   	rc   )__doc__rZ   loggingtypingr   r   Z*langchain_community.embeddings.aleph_alphar   r   Z'langchain_community.embeddings.anyscaler   Z%langchain_community.embeddings.ascendr   Z"langchain_community.embeddings.awar   Z+langchain_community.embeddings.azure_openair	   Z'langchain_community.embeddings.baichuanr
   Z5langchain_community.embeddings.baidu_qianfan_endpointr   Z&langchain_community.embeddings.bedrockr   Z&langchain_community.embeddings.bookendr   Z'langchain_community.embeddings.clarifair   Z$langchain_community.embeddings.clovar   Z%langchain_community.embeddings.coherer   Z(langchain_community.embeddings.dashscoper   Z)langchain_community.embeddings.databricksr   Z(langchain_community.embeddings.deepinfrar   Z%langchain_community.embeddings.edenair   Z,langchain_community.embeddings.elasticsearchr   Z%langchain_community.embeddings.embaasr   Z$langchain_community.embeddings.ernier   Z#langchain_community.embeddings.faker   r   Z(langchain_community.embeddings.fastembedr   Z'langchain_community.embeddings.gigachatr   Z*langchain_community.embeddings.google_palmr   Z&langchain_community.embeddings.gpt4allr   Z*langchain_community.embeddings.gradient_air   Z*langchain_community.embeddings.huggingfacer   r    r!   r"   Z.langchain_community.embeddings.huggingface_hubr#   Z&langchain_community.embeddings.hunyuanr$   Z'langchain_community.embeddings.infinityr%   Z-langchain_community.embeddings.infinity_localr&   Z'langchain_community.embeddings.ipex_llmr'   Z$langchain_community.embeddings.itrexr(   Z1langchain_community.embeddings.javelin_ai_gatewayr)   Z#langchain_community.embeddings.jinar*   Z+langchain_community.embeddings.johnsnowlabsr+   Z$langchain_community.embeddings.laserr,   Z'langchain_community.embeddings.llamacppr-   Z(langchain_community.embeddings.llamafiler.   Z(langchain_community.embeddings.llm_railsr/   Z&langchain_community.embeddings.localair0   Z&langchain_community.embeddings.minimaxr1   Z%langchain_community.embeddings.mlflowr2   r3   Z-langchain_community.embeddings.mlflow_gatewayr4   Z(langchain_community.embeddings.model2vecr5   Z-langchain_community.embeddings.modelscope_hubr6   Z'langchain_community.embeddings.mosaicmlr7   Z$langchain_community.embeddings.naverr8   Z#langchain_community.embeddings.nemor9   Z'langchain_community.embeddings.nlpcloudr:   Z0langchain_community.embeddings.oci_generative_air;   Z0langchain_community.embeddings.octoai_embeddingsr<   Z%langchain_community.embeddings.ollamar=   Z%langchain_community.embeddings.openair>   Z'langchain_community.embeddings.openvinor?   r@   Z,langchain_community.embeddings.optimum_intelrA   Z'langchain_community.embeddings.oracleairB   Z'langchain_community.embeddings.ovhcloudrC   Z%langchain_community.embeddings.premairD   Z1langchain_community.embeddings.sagemaker_endpointrE   Z(langchain_community.embeddings.sambanovarF   Z*langchain_community.embeddings.self_hostedrG   Z7langchain_community.embeddings.self_hosted_hugging_facerH   rI   Z3langchain_community.embeddings.sentence_transformerrJ   Z$langchain_community.embeddings.solarrK   Z/langchain_community.embeddings.spacy_embeddingsrL   Z'langchain_community.embeddings.sparkllmrM   Z-langchain_community.embeddings.tensorflow_hubrN   Z(langchain_community.embeddings.textembedrO   Z,langchain_community.embeddings.titan_takeoffrP   Z'langchain_community.embeddings.vertexairQ   Z)langchain_community.embeddings.volcenginerR   Z'langchain_community.embeddings.voyageairS   Z)langchain_community.embeddings.xinferencerT   Z%langchain_community.embeddings.yandexrU   Z&langchain_community.embeddings.zhipuairV   __all__rY   strrb   	getLoggerr^   rg   rc   r`   r`   r`   ra   <module>   sN  WW
