Получить доступ

Как устроен векторный поиск?

MiddleЭмбеддинги и векторный поискpgvectorFAISS
Ещё спрашивают так:
  • Что такое векторная база данных?
  • Что такое ANN и HNSW?
  • Зачем нужен гибридный поиск?
Коротко

Векторный поиск находит ближайшие векторы к вектору запроса; на больших объёмах используют приближённый поиск (ANN) с индексами вроде HNSW.

  • Точный перебор — O(n), ANN — быстро ценой небольшой потери полноты
  • Хранилища: pgvector в PostgreSQL, FAISS, специализированные векторные базы

А ещё Гибридный поиск: векторный + полнотекстовый (BM25) — ловит и смысл, и точные термины, коды, артикулы

Так подсказку видит пользователь sotto на живом собеседовании — за пару секунд, пока вы думаете вслух.

Подробно

Задача — по вектору запроса вернуть k самых близких векторов документов.

  • Точный поиск (kNN) — посчитать сходство со всеми векторами. Подходит для тысяч и десятков тысяч записей.
  • Приближённый (ANN) — индекс позволяет проверить лишь часть векторов. Популярные подходы:
    • HNSW — многоуровневый граф ближайших соседей, быстрый поиск и хорошая полнота, но индекс занимает память;
    • IVF — векторы разбиты на кластеры, поиск идёт в нескольких ближайших;
    • квантизация (PQ) — сжатие векторов ради памяти. Параметры индекса — компромисс между скоростью, памятью и полнотой (recall).

Где хранить: pgvector — расширение PostgreSQL, удобно, если данные и так в Postgres; FAISS — библиотека для поиска в памяти; отдельные векторные базы — когда нужен масштаб, фильтрация и управление коллекциями.

Гибридный поиск. Эмбеддинги хорошо ловят смысл, но плохо — точные совпадения: номера, коды ошибок, редкие термины, имена. Полнотекстовый поиск (BM25) — наоборот. Результаты объединяют (например, reciprocal rank fusion) и часто доуточняют реранкером.

Фильтры по метаданным (раздел, дата, права доступа) применяют вместе с векторным поиском — иначе пользователь найдёт то, что ему видеть нельзя.

Что хотят услышать

  • Постановка задачи: ближайшие соседи по вектору.
  • Точный поиск против ANN, идея HNSW.
  • Варианты хранилищ.
  • Гибридный поиск и фильтры по метаданным.

Частые ошибки

  • Считать, что векторный поиск всегда лучше полнотекстового.
  • Забыть про фильтрацию по правам доступа.

Что спросят дальше

Связанные вопросы

Закрытая бета

Подсказки на собеседовании — в реальном времени

sotto слышит вопрос интервьюера и показывает короткий ответ и план, как в блоке «Коротко». Оставьте контакт — пришлём доступ и промокод.

  • Промокод на 2 часа — сверх пробных 30 минут
  • Программа для Windows — скачать сразу, войти — через Яндекс ID или VK ID
  • Прямая связь с разработчиком: что улучшить — сделаем