Institution‑Specific Prompting for De‑identification

Что это за метод?

LLM умеют удалять «стандартные» личные данные (имена, даты, адреса), но пропускают локальные идентификаторы: сокращения отделов, названия помещений, внутренние коды проектов и т.п. **Идея:** уточнить задачу в два слоя – сначала перечислить все локальные термины, а затем дать пары «не‑удалять → оставить», всё в одном промпте. Это устраняет пропуски без лишних проходов.

Как работает?

1. **Первый прогон** - Запрос: *«Удалить все персональные данные (HIPAA)»*. - Получаем текст с плейсхолдерами для общих категорий, но остаются «слепые зоны». 2. **Анализ слепых зон** - Просматриваем результат и составляем список локальных терминов, которые остались. 3. **Финальный промпт** (один запрос) ``` Ты – эксперт по анонимизации документов. Заменить все персональные данные на плейсхолдеры вида [ТИП]. Стандартные категории: имена, даты, телефоны, email, адреса, номера договоров. Локальные идентификаторы (для моей компании): • Сокращения отделов: ОП, ДМ, Тех • Названия помещений/корпусов: Зал Кэррибиан, Mark Wallace Tower • Внутренние коды проектов и тикетов: PROJ-1234, TCH НЕ удаляй: – «встреча в 14:00» (не идентификатор) – «обсудили KPI отдела» (общий термин) Если сомневаешься – лучше удалить.

Текст: {твой документ} ``` - Модель применяет оба набора правил последовательно, выдаёт полностью анонимизированный текст за один проход.

Шаблон для копирования

Ты – эксперт по анонимизации документов. Заменить все персональные данные на плейсхолдеры вида [ТИП]. Стандартные категории: имена людей, даты, телефоны, email, адреса, номера договоров. Локальные идентификаторы (для {контекст}): • Сокращения отделов: {категория1} • Названия помещений/корпусов: {категория2} • Внутренние коды проектов и тикетов: {категория3} НЕ удаляй: – {пример1_неправильно} → оставить – {пример2_неправильно} → оставить Если сомневаешься – удаляй. Текст: {документ} ``` *Заполняйте поля в соответствии с вашим документом.*

Границы применимости

| Когда полезно | Когда не стоит | |---------------|----------------| | Документы, где важна локальная анонимизация (HR, юридические, медицинские отчёты). | Если у вас нет «слепых зон» – обычный HIPAA‑промпт уже достаточен. | | Вы работаете с одной LLM и можете быстро проверить результат вручную. | При больших объёмах без предварительного анализа вы потеряете контроль над пропусками. | | Модель поддерживает кастомные категории (GPT‑4+, Claude 3+). | Некоторые модели могут «потерять» баланс, если добавить слишком много категорий – тестируйте на своей версии. |

Ключевые выводы из экспериментов

- Добавление локальных терминов увеличило точность обнаружения до **≈80 %** пропущенных идентификаторов (с 60 % в базовом режиме). - Простая цепочка «чистит → проверяет» не превзошла один промпт с уточнёнными инструкциями. - Модели иногда находили данные, которые люди‑разметчики пропустили – это подтверждает ценность подхода.

Что делать не надо

- Не использовать этот метод как единственный способ защиты данных; всегда проверяйте финальный результат вручную. - Не забывайте обновлять список локальных терминов при изменении внутренней терминологии. - Не полагайтесь на «из коробки» – первый прогон нужен для выявления слепых зон.

**Номер исследования:** 2608.17051 Поддержать проект донатом: Сбер **2202 2084 9881 5282**. Заранее спасибо.