pgvector

活跃
GitHub C NOASSERTION

简介

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;

相关项目