首页/AI/RAG 与向量库速查/pgvector HNSW 索引
本包目录(229 条)
架构与流程30 条解析与切分33 条Embedding 与检索50 条
向量数据库49 条
重排与生成32 条评估与优化35 条

pgvector HNSW 索引

pgvector 的 HNSW 索引用 hnsw 访问方法构建:支持 vector/halfvec 等类型与三种距离算子类;查询时用 hnsw.ef_search 调整召回,索引可增量维护。

RAG 与向量库速查AI更新于 2026-10-12

建 HNSW 索引

建 HNSW 索引
CREATE INDEX ON kb_chunks
USING hnsw (embedding vector_cosine_ops)
WITH (m = 16, ef_construction = 200);

-- 可选参数:
-- m:每层连接数(默认 16)
-- ef_construction:构建候选队列(默认 64)

查询期参数

查询期参数
SET hnsw.ef_search = 100;      -- 会话级,越大召回越高
SELECT id FROM kb_chunks ORDER BY embedding <=> $1 LIMIT 10;
建索引时可临时提升 maintenance_work_mem 加快构建;生产建索引建议安排在低峰。

易错点

  • 算子类与查询算子不匹配(如用 l2 索引却按 <=> 排序),索引不生效走顺序扫描
  • 建索引前数据量已很大且内存预算不足,构建时间远超预期

数据来源与参考

  • pgvector README(HNSW / Index options)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌