Mark Emelianov
RU

Агенты · Комплаенс · Черновик

Как сделать так, чтобы мир ИИ работал и соответствовал требованиям

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

Хорошая новость: это одни и те же строительные блоки. Контроли, благодаря которым такой мир работает, — это и есть доказательства, которые просит показать аудитор по комплаенсу. Комплаенс — не вторая система поверх первой.

Одно правило, четыре слоя

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

Зоны доверия в мире агентов Три зоны слева направо: песочница агента с ограниченными учётными данными, гейт с ревью, сканом и одобрением владельца и общее ядро. Ниже небольшие хосты, доступные только через разрешённые команды и подписанные сообщения, без входящего порта. Полоса доказательств внизу фиксирует каждое пересечение границы. Песочницаздесь работают агентыограниченные учётные данныесамостоятельно выйти нельзя Гейтнезависимое ревьюскан маркероводобрение владельца Общее ядроизменения поступают ветка за веткойодин экземпляр на организацию Малые хосты: белый список команд, подписи, порт закрыт Доказательства: каждое пересечение границы оставляет запись, по которой может проследить кто-то другой
Рисунок: зоны доверия в мире агентов, только в ролях.

Чтобы это работало: жёсткие контроли, а не благие намерения

Ядро и экземпляры. Один общий репозиторий ядра; у каждой организации свой экземпляр. Работа приходит ветка за веткой, поэтому ничто не меняется на месте.

Независимые гейты ревью. Ревьюер привязан к конкретному коммиту, который он проверил, поэтому выпускается именно то, что прошло ревью. Скан маркеров блокирует утечку данных организации в общее ядро. Слияние одобряет владелец.

Крошечный хост-агент (замысел, пока не используется). В нём не было бы модели. Он выполнял бы только команды из списка разрешённого через git и подписанные сообщения и не слушал бы ни одного входящего порта. Подвергшийся манипуляции агент почти ничего не нашёл бы, до чего можно дотянуться.

Четыре цикла против дрейфа. Долгая автономная работа блуждает. Отдельные циклы, у каждого из которых есть измеримое правило прогресса, удерживают её на курсе.

Карта мира. Зонированный интерактивный обзор агентов, хостов и платформ находится в разработке.

Тяжёлые задания по одному. Последовательное выполнение затратной работы делает общие ресурсы предсказуемыми.

Что проходит шлюз, а что только записывается

Сказать, что шлюз проходит каждое действие, было бы неверно, и это не сработало бы. Шлюзы расставляются по виду действия.

Через шлюз, с решением человека:

Только записывается, без ожидания человека:

Журнал просматривается потом. Чтение и черновики легко отменить, поэтому они остаются свободными; шлюз сохранён для того, что трудно вернуть назад.

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

Путь через гейты от работы агента до продакшена Пять шагов подряд: агент работает в ветке, независимое ревью привязано к конкретному коммиту, скан маркеров блокирует данные организации, владелец одобряет слияние, и каждый шаг оставляет запись. Агентработает в ветке Проверитьпривязано к коммиту Сканблокирует данные орг. Владелецодобряет слияние Записьдоказательства сохранены Ничто не попадает в продакшен, не пройдя каждый гейт Каждая стрелка исходит из того, что предыдущий шаг может ошибаться
Рисунок: путь через гейты от работы агента до продакшена.

Чтобы это соответствовало требованиям: те же контроли, прочитанные как доказательства

БлокЧто он подтверждаетПривязки к стандартам (ориентировочно)
Слияние, одобренное владельцемЧеловек решает до того, как изменение вступит в силуISO 27001: управление изменениями; EU AI Act: человеческий надзор (системы высокого риска); NIST AI RMF Govern
Независимое ревью, привязанное к коммитуРазделение обязанностей; проверено значит выпущеноБезопасная разработка по ISO 27001; управление изменениями по SOC 2
Изоляция и списки разрешённогоНаименьшие привилегии; ограниченный радиус пораженияУправление доступом и конфигурацией по ISO 27001; логический доступ по SOC 2
Подписанные сообщения и журналыКто что сделал и когдаISO 27001: журналирование; EU AI Act: ведение записей (системы высокого риска)
Реестр рисков и учёт задачУ известных рисков есть владельцы и срокиISO 27001: обработка рисков; ISO/IEC 42001; NIST AI RMF Map и Manage
Учёт готовностиПробелы относительно EU AI Act и Cyber Resilience Act видны заранееEU AI Act; EU Cyber Resilience Act

Эти привязки ориентировочные: это не заявление о сертификации и не юридическая консультация.

С чего начать: пять шагов

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