Marqo
本页面介绍了如何在 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
API 参考:Marqo
有关 Marqo 封装器及其某些独特功能的更详细演练,请参阅此 Notebook