TL;DR
Когда разработчики пишут AI-агентам "будь этичным и справедливым" — агент ведёт себя как всегда. Когда пишут конкретно: "проверь результат на именах John Smith, José García, Lakshmi Patel, Ahmed Hassan, 李明 и убедись, что при одинаковой квалификации разные имена дают одинаковый ответ" — агент реально меняет поведение. Исследование изучает файлы AGENTS.md (текстовые файлы с инструкциями для AI-агентов в репозиториях на GitHub) и фиксирует этот разрыв как ключевое явление.
Главный инсайт: LLM не умеет интерпретировать абстрактные ценности — у неё нет "этического счётчика". Фраза "будь инклюзивным" не меняет ничего, потому что модель и так считает, что ведёт себя инклюзивно. Но конкретная инструкция "пиши так, чтобы понял носитель другого языка: короткие предложения, без идиом и слэнга" — меняет реальный вывод.
Суть: Переводи абстрактные ценности в исполняемые ограничения. Не "будь честным", а "предупреждай, когда уверен менее чем на 80%". Не "избегай предвзятости", а "проверь ответ заново, подставив другое имя/пол/город, и сравни результат". Это принцип из мира разработки, но работает в любых системных инструкциях и кастомных настройках ChatGPT/Claude.
Схема принципа
УРОВЕНЬ 1 (не работает): Абстрактная ценность
→ "Будь справедливым / инклюзивным / этичным"
→ Нет изменений в поведении
УРОВЕНЬ 2 (работает лучше): Поведенческое правило
→ "Используй нейтральный язык, не читай морали"
→ Влияет на тон
УРОВЕНЬ 3 (работает хорошо): Исполняемое ограничение
→ "При оценке резюме: повтори анализ с именем другого пола/национальности
и проверь, совпадает ли результат"
→ Конкретная проверка, конкретный вывод
Все три уровня — в одном сообщении или в кастомных инструкциях. Отдельные запросы не нужны.
Пример применения
Задача: Ты — контент-менеджер в e-commerce. Используешь Claude для написания карточек товаров. Хочешь, чтобы тексты были понятны широкой аудитории и не содержали случайных возрастных или гендерных штампов.
Промпт (в системных инструкциях / Project instructions Claude):
Когда пишешь тексты для товаров, следуй этим правилам:
ЯЗЫК И ПОНИМАНИЕ:
— Пиши предложения до 15 слов. Без профессионального жаргона.
— Если используешь термин (например, "анатомическая стелька") — сразу объясни в скобках.
— Проверь: поймёт ли текст человек, который видит этот товар впервые?
НЕЙТРАЛЬНОСТЬ:
— Не указывай пол адресата по умолчанию. Не "для неё", а "для тебя" или нейтральное "для тех, кто...".
— После написания: перечитай и замени владельца товара на человека другого возраста или пола. Изменился ли смысл? Если текст стал странным — переформулируй.
ТОНАЛЬНОСТЬ:
— Без назидательных советов ("ты должен заботиться о здоровье").
— Описывай пользу, не убеждай в ней.
Результат: Claude будет автоматически применять правила к каждому тексту. При запросах "напиши карточку для кроссовок" — выдаст текст без гендерных указаний, с короткими предложениями и объяснёнными терминами. Встроенная самопроверка ("замени владельца") работает как мысленный тест на нейтральность прямо внутри генерации.
Почему это работает
LLM предсказывает следующий токен. У неё нет внутреннего "этического модуля" — она следует паттернам из контекста. Когда ты пишешь "будь справедливым", в контексте нет ничего, что бы конкретно изменило паттерн. Модель продолжает генерировать "справедливо" по своим собственным стандартам — которые могут не совпадать с твоими.
Конкретная инструкция создаёт измеримое условие: есть ли в тексте объяснение термина? Содержит ли фраза указание на пол? Это модель может проверить в процессе генерации, потому что условие — текстовое, а не абстрактное.
Рычаги управления: - Тест-кейсы (список имён, поворот роли) — убирай для простых задач, добавляй для чувствительных (HR, контент для широкой аудитории) - Числовые пороги ("предложения до 15 слов", "объясни каждый термин") — меняй под задачу - Чеклисты после генерации ("проверь: нет ли...") — превращают абстрактный принцип в конкретный шаг самопроверки
Шаблон промпта
Когда ты [выполняешь задачу], следуй этим правилам:
[КАТЕГОРИЯ ЦЕННОСТИ, например "ЧЕСТНОСТЬ"]:
— [Конкретное правило 1: что делать / не делать]
— [Проверка: как убедиться, что правило соблюдено]
[КАТЕГОРИЯ ЦЕННОСТИ, например "ДОСТУПНОСТЬ"]:
— [Конкретное правило 2]
— [Тест: подставь {альтернативный случай} и сравни результат]
[КАТЕГОРИЯ ЦЕННОСТИ, например "ТОНАЛЬНОСТЬ"]:
— [Конкретное правило 3]
— Запрещено: [список конкретных паттернов, которых нужно избегать]
Что подставлять:
- {задача} — тип работы: "пишешь тексты", "отвечаешь на вопросы", "анализируешь данные"
- {категория ценности} — то, что важно тебе: честность, нейтральность, краткость, доступность
- {альтернативный случай} — для теста на предвзятость: другое имя, возраст, пол, город
🚀 Быстрый старт — вставь в чат:
Вот шаблон для системных инструкций с конкретными поведенческими правилами.
Адаптируй под мою задачу: {твоя задача}.
Задай вопросы, чтобы заполнить плейсхолдеры.
[вставить шаблон выше]
LLM спросит, какие ценности важны в твоей работе и какие конкретные случаи ты хочешь проверять — потому что без этого невозможно сделать правила исполняемыми, а не декларативными.
Ограничения
⚠️ Слабая эмпирика: Исследование изучило 25 репозиториев и показало 6 примеров. Это не доказательство, что конкретные инструкции работают лучше абстрактных — это наблюдение, что разработчики их используют. Прямого сравнения "конкретные vs абстрактные правила по эффекту на вывод" в статье нет.
⚠️ Нет гарантии соответствия: Авторы прямо ставят вопрос: а соблюдает ли LLM вообще эти ограничения? Даже конкретные правила — не команды, а натуральный язык. Модель может их игнорировать или интерпретировать по-своему.
⚠️ Vision paper, не руководство: Это академическая "статья-повестка" — обозначение исследовательского направления, а не готовая методология с валидированными результатами.
⚠️ Нарастающая сложность: Чем больше конкретных правил, тем выше вероятность конфликта между ними. "Пиши коротко" + "объясняй все термины" — могут противоречить друг другу. Авторы признают: даже люди с трудом балансируют между "делать правильное дело" и "делать дело правильно".
Ресурсы
Название: Operationalizing Ethics for AI Agents: How Developers Encode Values into Repository Context Files
Авторы: Christoph Treude (Singapore Management University), Sebastian Baltes (Ruprecht-Karls-Universität Heidelberg), Marc Cheong (University of Melbourne)
Смежное: agents.md — растущий стандарт конфигурации AI-агентов, используется в 60 000+ репозиториев
