RAG Playground

核心原则

先用 Flat 或高召回 HNSW 建质量基线,再优化延迟和内存。
量化必须在回答质量评测后启用,不能只看向量召回。
租户、ACL、来源、时间和文档状态必须作为过滤元数据,避免越权和旧文档污染。
索引构建要支持增量更新、快照、回滚和重建任务观测。
混合索引应统一 dense、sparse 和 metadata 的版本,防止融合结果不可解释。

方法对比

方法延迟成本最适合
Flat规模大时慢评测基线、小语料
HNSW高召回交互式搜索
IVF-PQ很快内存压力大的大语料
混合存储带过滤的企业搜索

大厂与框架实践

FAISS 让 HNSW、IVF、PQ 等 ANN 索引成为大规模向量检索常用基座。

Milvus、Qdrant、Weaviate 和 pgvector 提供生产化 HNSW 索引与过滤能力。

字节、阿里类知识库通常组合向量索引、元数据过滤和重排序。

多租户 SaaS 必须先过滤 ACL 再检索或在检索阶段强制携带 tenant_id。

高频更新知识库要用增量索引队列,避免全量重建影响在线服务。

关键论文与参考

FAISS,Johnson 等,2017
HNSW,Malkov 与 Yashunin,2018
Product Quantization,Jegou 等,2011
ScaNN,Guo 等,2020
DiskANN,Subramanya 等,2019

深度讲解

索引选择可以用 memory = N * dimension * bytes 估算。1000 万条 1536 维 float32 向量原始大小约 61GB,还未计算图结构和元数据;PQ 可显著压缩,但可能损失难例召回。HNSW 的 M 和 efSearch 会影响质量与延迟,efSearch 从 64 提到 256 可能让 Recall@10 增加 2-5 点,同时 p95 延迟翻倍。生产建议保留 shadow index,把新索引接入 5% 查询做对照,再切主流量。

最佳实践

索引快照必须可回滚。
把 ACL 和 freshness 作为强过滤条件。
索引参数变更要和评测报告一起发布。