AI/ML

pgvector

Расширение PostgreSQL для хранения и поиска по векторным эмбеддингам.

Что это

pgvector — хранение, индексирование и similarity search по векторам прямо в PostgreSQL. IVFFlat и HNSW индексы обеспечивают быстрый поиск по миллионам векторов.

Векторы хранятся рядом с остальными данными — один SQL-запрос может сочетать семантический поиск с фильтрацией по обычным полям.

По сравнению с Pinecone и Weaviate, pgvector не требует отдельной инфраструктуры — расширение ставится на существующий PostgreSQL. По сравнению с ChromaDB, pgvector предлагает полную ACID-совместимость и SQL-интеграцию. Для проектов с миллионами векторов может уступать специализированным решениям (Milvus, Qdrant), но для корпоративных RAG-систем с десятками-сотнями тысяч документов — оптимальный выбор.

Ключевые возможности

SQL-интеграция

Векторный поиск в обычном SQL-запросе — JOIN, WHERE, ORDER BY всё работает. Можно комбинировать семантический поиск с любыми реляционными фильтрами.

HNSW-индексы

Быстрый approximate nearest neighbor поиск по миллионам векторов. Настраиваемые параметры ef_construction и m позволяют балансировать точность и скорость.

ACID

Транзакции для векторных операций — данные всегда консистентны. Обновление документа и его эмбеддинга происходит атомарно.

Почему мы используем

pgvector — альтернатива ChromaDB для проектов, где уже есть PostgreSQL. Не нужна отдельная векторная БД — эмбеддинги, метаданные и бизнес-данные в единой СУБД.

Мы выбираем pgvector, когда нужно сочетать семантический поиск с бизнес-фильтрами: «найди похожие документы, но только в категории X, для пользователя Y, за последний месяц». В ChromaDB такие запросы требуют пост-фильтрации, в pgvector — один SQL-запрос.

Сильные стороны

Единая БД

Не нужна отдельная инфраструктура — всё в PostgreSQL, который уже есть.

SQL

Знакомый язык запросов — не нужно учить новый API для векторного поиска.

Наш опыт

Мы используем pgvector в RAG-системах, где нужна комбинация семантического поиска с реляционными фильтрами: поиск по документам с учётом прав доступа, дат, категорий.

Типовой стек: OpenAI text-embedding-3-small → pgvector → LangChain RetrievalQA. Индексы HNSW для production, IVFFlat для прототипирования. Настраиваем через Django ORM с кастомными полями (VectorField) и менеджерами для similarity search.

Для каких задач применяем

  • RAG-системы с реляционными фильтрами
  • Семантический поиск по документам
  • Рекомендательные системы

Проекты с использованием pgvector

AI-Director

SaaS-платформа для интеллектуального анализа компаний, поиска подрядчиков и генерации досье на персон с использованием нескольких …

Подробнее
Director PoC

Многоагентный AI-помощник для подготовки заседаний Совета директоров с использованием LangGraph и семантического поиска.

Подробнее
Обсудить задачу Рассчитать ROI