Хранить смысл, а не слова

Как нейросеть превращает текст в числа и находит похожее за миллисекунды. Интерактивное демо на двух настоящих базах: PostgreSQL с pgvector и Qdrant.

Записей в PostgreSQL
—
Записей в Qdrant
—
Размерность вектора
1536

Что такое векторная база данных

Обычная база ищет точное совпадение слов. Векторная сравнивает смысл.

Поиск по словам

Запрос: «собака»
  • «собака бежит»
  • «пёс играет» не найдено
  • «щенок спит» не найдено

Поиск по смыслу

Запрос: «собака»
  • «собака бежит» 98%
  • «пёс играет» 94%
  • «щенок спит» 91%
  1. Текст
    «Машинное обучение»
  2. Модель эмбеддингов
    Нейросеть кодирует смысл
  3. Вектор
    [0.12, −0.34, 0.78…]
  4. База данных
    Поиск ближайших векторов

Эмбеддинги и векторное пространство

Каждый текст становится точкой в многомерном пространстве. Чем ближе смысл, тем ближе точки.

Введи текст и нажми кнопку

Векторное пространство, проекция на плоскость

Наведи на точку, чтобы увидеть текст. «Показать поиск» найдёт ближайших соседей запроса.

PostgreSQL pgvector и Qdrant

Оба движка ищут по векторам, но решают разные задачи.

PostgreSQL
расширение pgvector
Qdrant
специализированная векторная БД
Тип системы
Реляционная + векторная
Только векторная
Язык запросов
SQL
REST API, gRPC, Python SDK
Масштаб
~10M векторов
1B+ векторов
Скорость поиска
~40–80 мс
~5–15 мс
ACID-транзакции
Полные
Частичные
Индексы
IVFFLAT, HNSW
HNSW + квантизация
Фильтрация
SQL WHERE
Фильтры по payload
Когда выбирать
Postgres уже есть, нужны JOIN и ACID
RAG, рекомендации, большие объёмы

Попробуй сам

Загрузи текст, найди похожее и сравни, как отвечают обе базы.

Перетащи файл сюда или нажми, чтобы выбрать
.txt, .md или .csv
Файл разделится на 5 частей, каждая сохранится отдельно
База данных
База данных