Skip to main content
本页介绍如何在 LangChain 中使用 Marqo 生态系统。

什么是 Marqo?

Marqo 是一款张量搜索引擎,使用存储在内存 HNSW 索引中的嵌入来实现前沿的搜索速度。Marqo 可以通过水平索引分片扩展到数亿文档,并支持异步非阻塞的数据上传和搜索。Marqo 使用来自 PyTorch、Huggingface、OpenAI 等的最新机器学习模型。您可以从预配置模型开始,也可以自带模型。内置的 ONNX 支持和转换使得在 CPU 和 GPU 上的推理更快、吞吐量更高。 由于 Marqo 包含自己的推理能力,您的文档可以混合包含文本和图像,您可以将包含来自其他系统数据的 Marqo 索引引入 LangChain 生态系统,而无需担心嵌入的兼容性问题。 Marqo 的部署非常灵活,您可以使用我们的 Docker 镜像自行搭建,或联系我们了解托管云服务! 要使用 Docker 镜像在本地运行 Marqo,请参阅我们的入门指南。

安装与设置

  • 使用 pip install marqo 安装 Python SDK

封装器

向量存储

Marqo 索引有一个封装器,可将其用于向量存储框架中。Marqo 允许您从多种模型中选择来生成嵌入,并提供一些预处理配置。 Marqo 向量存储还可以与现有的多模态索引配合使用,其中文档混合包含图像和文本,更多信息请参阅我们的文档。注意,使用现有的多模态索引实例化 Marqo 向量存储将禁用通过 LangChain 向量存储 add_texts 方法添加新文档的能力。 导入该向量存储:
from langchain_community.vectorstores import Marqo
更详细的 Marqo 封装器及其独特功能演练,请参阅此 notebook