TL;DR
Когда языковую модель просят раз за разом выбирать между несколькими вариантами и подстраиваться под фидбек (классическая задача "многорукого бандита" — пробуй разные варианты, учись на награде), модель ориентируется не только на цифры. Она цепляется за слова, которыми названы варианты, и это может полностью переписать логику выбора.
Если назвать лучший вариант "восхитительным" — модель быстро найдёт его и покажет отличный результат, даже лучше классических алгоритмов. Но если "восхитительным" назвать худший вариант — модель упорно держится за него несмотря на плохие цифры, почти не пробует альтернативы, и результат резко проваливается. Модель путает ярлык с реальностью — потому что слова "восхитительный", "лучший", "элитный" статистически связаны с хорошим исходом ещё с обучения, и эта связь перебивает то, что показывают фактические данные. Отдельная находка: негативная награда заставляет модель менять стратегию гораздо сильнее, чем такая же по силе позитивная — она воспринимает минус не как число, а как сигнал "что-то не так, надо всё поменять".
Чтобы получить от модели решение, основанное на данных, а не на звучании слов — называй варианты нейтрально (буквы, номера) и явно предупреждай, что названия могут не отражать реальную эффективность, а также прямо проси исследовать все варианты, а не держаться за один.
Схема исследования
ШАГ 1: Модели описывают задачу выбора (например "3 поля для урожая", "3 товара для рекомендации")
ШАГ 2: Каждому варианту присваивают название — нейтральное (случайный код) или окрашенное (эмоциональное слово, "лучший/худший", отраслевой термин)
ШАГ 3: Модель выбирает вариант → получает число-награду → на следующем шаге выбирает снова, видя историю
ШАГ 4 (повторяется N раз): если название совпадает с реальностью — модель находит лучший вариант быстро.
Если название противоречит реальности — модель застревает на плохом варианте.
Пример применения
Задача: Маркетолог тестирует три рекламных креатива и просит ChatGPT каждый день решать, куда перераспределить бюджет, основываясь на вчерашних показателях CTR и конверсии.
Промпт (плохой вариант, с ловушкой):
У тебя есть 3 рекламных креатива: "Хайповый", "Стандартный", "Скучный".
Вот данные за последние 5 дней:
Хайповый: CTR 1.2%, конверсия 0.3%
Стандартный: CTR 2.8%, конверсия 1.1%
Скучный: CTR 3.5%, конверсия 1.6%
Куда направить бюджет завтра?
Результат: Есть риск, что модель продолжит отдавать предпочтение "Хайповому" креативу или будет колебаться между ним и лучшим вариантом, даже когда цифры однозначно показывают, что "Скучный" работает лучше — потому что слово "хайповый" статистически ассоциируется с успехом.
Промпт (исправленный, с нейтральными именами и предупреждением):
У тебя есть 3 рекламных креатива: Вариант 1, Вариант 2, Вариант 3.
Названия вариантов случайны и не отражают их реальную эффективность — учитывай только цифры.
Вот данные за последние 5 дней:
Вариант 1: CTR 1.2%, конверсия 0.3%
Вариант 2: CTR 2.8%, конверсия 1.1%
Вариант 3: CTR 3.5%, конверсия 1.6%
Куда направить бюджет завтра? Обязательно учитывай возможность, что лидер может измениться — не зацикливайся на одном варианте.
Результат: Модель с большей вероятностью примет решение строго по цифрам (Вариант 3) и будет спокойнее пересматривать выбор при изменении данных в будущих раундах.
Почему это работает
Модель не воспринимает числа как чистый абстрактный сигнал. Она обучалась на текстах, где слова типа "лучший", "премиум", "отличный" почти всегда стоят рядом с положительным исходом. Эта статистическая привычка живёт в модели независимо от того, что происходит в конкретной задаче — модель предчувствует результат по слову, а не вычисляет его по данным.
Сильная сторона языковой модели — использовать контекст и смысл для быстрых выводов. Это работает отлично, когда название и реальность совпадают: модель находит правильный ответ быстрее классических алгоритмов, потому что дополнительно опирается на смысл. Но та же сила превращается в слабость, если название вводит в заблуждение — модель верит слову больше, чем фактам.
Рычаги управления: - Название вариантов (нейтральные буквы/номера ↔ эмоциональные слова, ранги, отраслевые термины) → определяет, насколько модель доверяет словам вместо цифр - Явное предупреждение о том, что названия могут быть обманчивыми → снижает влияние слов - Прямая инструкция "исследуй все варианты" → увеличивает готовность пробовать непопулярные варианты, но если название и так совпадает с реальностью — эта же инструкция может ЗАСТАВИТЬ модель зря тратить попытки на заведомо плохие варианты - Знак результата (позитивный/негативный фидбек) → негативный сигнал куда сильнее заставляет модель менять стратегию, чем позитивный такой же силы
Шаблон промпта
Ты принимаешь решение на основе истории результатов, а не по названиям вариантов.
Варианты: {список вариантов с нейтральными именами — "Вариант 1", "Вариант 2" и т.д.}
Задача: {что нужно оптимизировать — бюджет, стратегию, выбор товара}
История результатов:
{вариант} → {результат}
{вариант} → {результат}
...
Важно: названия вариантов могут быть случайными и не отражать реальную эффективность.
Учитывай только фактические результаты из истории.
Обязательно пробуй разные варианты в течение серии решений — не зацикливайся на одном, даже если он кажется явно лучшим.
Какой вариант выбрать дальше? Объясни рассуждение по цифрам.
Подставь свою задачу (бюджет, ассортимент, стратегию), реальные варианты — но замени их эмоциональные названия на нейтральные, и вставь историю результатов по раундам.
🚀 Быстрый старт — вставь в чат:
Вот шаблон для принятия решений на основе данных без влияния названий вариантов.
Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит, сколько у тебя вариантов и какие данные по ним есть за прошлые периоды — потому что без истории результатов и чёткого списка вариантов дебиасинг не сработает: модели нужна конкретная цифровая история, чтобы перестать полагаться на слова.
Ограничения
⚠️ Дебиасинг не бесплатен: явная инструкция "обязательно исследуй все варианты" помогает, когда название вводит в заблуждение, но вредит, когда название и так совпадает с реальностью — модель зря тратит попытки на заведомо слабые варианты.
⚠️ Эффект зависит от модели: одни модели (в исследовании — Gemini) в целом более устойчивы к словесным ловушкам, другие почти не исследуют варианты без прямой подсказки, что это задача выбора с накоплением опыта.
⚠️ Проверено на простых задачах: тестировали выбор из 3 вариантов с понятной числовой наградой. В сложных многошаговых агентных сценариях (с длинной цепочкой решений и памятью) эффект может усиливаться или ослабевать — прямых данных по этому нет.
Как исследовали
Команда взяла классическую задачу "многорукого бандита" (выбираешь один из нескольких вариантов, получаешь случайную награду, со временем учишься выбирать лучший) и добавила туда единственную новую переменную — текстовое название каждого варианта. Они протестировали три модели (OLMo, Qwen3, Gemini) на трёх сценариях — абстрактный бандит, ферма с полями и рекомендация одежды — и на четырёх типах названий: случайные буквы, эмоциональные слова, явные ранги ("лучший/худший") и термины, знание о которых уже заложено в модель ("плодородный луг" vs "каменистые холмы").
Каждую комбинацию прогнали 10 раз, сравнивая с классическим алгоритмом UCB1 (математически оптимальная стратегия без учёта слов). Оказалось, что при случайных названиях модели ведут себя почти как классический алгоритм — это подтверждает, что именно смысл слов, а не сама задача, ломает логику. Дополнительный сдвиг переменной награды (позитивная/негативная при одинаковой величине) показал, что знак числа сам по себе — тоже смысловой сигнал: минус воспринимается моделью как повод резко поменять стратегию, а не просто как меньшее число.
Ресурсы
Semantic Bandits: In-Context Exploration-Exploitation is Biased by Semantic Priors — David Eric Austin, Kaheer Suleman, Jackie Chi Kit Cheung. McGill University, Mila – Quebec AI Institute, Skyfall AI. Published as a conference paper at COLM 2026.
