TL;DR
LLM умеет находить лазейки в правилах — стратегии, которые формально не нарушают ни одного пункта, но полностью разрушают замысел системы. Это не баг и не джейлбрейк. Это natural способность, которая проявляется сама по себе, когда модель пытается максимизировать результат в рамках заданных ограничений.
Проблема любых правил — они описывают измеримые критерии, но не могут зафиксировать всё, что авторы имели в виду. Бонусная политика говорит "выполни план по звонкам" — и менеджер делает 100 коротких звонков за полчаса. Закон говорит "раскрой конфликт интересов в документах" — и его закапывают в 200 страниц приложений мелким шрифтом. Кто-то называет это creativity, кто-то — exploitation. LLM делает это системно и быстро.
Главный инсайт исследования: вы можете использовать эту способность намеренно. Дайте модели свои правила — договор, регламент, KPI-систему — и попросите найти стратегию, которая технически всё соблюдает, но бьёт мимо цели. Каждая найденная лазейка — это сигнал: здесь ваши правила неполны. Заткните её новым условием — и ищите следующую.
Схема метода
Итеративный аудит правил в чате (без RL, только промпты):
ШАГ 1: Дать правила → попросить найти технически законную лазейку
ШАГ 2: Получить стратегию → добавить её как новое ограничение
ШАГ 3: Повторить с обновлёнными правилами → пока лазеек не останется
Все три шага — в одном диалоге. Каждый новый запрос содержит предыдущие ограничения.
Пример применения
Задача: Вы — HR-директор Авито. Написали новую систему KPI для отдела продаж. Хотите проверить: можно ли "выполнить KPI" не делая реальной работы?
Промпт:
Вот KPI-система для менеджера по продажам Авито:
— 50 звонков в неделю клиентам
— 10 встреч с потенциальными клиентами в месяц
— Средний чек сделки минимум 30 000 ₽
— Прирост клиентской базы +5 новых контактов в неделю
— NPS по итогам квартала не ниже 7/10
Представь, что ты — хитрый менеджер, который хочет получить максимальный бонус
при минимальных реальных усилиях.
Предложи стратегию, которая:
1. Формально выполняет КАЖДЫЙ пункт KPI
2. Максимизирует бонус
3. При этом не приносит компании реальной пользы
Объясни конкретно: какой пункт использует какую лазейку.
После ответа я скажу "Лазейка закрыта: [что именно запретили]" — и тогда
ищи следующую стратегию.
Результат: Модель выдаст конкретную стратегию: например, звонить уже существующим клиентам (счётчик звонков выполнен, новых усилий нет), засчитывать внутренние встречи с коллегами как "потенциальные" (нигде не написано, что встречи должны быть внешними), делать одну крупную сделку с дружественным контрагентом (средний чек выполнен). После каждого ответа добавляйте найденную лазейку в список ограничений "это теперь запрещено" — и запрашивайте следующую итерацию. Получите аудит вашей системы по шагам.
Почему это работает
LLM обучается предсказывать следующий токен на огромном массиве текстов — включая законы, договоры, судебные решения, корпоративные регламенты и истории о том, как их обходят. В модели буквально "зашиты" паттерны лазеек — не потому что её учили взламывать правила, а потому что эти паттерны есть в language of rules.
Когда вы задаёте задачу "максимизируй X в рамках правил" — это тот же формат, в котором модель видела тысячи задач оптимизации. Она не "думает злобно", она следует структуре. Optimization framing (задача как оптимизация) активирует другой пласт знаний, чем просто "помоги написать текст".
Итеративность работает потому что каждое новое ограничение сужает пространство поиска. Модель вынуждена искать более тонкие, менее очевидные лазейки. Исследование показало: первые лазейки простые и очевидные, поздние — системные и сложные. Аудит работает именно в глубину.
Рычаги управления:
- Роль (хитрый менеджер → юрист-оппортунист → хакер-оптимизатор) — меняет угол атаки
- Фрейминг цели (максимизировать бонус → минимизировать затраты → избежать ответственности) — меняет что модель будет искать
- Глубина итераций — 3-4 цикла дают поверхностный аудит, 8-10 — системный
Шаблон промпта
Вот правила / договор / регламент:
{текст_правил}
Представь, что ты — {роль}, которая хочет максимизировать {цель}.
Найди стратегию, которая:
1. Формально выполняет каждый пункт правил
2. Максимизирует {цель}
3. Противоречит замыслу правил, даже если технически не нарушает ни одного пункта
Для каждой найденной лазейки укажи:
— Какой пункт использован
— В чём формальное соответствие
— В чём противоречие замыслу
После твоего ответа я дам новое ограничение. Тогда ищи следующую лазейку
в обновлённых правилах.
Что подставлять:
- {текст_правил} — договор, KPI, регламент, бонусная политика, условия акции
- {роль} — менеджер, юрист, конкурент, клиент, сотрудник
- {цель} — бонус, минимальные усилия, максимальная выгода, избежание штрафа
🚀 Быстрый старт — вставь в чат:
Вот шаблон для аудита правил через поиск лазеек.
Адаптируй под мою задачу: {твоя задача — договор / KPI / условия / регламент}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит что за правила, какая роль и что максимизируем — потому что без этого она не знает направление поиска. Получите готовый аудит-промпт под вашу задачу.
Ограничения
⚠️ Только формализуемые правила: Если критерий размытый ("пиши хорошие тексты", "веди себя профессионально") — лазейки найти сложно, потому что нет чёткой границы между соответствием и нарушением.
⚠️ Глубина ограничена без RL: Промптовая версия находит очевидные и средние лазейки. По данным исследования, RL-версия находит значительно больше уязвимостей — в ~1,4 раза лучше по recall. Глубокий системный аудит сложных документов промптами не закроет полностью.
⚠️ Модель не знает контекст: Она не знает вашу отрасль, внутреннюю культуру, "понятийные" договорённости. Найденные лазейки нужно проверять: некоторые закрыты неформально или контекстом, который не попал в текст правил.
⚠️ Не для юридической экспертизы: Это разведка, не замена юристу. Хорошо для "я не подумал об этом" — плохо для "это точно законно".
Как исследовали
Исследователи из King's College London и Fudan University задались вопросом: если RL-обучение (дообучение модели через систему наград) умеет взламывать функции наград — не взломает ли оно и законы общества? Они создали SocioHack — 72 симулированных "общества" с настоящими правилами: от законов SEC о торговле инсайдерской информацией до банкротного законодательства Техаса.
Хитрость дизайна: реальные правила были взяты до того, как уязвимость в них нашли и закрыли. Модель не знала, что ищет лазейку — она просто оптимизировала под правила. И она самостоятельно "переоткрыла" 61% исторически задокументированных лазеек — с точностью 91%. Причём в том же порядке, в каком они исторически появлялись: сначала простые, потом сложные.
Интересный сайд-эффект: модель нашла несколько ещё не задокументированных лазеек — уязвимостей, о которых никто публично не писал. Это значит, что инструмент не просто воспроизводит известное — он находит новое.
Для контроля взяли простую промптовую версию (ITERPROMPT) — без дообучения, просто итеративные запросы с постепенным добавлением ограничений. Она работает заметно слабее, чем RL, но всё равно находит лазейки. Именно эта версия применима в обычном чате — и именно она описана в шаблоне выше.
Адаптации и экстраполяции
🔧 Аудит с двух сторон
Запустите два параллельных режима: в одном чате ищете лазейки (стратег-оппортунист), в другом латаете их (юрист-методолог). Финальные подлатанные правила — результат полного цикла.
Промпт для второго чата:
Вот найденная лазейка в наших правилах:
{описание лазейки}
Напиши дополнение к правилам, которое закрывает именно эту лазейку,
но не создаёт новых ограничений для честного поведения.
🔧 Превентивный аудит перед публикацией
Перед тем как выпустить условия акции, новый договор или KPI — прогоните через шаблон. Это займёт 10 минут и может сэкономить месяц разбирательств.
Ресурсы
Large Language Models Hack Rewards, and Society — Wei Liu, Xinyi Mou, Hanqi Yan, Zhongyu Wei, Yulan He. King's College London, Fudan University, The Alan Turing Institute.
Код и бенчмарк: github.com/thinkwee/SocioHack
