pgvector/pgvector-python
pgvector support for Python
解决的问题
它为 pgvector PostgreSQL 扩展提供 Python 支持,使开发人员能够使用主流的 Python 数据库库,直接在 PostgreSQL 数据库中存储、查询和索引向量嵌入 (vector embeddings)。
运作方式
该库与多种 Python ORM 和数据库驱动程序集成,支持向量类型和距离运算符。它支持多种向量格式,包括标准向量、半精度向量、位向量和稀疏向量。此外,它还允许创建如 HNSW 和 IVFFlat 等近似最近邻 (ANN) 索引,以加速搜索速度。
适用对象
将 PostgreSQL 作为向量数据库,用于检索增强生成 (RAG)、图像搜索和推荐系统等 AI 应用程序的 Python 开发人员。
特色亮点
- 广泛的库支持:集成 Django、SQLAlchemy、SQLModel、Psycopg 3、Psycopg 2、asyncpg、pg8000 和 Peewee。
- 多种向量类型:支持
Vector、HalfVector、Bit和SparseVector,满足不同的精度和存储需求。 - 多种距离度量:支持 L2 距离、余弦距离、内积、L1 距离、汉明距离和杰卡德距离。
- 索引选项:提供简单的 Python 原生方式来创建 HNSW 和 IVFFlat 索引。
- 丰富的示例:包含 RAG、混合搜索、ColBERT 和视觉文档检索的实现示例。
相关
- 项目
- 项目
- 项目
- 项目