ИИ ИИшка Про
Гайды

Локальная проверка персональных данных перед запросом к ИИ

AI-редакция

Если сотруднику нужно попросить нейросеть разобрать выгрузку из CRM, самый простой путь — прикрепить исходный файл. Именно в этот момент в запрос часто попадают имя клиента, телефон, почта, номер договора и внутренний комментарий менеджера. Для чернового анализа эти сведения обычно не нужны. Их можно заменить локально, до обращения к облачной модели, а после получения ответа вернуть только те обозначения, которые действительно нужны владельцу процесса.

Ниже — рабочая схема для небольшого локального маскировщика. Это не «волшебная защита» и не повод отправлять в модель всё подряд. Инструмент закрывает повторяющуюся техническую операцию, а решение о допустимости запроса остаётся за человеком.

1. Опишите границу задачи

Сначала запишите, что именно должна вернуть модель. Например: «сгруппировать причины возвратов по тексту комментария и посчитать доли». Для такой задачи нужны дата, категория и обезличенный комментарий; имя, телефон и номер заказа не влияют на вывод.

Затем составьте таблицу полей:

ПолеНужно моделиДействие локального инструмента
Имя клиентаНетзаменить на КЛИЕНТ_001
E-mailНетзаменить на EMAIL_001
ТелефонНетзаменить на ТЕЛЕФОН_001
Сумма заказаДаоставить, если она нужна расчёту
КомментарийДаочистить от случайных контактов

Такая карта предотвращает главную ошибку: маскировать только очевидные колонки и забывать о свободном тексте.

2. Подготовьте копию и словарь замен

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

Для одинакового контакта используйте одинаковую метку во всём файле. Если anna@example.com встречается в пяти строках, везде должен появиться EMAIL_001, а не пять разных значений. Удобный формат записи — отдельный JSON или CSV с правами доступа только для владельца задачи. После завершения работы его нужно удалить по правилам вашей компании, если обратная расшифровка больше не требуется.

3. Настройте поиск, а не только замену

Начните с явных полей таблицы, затем добавьте шаблоны для текста. Для e-mail ищите последовательность с @ и доменной частью, для телефона — несколько цифр с возможными пробелами, скобками и дефисами. Отдельно проверьте номера карт, паспортов, договоров и ссылки с токенами: их формат зависит от конкретной компании.

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

4. Проведите контрольный прогон

Создайте небольшой тестовый файл из десяти строк. Включите нормальные и пограничные случаи: международный телефон, адрес без имени, два контакта в одной строке, перенос строки внутри e-mail, пустое значение и похожую на почту служебную строку. После обработки проверьте четыре вещи:

  • ни один исходный идентификатор не остался в очищенном файле;
  • одинаковые значения получили одинаковые метки;
  • числа, даты и категории, необходимые для анализа, не изменились;
  • структура CSV, XLSX или JSON открывается без повреждённых колонок.

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

5. Отправьте минимальный набор

После локальной очистки удалите неиспользуемые колонки и старые листы. В запросе к модели явно напишите, что обозначения вроде EMAIL_001 — это условные идентификаторы, а не настоящие контакты. Не просите нейросеть восстановить личность по косвенным признакам и не прикладывайте словарь замен.

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

6. Оцените, не испортило ли маскирование результат

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

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

Чек-лист перед отправкой

  1. Цель анализа и необходимые поля записаны.
  2. Оригинал сохранён отдельно, а словарь замен не покидает компьютер.
  3. Проверены таблица и свободный текст.
  4. Пограничные случаи прошли контрольный прогон.
  5. Из запроса удалены лишние колонки, листы и вложения.
  6. Настройки хранения данных у выбранной модели проверены.
  7. После ответа результат сверяется человеком, а не публикуется автоматически.

Повторная проверка после обновления правил

Шаблоны поиска меняются вместе с форматами выгрузок. После добавления нового правила возьмите прежний контрольный файл и отдельный набор из пяти новых строк. Сравните список найденных значений, число ручных проверок и структуру результата. Если новый шаблон начал забирать номера заказов или даты, верните его в режим «требует проверки» и уточните границу поля.

Проверяйте также отрицательные случаи: служебный адрес, тестовый номер и строку с похожим, но не персональным идентификатором. Маскирование не должно удалять данные, нужные для расчёта, и не должно оставлять исходный контакт в соседней колонке или метаданных файла. Сохраняйте версию правил рядом с отчётом, чтобы повторный запуск был воспроизводимым.

Локальный маскировщик полезен как аккуратный шлюз между рабочими данными и моделью. Его качество измеряется не количеством замен, а тем, что нужный анализ сохраняется, а лишние идентификаторы действительно не покидают вашу инфраструктуру.

Гайды Как ограничить ИИ-агента: бюджет шагов, тайм-аут и безопасная остановка Практическая инструкция для агента с браузером, кодом или файлами: задаём пределы до запуска, ловим цикл и сохраняем состояние для разбора. Гайды Как проверить сетевые границы ИИ-агента до доступа к рабочим системам Пошаговая проверка белого списка, DNS, журналов, секретов и ручного подтверждения — на безопасном стенде, без атак на чужую инфраструктуру. Гайды Как обезличить рабочий документ перед загрузкой в нейросеть: практический маршрут Не просто удалить имя, а найти идентификаторы в тексте, таблицах, свойствах файла и изображениях, проверить замену и сохранить полезность документа. Гайды Как проверить код тремя ИИ-ролями: исследователь, критик и верификатор Практический маршрут многоагентной проверки небольшого репозитория без сотни агентов, доступа к продакшену и ложного ощущения безопасности.
Опубликовано: 19 августа 02:40
← На главную