Meilisearch 是一个开源、闪电般快速且高度相关的搜索引擎。它具有出色的默认设置,可帮助开发人员构建流畅的搜索体验。 您可以自托管 Meilisearch 或在Meilisearch Cloud 上运行。Meilisearch v1.3 支持向量搜索。本页指导您如何将 Meilisearch 集成作为向量存储并使用它执行向量搜索。 您需要安装
langchain-community,使用 pip install -qU langchain-community 才能使用此集成。设置
启动 Meilisearch 实例
您需要一个正在运行的 Meilisearch 实例作为您的向量存储。您可以在本地运行 Meilisearch 或创建Meilisearch Cloud 帐户。 截至 Meilisearch v1.3,向量存储是一个实验性功能。启动 Meilisearch 实例后,您需要启用向量存储。对于自托管的 Meilisearch,请阅读关于启用实验性功能的文档。在 Meilisearch Cloud 上,通过项目设置页面启用向量存储。 您现在应该有一个已启用向量存储的运行中的 Meilisearch 实例。🎉凭据
为了与您的 Meilisearch 实例交互,Meilisearch SDK 需要一个主机(您的实例的 URL)和一个 API 密钥。 主机- 在本地,默认主机是
localhost:7700 - 在 Meilisearch Cloud 上,在您的项目设置页面中找到主机
- 一个
MASTER KEY— 它应该只用于创建您的 Meilisearch 实例 - 一个
ADMIN KEY— 仅在服务器端使用它来更新您的数据库及其设置 - 一个
SEARCH KEY— 一个可以安全地在前端应用程序中共享的密钥
安装依赖项
本指南使用Meilisearch Python SDK。您可以通过运行以下命令进行安装示例
有多种方法可以初始化 Meilisearch 向量存储:根据需要提供 Meilisearch 客户端或URL和API 密钥。在我们的示例中,凭据将从环境中加载。 您可以使用os 和 getpass 在 Notebook 环境中使环境变量可用。您可以将此技术用于以下所有示例。OpenAIEmbeddings,所以我们必须获取 OpenAI API 密钥。
添加文本和嵌入
此示例将文本添加到 Meilisearch 向量数据库,而无需初始化 Meilisearch 向量存储。添加文档和嵌入
在此示例中,我们将使用 LangChain TextSplitter 将文本拆分为多个文档。然后,我们将存储这些文档及其嵌入。通过创建 Meilisearch 向量存储添加文档
在此方法中,我们创建一个向量存储对象并向其中添加文档。带分数的相似度搜索
此特定方法允许您返回文档和查询与它们之间的距离分数。embedder_name 是用于语义搜索的嵌入器的名称,默认为“default”。
向量相似度搜索
embedder_name 是用于语义搜索的嵌入器的名称,默认为“default”。
附加资源
文档 开源存储库以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。