常见选择
| 方案 | 形态 | 适用 |
|---|---|---|
| pgvector | Postgres 扩展 | 已有 PG、要求事务一致、百万级以内 |
| Qdrant | 独立服务(Rust) | 强过滤需求、中大规模、API 友好 |
| Milvus | 分布式集群 | 亿级向量、水平扩展、团队有运维能力 |
| FAISS | Python/C++ 库 | 离线实验、批处理,不是持久化服务 |
| Chroma | 轻量嵌入式 | 原型验证与小型应用 |
pgvector 建表与检索
pgvector 建表与检索
CREATE EXTENSION IF NOT EXISTS vector;
CREATE TABLE docs (id bigserial PRIMARY KEY, content text,
meta jsonb, embedding vector(1024));
SELECT id, content FROM docs
ORDER BY embedding <=> :query_vec LIMIT 8;先用真实数据量与过滤查询做基准测试(P95 延迟 + 召回),再决定要不要引入独立向量服务。