← 返回概念解读

Concept Fable精修版

Qdrant

Qdrant · Open-source vector database

先读故事。这里不急着给定义,先让问题自己长出来。

寓言故事

港口调度员给货签加上了隐形重量

河港每晚要处理几千船的货物调度。老调度员靠着一本厚厚的货签登记簿:每条船停靠哪个码头、属于哪个货主、运的是什么、目的地是哪。

问题从“找相似的货”开始。有商队需要一批和上次品质接近的棉布,可货签上只有”棉布、二级”几个字。调度员翻了半天,发现同样写着”棉布、二级”的船,因为产地、支数、染法不同,手感差远了。

有人引进了新标签:给每种货加上一段描述密文,描述密文之间可以直接比较相似度。工具上线第一天,商队高兴坏了,调度员也松了一口气。

没多久新麻烦又来了。商队不仅找相似的棉布,还会加限制:”和上次那批接近,但要山东产的,价格在三两以内,最近三天到货的。”密文能比相似度,可比不了产地、价格和到货日期。

调度员只好先把所有符合”山东产、三两以内、三天到货”的船捞出来,再对这几百条船逐一算密文相似度。两个步骤都慢,加起来更慢。

他们换了一套新的调度系统。每条船的标签上同时记着普通字段和描述密文。查询时,先在普通字段上做精确过滤,把符合条件的范围缩小;然后在这个范围内,只对密文做相似度检索。两个操作在一个查询里完成,不必分开跑。

有了这套系统,调度员可以做更复杂的混合查询:”先筛出去年十二月江南的船,再从剩下的找和这批最像的五条”。过滤器跑在结构化字段上,相似度跑在密文上,索引和计算各自独立,结果一步返回。新系统还允许商队只看自己的货域。甲商队找不到乙商队的私货,普通调度也不能随意翻高价契约。相似寻找和精确限制放在一起,速度、权限和更新才同时可管。

后来系统升级到能同时追踪查询速度、磁盘占用量和每条货签的更新频率。调度台甚至可以在同一份数据上划分多个子集,让不同商队只看到自己签约的货主。老调度员把登记簿收进抽屉:真正好用的调度系统,既要知道货和货有多像,也要知道货能不能运、该不该运。

揭示

这个故事讲的是:Qdrant

Qdrant 是一个开源向量数据库和搜索引擎,专注向量相似度检索,同时支持强大的 payload filtering(基于结构化元数据的过滤)。它的特点包括:HNSW 索引、量化支持、多集合管理、异步复制、基于角色的访问控制和 RESTful/gRPC API。在企业 RAG 系统中,Qdrant 的价值在于把语义检索和业务过滤放在同一个引擎里——你可以在一次查询中同时指定”找语义最接近的 10 条文档”和”但只限公开文档、发布时间在近 30 天内、标签包含金融合规”。这种向量+过滤的组合查询避免了先检索再在应用层过滤的低效模式。Qdrant 还支持稀疏向量和稠密向量的混合,适合需要同时做关键词和语义匹配的场景。

它重要的地方在于:它不只是一个术语,而是在真实 AI / Agent 系统里会反复出现的结构性问题。理解它,才能判断什么时候该加模型,什么时候该改流程,什么时候该补治理。

隐喻映射

  • 货签登记簿:只有结构化字段的传统数据库
  • 描述密文:向量 embedding,把货物特性压成可比较距离的数字
  • 山东产、三两以内、三天到货:结构化过滤条件(payload filter)
  • 先捞再逐一算密文:先SQL过滤再应用层算相似度的低效模式
  • 过滤和相似度一个查询完成:Qdrant 的 payload filtering + ANN 联合查询
  • 索引和计算各自独立:过滤索引和向量索引分离,查询优化器合并执行
  • 不同商队只看自己签约的货主:Qdrant 的 collection 分区和访问控制
  • 知道货像不像,也知道能不能运:向量检索 + 业务过滤 = 可投产的检索系统

Soloharness 判断

这个概念的实战价值,是帮你把“看起来聪明的 AI 功能”拆成可交付、可验收、可治理的工作单元。

vector databasepayload filterHNSWembeddingssemantic search