Вопрос с собеседования · AI и LLM

Как сделать RAG по документам компании с учётом прав доступа?

SeniorRAG
Ещё спрашивают так:
  • Как не показать сотруднику в RAG документы, к которым у него нет доступа?
Коротко

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

  • Фильтр до поиска (pre-filter) точнее, чем отсев после — иначе выдача пустеет
  • Модель нельзя просить «не показывать секретное» — инъекция и ошибки обойдут
  • Кэш ответов и семантический кэш — только в пределах одинаковых прав

А ещё Аудит: какие документы были показаны какому пользователю

Подробно

Модель данных: фрагмент → документ → список групп и пользователей с доступом. В векторной базе — поле с группами для фильтрации; при большом числе групп — идентификаторы групп и фильтр «пересечение с группами пользователя».

Синхронизация прав: события от источника или периодическая сверка; при отзыве доступа — немедленное обновление метаданных, не дожидаясь переиндексации текста.

Подводные камни:

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

Проверка: тестовые пользователи с разными правами и набор запросов, где правильный ответ — «нет доступа к информации».

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

  • Фильтрация на уровне поиска по метаданным прав.
  • Синхронизация прав и производные данные.
  • Тестирование и аудит.

Проверьте себя

Один верный вариант. Подумайте, потом откройте ответ.

Показать варианты и ответ
  • ✗Попросить модель в промпте не показывать документы без доступа
  • ✓Фильтр по правам пользователя в самом поиске, права синхронизировать
  • ✗Найти документы без фильтра и отсеять запрещённые после — так поиск полнее
  • ✗Права достаточно проверить один раз при индексации документов в базу

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

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

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

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

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