pgvector
活跃简介
PostgreSQL 的开源向量相似性搜索扩展,为关系型数据库原生支持向量存储与 ANN 检索,是构建 AI Agent 记忆和 RAG 系统的基础设施组件。
核心特性
- PostgreSQL 原生扩展 — 在关系型数据库中直接存储和查询向量,无需额外基础设施
- 多种距离度量 — 支持 L2、余弦距离、内积、L1、Hamming 和 Jaccard 距离
- 精确和近似搜索 — 支持 HNSW 和 IVFFlat 索引实现 ANN 近似最近邻搜索
- 多种向量类型 — 支持单精度、半精度、二进制和稀疏向量
- ACID 兼容 — 享有 PostgreSQL 的事务支持、时间点恢复和 JOIN 能力
- 量化扩展 — 支持向量量化处理大规模数据集
适用场景
💡 为 AI Agent 构建持久化记忆存储系统
💡 实现 RAG 管道中的向量相似性检索
💡 在现有 PostgreSQL 数据库中添加语义搜索能力
💡 构建多模态内容的嵌入存储和检索系统
快速开始
CREATE EXTENSION vector;
CREATE TABLE items (id bigserial PRIMARY KEY, embedding vector(3));
INSERT INTO items (embedding) VALUES ('[1,2,3]'), ('[4,5,6]');
SELECT * FROM items ORDER BY embedding <-> '[3,1,2]' LIMIT 5;