跳到主内容
快讯直播
AI智模界
AI 词典

元数据过滤:先划死线,再做语义检索

一句话定义:元数据过滤(Metadata Filtering)是在向量检索之前或检索过程中,先用结构化条件把候选数据缩小到"有资格被比较"的范围,再去算语义相似度。

元数据(metadata)指挂在每条数据上的结构化字段:部门、权限等级、语言、地区、上架时间、状态、产品线、文档类型等。它们不是正文内容,而是描述这条数据的"标签"。

打个比方。你在图书馆找书,说"帮我找讲定价策略的书",这是语义检索;但你其实还有硬性要求:"只要三楼中文区、2020 年之后上架、对普通读者开放的"。这就是元数据过滤。少了后一句,很可能捞出一本语义极像、却属于内部资料或别的语言的书。

难点在顺序。 常见三种做法:

  • 先过滤再检索(pre-filter):先按条件筛出子集,再在这个子集里做向量比较。结果一定合规,但子集太小会削弱召回。
  • 先检索再过滤(post-filter):先取相似度最高的若干条,再剔除不合格的。实现简单,风险是"top-k 被掏空"——本来取 20 条,过滤完只剩 1 条。
  • 检索中过滤:在索引遍历时只走满足条件的节点。这是工程上常追求的形态,但具体支持程度和性能表现因实现而异,以官方文档为准。

和相邻概念的区别:

维度元数据过滤语义向量检索关键词检索
判断依据字段是否为真、是否落在区间向量距离远近词是否出现
输出性质硬性通过或淘汰排序打分排序打分
擅长解决权限、时间、品类、地区"意思差不多"的模糊表达专有名词、编号、代码
典型失败标签缺失导致误杀语义相近但不合规同义词漏召回

它和重排序(rerank)也不是一回事:重排序发生在召回之后,用更贵的模型精排;元数据过滤通常发生在前端,是布尔逻辑,不参与打分。

对从业者的实际意义有三点。 一是合规与权限:把"不该看"变成"检索不到",而不是指望模型自觉——语义最像的那篇,往往正好是别的部门、未发布状态或不适用地区的版本。二是成本与延迟:候选集小了,算得少。三是别把过滤当成万能药:标签缺失、枚举值漂移、过滤条件过严,都会让结果突然变少,而这类故障很难从"回答变差"里直接看出来。

对普通职场人,结论更朴素:认真给文档打标签、别乱填权限字段,决定的不只是归档整齐,而是 AI 能不能找到你那份材料。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。