Marqo
本页介绍了如何在 LangChain 中使用 Marqo 生态。
什么是 Marqo?
Marqo 是一个张量搜索引擎,它使用存储在内存中 HNSW 索引中的嵌入来实现最前沿的搜索速度。Marqo 可以通过水平索引分片扩展到数亿个文档索引,并允许异步和非阻塞数据上传和搜索。Marqo 使用来自 PyTorch、Huggingface、OpenAI 等的最新机器学习模型。您可以从预配置的模型开始,也可以自带模型。内置的 ONNX 支持和转换允许在 CPU 和 GPU 上实现更快的推理和更高的吞吐量。
因为 Marqo 包含自己的推理,所以你的文档可以混合文本和图像,你可以将 Marqo 索引和来自其他系统的数据引入 langchain 生态系统,而不必担心你的嵌入是否兼容。
Marqo 的部署非常灵活,您可以从我们的 docker 镜像开始,也可以联系我们了解我们的托管云产品!
要使用我们的 docker 镜像在本地运行 Marqo,请参阅我们的 入门.
安装和设置
- 安装 Python SDK
pip install marqo
包装
矢量存储
Marqo 索引周围有一个包装器,允许您在 vectorstore 框架中使用它们。Marqo 允许您从一系列模型中进行选择以生成嵌入,并公开一些预处理配置。
Marqo vectorstore 还可以与现有的多模态索引一起使用,其中您的文档混合了图像和文本,有关更多信息,请参阅我们的文档。请注意,使用现有的多模态索引实例化 Marqo vectorstore 将禁用通过 langchain vectorstore 向其添加任何新文档的能力add_texts方法。
要导入此 vectorstore:
from langchain_community.vectorstores import Marqo
API 参考:Marqo
有关 Marqo 包装器及其一些独特功能的更详细演练,请参阅此笔记本