Этап 8 из 18 · ≈ 6 ч

Векторные базы данных

Основа с Junior

Хранение и быстрый поиск ближайших векторов — pgvector, Qdrant, Milvus и приближённые индексы.

Точный поиск ближайших векторов перебором — O(n) на запрос. Для миллионов векторов используют приближённые индексы: HNSW (граф ближайших соседей) или IVF (кластеры), которые находят почти всех ближайших соседей за миллисекунды.

Что важно знать

  • pgvector — векторный поиск прямо в PostgreSQL: проще эксплуатация, транзакции, фильтры и JOIN с обычными данными. Хватает на миллионы векторов.
  • Специализированные базы (Qdrant, Milvus, Weaviate) — масштаб, встроенный гибридный поиск, шардирование.
  • Фильтрация по метаданным (пользователь, права доступа, дата) обязательна: нельзя показать пользователю чужие документы.
  • Параметры HNSW (ef, M) — компромисс точности, скорости и памяти.
  • Обновление и удаление документов: идентификаторы фрагментов, переиндексация при изменении источника.

Критерии освоения

Junior ≈ 6 ч

  • Сохраняет эмбеддинги в pgvector или Qdrant и выполняет поиск ближайших с фильтром по метаданным

Практика. Загрузить 10 тысяч фрагментов в pgvector и сделать поиск с фильтром по разделу документации.

Middle ≈ 8 ч

  • Настраивает индекс HNSW и объясняет компромисс точности, скорости и памяти
  • Обновляет и удаляет фрагменты при изменении исходных документов

Практика. Измерить recall и задержку поиска при разных параметрах HNSW на 100 тысячах векторов.

Senior ≈ 6 ч

  • Обосновывает выбор между pgvector и специализированной базой для заданного масштаба
  • Проектирует фильтрацию по правам доступа, не ломающую качество приближённого поиска

Практика. Спроектировать хранилище фрагментов для 5 млн документов с правами доступа и обосновать выбор базы.

Проверка знаний

Войдите, чтобы пройти тест: сданный тест отмечает тему пройденной на карте и в ИПР.

Вопросы с собеседований

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

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

Полный разбор
Как сделать RAG по документам компании с учётом прав доступа?Senior

Права проверяются при поиске, а не моделью: каждый фрагмент хранит метаданные доступа (документ, группы, уровень конфиденциальности), поисковый запрос всегда содержит фильтр по правам текущего пользователя, и в контекст модели попадает только разрешённое…

Полный разбор
Как работает индекс HNSW и какие у него настройки?Middle

HNSW строит многоуровневый граф близости векторов: на верхних уровнях мало точек и длинные связи, на нижних — все точки и короткие связи. Поиск начинается сверху и жадно спускается к ближайшим соседям — это быстро, но приближённо: часть настоящих ближайших…

Полный разбор
Когда хватит pgvector, а когда нужна специализированная векторная база?Senior

pgvector в уже используемом PostgreSQL — лучший старт: одна база для данных, метаданных и векторов, транзакции, права доступа через обычные JOIN и фильтры, знакомая эксплуатация и бэкапы. Хорошо работает до миллионов–десятков миллионов векторов…

Полный разбор
Что такое эмбеддинги?Junior

Эмбеддинг — вектор чисел, в котором тексты близкие по смыслу оказываются близко в пространстве.

Полный разбор
Как найти похожие тексты по эмбеддингам — что такое косинусное сходство?Junior

Косинусное сходство — косинус угла между векторами: 1 — направлены одинаково (тексты близки по смыслу), около 0 — не связаны. Считается как скалярное произведение, делённое на произведение длин; для нормализованных векторов (длина 1) это просто скалярное…

Полный разбор
Как поддерживать индекс RAG в актуальном состоянии при изменении документов?Middle

Хранить для каждого документа идентификатор источника, версию или хеш содержимого и список его фрагментов. При синхронизации: новые документы проиндексировать, изменённые (хеш другой) — удалить старые фрагменты и записать новые, удалённые — убрать все их…

Полный разбор
Что такое RAG и как он устроен?Junior

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

Полный разбор
Чем поиск по смыслу отличается от поиска по ключевым словам?Junior

Поиск по ключевым словам (полнотекстовый, BM25) находит документы, где встречаются слова запроса (с учётом форм слов): точен на кодах, артикулах, именах, но не находит перефразирование («не приходит смс» против «нет кода подтверждения»). Поиск по смыслу…

Полный разбор

Разборы темы

Документация

← Вся карта «ИИ-инженер»

Партнёр платформы

Разбор собеседования с sotto

После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.

Разбор собеседования