Skip to main content
Open on GitHub

Elasticsearch

Elasticsearch 是一个分布式、RESTful 的搜索和分析引擎。 它提供了一个分布式的、可支持多租户的全文搜索引擎,附带一个 HTTP Web 界面和无模式的 JSON 文档。

安装和设置

设置 Elasticsearch

有两种方法可以开始使用 Elasticsearch:

通过 Docker 在本地机器上安装 Elasticsearch

示例:运行一个禁用安全措施的单节点 Elasticsearch 实例。 不建议在生产环境中使用此方法。

    docker run -p 9200:9200 -e "discovery.type=single-node" -e "xpack.security.enabled=false" -e "xpack.security.http.ssl.enabled=false" docker.elastic.co/elasticsearch/elasticsearch:8.9.0

在 Elastic Cloud 上部署 Elasticsearch

Elastic Cloud 是一个托管的 Elasticsearch 服务。注册以获得 免费试用

安装客户端

pip install elasticsearch
pip install langchain-elasticsearch

嵌入模型

查看 使用示例

from langchain_elasticsearch import ElasticsearchEmbeddings

向量存储

查看 使用示例

from langchain_elasticsearch import ElasticsearchStore
API Reference:ElasticsearchStore

第三方集成

EcloudESVectorStore

from langchain_community.vectorstores.ecloud_vector_search import EcloudESVectorStore
API Reference:EcloudESVectorStore

##检索器

ElasticsearchRetriever

ElasticsearchRetriever 通过 Query DSL 提供对所有 Elasticsearch 功能的灵活访问。

查看 使用示例

from langchain_elasticsearch import ElasticsearchRetriever

BM25

查看 使用示例

from langchain_community.retrievers import ElasticSearchBM25Retriever

记忆

查看 使用示例

from langchain_elasticsearch import ElasticsearchChatMessageHistory

LLM 缓存

查看 使用示例

from langchain_elasticsearch import ElasticsearchCache
API Reference:ElasticsearchCache

字节存储

查看 使用示例

from langchain_elasticsearch import ElasticsearchEmbeddingsCache

这是一个用于与 Elasticsearch 数据库交互的链。

from langchain.chains.elasticsearch_database import ElasticsearchDatabaseChain