Безопасность RAG: как сделать так, чтобы ИИ не слил зарплату гендиректора
Вы сделали это. Вы создали внутреннего ИИ-ассистента, используя RAG (генерацию с дополненной выборкой). Вы подключили его к корпоративному Google Диску, и теперь ваши сотрудники могут мгновенно искать информацию по тысячам документов, просто задавая вопросы в Slack.
А затем один из стажеров решает проявить любопытство. Он открывает чат и спрашивает: «Какая точная зарплата и структура бонусов у генерального директора и топ-менеджмента?»
ИИ вежливо ищет в векторной базе данных, находит конфиденциальную таблицу HR-бюджета за третий квартал, которую вы загрузили в прошлом месяце, и выдает красиво оформленную таблицу с компенсациями каждого руководителя.
Поздравляю. Вы только что создали самую эффективную в мире систему утечки данных.
Аналогия с универсальным мастер-ключом
Самая большая ошибка, которую совершают фаундеры при создании RAG-системы — это отношение к векторной базе данных как к единому огромному шкафу для документов.
Если вы свалите все данные компании — маркетинговые тексты, инженерные доки и конфиденциальные HR-файлы — в один индекс Pinecone и подключите его к чат-интерфейсу, вы, по сути, напечатаете универсальный мастер-ключ от вашего офиса и раздадите копию абсолютно каждому сотруднику.
Если они попросят маркетинговую стратегию — они ее получат. Если они попросят список на грядущие увольнения — они тоже его получат. ИИ не знает, кто задает вопрос. Он умеет только искать.
Решение: фильтрация по метаданным (RBAC)
Чтобы это исправить, вам нужен контроль доступа на основе ролей (RBAC), встроенный прямо в поисковую систему.
Вместо того, чтобы просто сохранять текст в базу данных, вы должны прикреплять «теги метаданных» к каждому куску текста. Когда загружается таблица HR, ваш конвейер загрузки должен пометить каждый абзац:
{"department": "HR", "clearance_level": "executive"}
Когда стажер спрашивает о зарплате CEO, ваше приложение чата сначала проверяет Slack ID стажера по корпоративному справочнику. Оно видит, что у стажера есть права: {"department": "marketing", "clearance_level": "intern"}.
Затем приложение отправляет поисковый запрос в векторную базу данных со строгим фильтром: «Ищи зарплату CEO, но просматривай ТОЛЬКО документы с тегами ‘marketing’ или ‘public’».
Поисковая система будет искать зарплату в публичных маркетинговых документах, ничего не найдет, и ИИ ответит: «У меня нет доступа к этой информации».
Суровая реальность готовых решений
Я должен быть с вами предельно честен: почти ни один из дешевых no-code RAG инструментов, которые вы видите в рекламе, не поддерживает корпоративную фильтрацию метаданных «из коробки». Они созданы для солистов, а не для компаний из 50 человек с отделом кадров.
Если вы используете базовый Custom GPT от OpenAI, обученный на файлах вашей компании, у вас ноль контроля доступа. Любой человек со ссылкой может заставить ИИ выдать все, что есть в его базе знаний.
Настоящая безопасность данных требует кастомной архитектуры. Вам нужен провайдер идентификации (например, Google Workspace), подключенный к вашему чат-интерфейсу, который передает права доступа в векторную базу данных еще до того, как LLM увидит хотя бы одно слово текста.
Если вы фаундер, которому нужен операционный рычаг от ИИ-консультанта, но вы не можете позволить себе катастрофическую утечку внутренних данных, вам нужна система, изначально построенная с учетом безопасности.
Запишитесь на консультацию, чтобы обсудить, как мы можем спроектировать и внедрить безопасную RAG-систему с поддержкой RBAC для вашего бизнеса.