| M | 每节点邻居数:越大召回越高、内存越大(常用 16-32) |
|---|---|
| efConstruction | 建索引时的探索宽度:越大图质量越好、建索引越慢 |
| efSearch | 查询时探索宽度:可在线调大换召回 |
| 取舍 | 内存换延迟与召回;不适合超大规模纯磁盘场景 |
pgvector 建 HNSW 索引并调查询
pgvector 建 HNSW 索引并调查询
CREATE INDEX ON docs USING hnsw (embedding vector_cosine_ops)
WITH (m = 16, ef_construction = 64);
-- 查询时提高探索宽度
SET hnsw.ef_search = 100;
SELECT id FROM docs ORDER BY embedding <=> '[0.1,0.2,...]' LIMIT 10;先固定 M / efConstruction 建库,再单独扫 efSearch 找延迟与召回的平衡点;评测集是调参的前提。