Qdrant:在 Langchain 里的使用

写在前面

最近在学习使用 Langchain 开发一个 AI Agent,其中使用了 Qdrant 向量数据库来作为 AI Agent 的知识库,本篇主要是写关于 Qdrant 在 Langchain 里的一些基本操作,以及遇到的一些问题。

内容

前置准备

首先我们用 docker 的形式来安装,参照官方的 docker 教程即可:

# 拉取镜像
docker pull qdrant/qdrant
# 运行容器,并挂载到当前目录下的 qdrant_storage 文件夹
docker run -p 6333:6333 -p 6334:6334 \
    -v $(pwd)/qdrant_storage:/qdrant/storage:z \
    qdrant/qdrant

# 想要在 Langchain 里使用 Qdrant,还需要进行以下安装
pip install langchain-qdrant

Qdrant 提供了三种访问方式:

  • REST API: localhost:6333
  • Web UI: localhost:6333/dashboard
  • GRPC API: localhost:6334

初始化

QdrantClient 里面有几个跟地址有关的参数:

  • url
  • host
  • path
  • location

它们只能选择一个填写,不能有多于1个有值。它们被分为 Qdrant 的两种模式:本地模式远端模式

本地模式

本地模式也就是不需要 Qdrant 服务端的形式存在,它有内存形式磁盘形式

内存形式

内存形式就是在你的客户端运行期间,数据会存在,一旦客户端被销毁了,这些数据也就没了。

qdrant = QdrantVectorStore.from_documents(
    docs,
    embeddings,
    location=":memory:",  # 需要设置这个值
    collection_name="my_documents",
)

磁盘形式

磁盘形式则是你可以指定一个本地路径来存放数据。

qdrant = Qdrant.from_documents(
    docs,
    embeddings,
    path="/tmp/local_qdrant",
    collection_name="my_documents",
)

远端模式

如果我们在远端部署了 Qdrant,想以 C/S 的形式来连接,则应该使用远端模式,也就是填写 urlhost

url = "<---qdrant url here --->"
qdrant = QdrantVectorStore.from_documents(
    docs,
    embeddings,
    url,
    prefer_grpc=True, # 这里最好设置为 true
    collection_name="my_documents",
)

遇到的一些问题

  • 在使用远端模式的时候,如果没有设置prefer_grpc=True,走 REST 的形式,在一些例如耗时比较久的场景下(例如上传一个文件到 Qdrant 里),容易触发超时。

参考

How to Get Started with Qdrant Locally
Langchain-Qdrant
Requests Timed out

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qdrant 是一种开源的快速搜索引擎,主要用于实时高效的向量搜索。以下是关于如何使用 Qdrant 的简单步骤: 1. 安装 Qdrant:打开终端或命令提示符,输入适当的命令来安装 Qdrant。具体命令取决于你使用的操作系统和安装方式。可以参考 Qdrant 官方文档或 GitHub 页面获取更多安装指引。 2. 配置 Qdrant:在安装完成后,你需要进行一些配置,以便 Qdrant 能够与你的数据一起工作。这包括设置数据存储路径、索引参数和其他选项。通过编辑配置文件,根据你的需求进行相应的调整。 3. 导入数据:在配置完成后,你需要将需要搜索的数据加载到 Qdrant 中。Qdrant 支持各种数据类型,包括向量和标量数据。你可以将数据保存在 JSON 或 CSV 格式的文件中,并使用相应的命令将其导入到 Qdrant 中。 4. 创建索引:在导入数据后,你需要创建索引以便进行快速搜索。使用 Qdrant 提供的创建索引的命令,指定索引的名称、数据集和其他参数。Qdrant 将扫描导入的数据,并根据所提供的参数生成高效的索引。 5. 进行搜索:一旦索引创建完成,你就可以开始使用 Qdrant 进行搜索了。通过 Qdrant 提供的搜索命令,你可以输入搜索向量或关键词,并指定需要搜索的索引。Qdrant 将返回与搜索条件匹配的结果,并按照相似度进行排序。 6. 其他功能:除了基本的搜索功能外,Qdrant 还提供了其他强大的功能,如实时更新数据、删除数据、优化索引等。你可以通过查阅文档或参考示例代码来了解更多相应的命令和用法。 总结来说,使用 Qdrant 的基本步骤包括安装、配置、导入数据、创建索引和进行搜索。随着对 Qdrant 的熟悉程度的提高,你可以深入了解和利用其更多的功能来满足不同的搜索需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值