TL;DR
LLM систематически занижает оценки, когда в тексте встречаются негативные слова — даже если автор текста в целом доволен. Попросите модель оценить отзыв «немного жаль, что очереди в буфете длинные, но игра была невероятной» — и она выдаст 6 вместо правильных 9. Это не случайная ошибка: она обучалась на миллионах рецензий, где негативные слова действительно означали низкую оценку. В реальной жизни эта связь рвётся — но модель продолжает следовать старому паттерну.
Авторы нашли конкретный способ исправить эту предвзятость оценщика: добавить в промпт явный трёхшаговый протокол принятия решения плюс поле с обоснованием. Обоснование — ключевое: когда модель вынуждена объяснить своё решение, она рассуждает внимательнее, а не реагирует рефлекторно на поверхностный тон текста.
Главный вывод при этом честный и неудобный: правильная структура промпта исправляет только то, что можно исправить. Если нужная информация просто не содержится в тексте — никакой инжиниринг этот пробел не закроет. Потолок точности определяет входной текст, а не сила промпта.
Схема метода
Один промпт — один запрос
ШАГ 1: Приоритет явного вердикта
Если автор прямо говорит "в целом здорово" — берём это за основу
ШАГ 2: Взвешивание плюсов и минусов
Явно перечисляем позитивные и негативные сигналы,
не даём тексту автоматически "перетянуть" в минус
ШАГ 3: Защита от штрафа за изолированные жалобы
Единичная проблема на позитивном фоне ≠ низкая оценка
ОБОСНОВАНИЕ: Поле rationale
Модель обязана объяснить, почему поставила именно эту оценку
→ это форсирует осознанное решение, а не рефлекс
Пример применения
Задача: Команда запустила новый продукт на Wildberries и получила 200 отзывов. Нужно быстро оценить каждый по шкале 1–10, чтобы найти реально недовольных клиентов и не путать их с теми, кто просто упомянул мелкий нюанс.
Промпт:
Ты оцениваешь удовлетворённость покупателя на основе его отзыва.
Используй строго такой порядок:
ШАГ 1. ЯВНЫЙ ВЕРДИКТ
Если покупатель прямо выражает общую оценку ("всё супер", "доволен",
"разочарован", "не рекомендую") — это главный сигнал. Зафикси его.
ШАГ 2. ВЗВЕШИВАНИЕ
Перечисли все позитивные упоминания и все негативные упоминания отдельно.
Оцени, какой стороны больше по смыслу, а не по количеству слов.
ШАГ 3. ЗАЩИТА ОТ ЛИШНЕГО ШТРАФА
Если общий тон позитивный, а негатив — единичная мелкая деталь
(упаковка, цвет не тот, долгая доставка при "всё равно доволен") —
НЕ тяни оценку вниз из-за неё одной.
ОБОСНОВАНИЕ: Напиши 1–2 предложения — почему именно такая оценка.
ИТОГ: Оценка удовлетворённости от 1 до 10.
Отзыв:
{текст_отзыва}
Результат: Модель сначала покажет явный вердикт (если есть), затем разбивку на плюсы и минусы, потом краткое обоснование оценки. В финале — одно число. Там, где без этого промпта она выдала бы 5–6 из-за слов «долго», «неудобно», «могло быть лучше» на фоне очевидно довольного отзыва — теперь выдаст 8–9 и объяснит почему.
Почему это работает
Проблема: LLM обучалась на огромных массивах пользовательских рецензий, где слова «очередь», «долго», «неудобно» почти всегда сопровождали низкие оценки. Этот паттерн стал рефлексом. Когда модель видит такие слова — она генерирует низкое число, не взвешивая контекст.
Что умеет модель хорошо: Следовать явным структурированным инструкциям. Если ей задать конкретную последовательность шагов с чёткими правилами — она следует им, а не идёт на автопилоте по привычному паттерну.
Как метод это использует: Трёхшаговый протокол разрушает рефлекс. Модель не может сразу выдать число — она обязана сначала найти явный вердикт, потом взвесить аргументы, потом проверить, не тянет ли она оценку вниз из-за единичной жалобы. Поле обоснования — самое важное: когда модель пишет «почему», она в процессе генерации текста сама себя "проверяет" и корректирует.
Рычаги управления промптом: - Шаг 3 (защита от штрафа) → его можно перефразировать под домен: для строгих оценок (медицинские протоколы, юридические тексты) убери его совсем — там одна ошибка критична - Поле обоснования → оставь всегда, это самый дешёвый способ улучшить качество любой оценки - Шаг 1 (явный вердикт) → работает только если в тексте такой вердикт вообще может быть. Для фактических текстов без оценочных суждений — убери
Шаблон промпта
Оцени {объект_оценки} по шкале {шкала} на основе текста ниже.
Действуй строго в таком порядке:
ШАГ 1. ЯВНЫЙ ВЕРДИКТ
Есть ли в тексте прямое выражение общей оценки? Если да — зафикси его.
Это главный сигнал.
ШАГ 2. ВЗВЕШИВАНИЕ
Перечисли позитивные сигналы: {список_плюсов}
Перечисли негативные сигналы: {список_минусов}
Определи, какая сторона весомее по смыслу.
ШАГ 3. ПРОВЕРКА НА ЛИШНИЙ ШТРАФ
Если общий тон позитивный, а негатив — единичная, изолированная деталь —
не снижай оценку из-за неё одной.
ОБОСНОВАНИЕ: Объясни в 1–2 предложениях, почему именно такая оценка.
ИТОГ: Оценка — одно число от {минимум} до {максимум}.
Текст:
{текст}
Что подставлять:
- {объект_оценки} — отзыв, обратная связь, описание, фидбек
- {шкала} — 1–10, 1–5, 0–100
- {список_плюсов} / {список_минусов} — можно оставить пустыми, LLM заполнит сама; или задать конкретные критерии (качество продукта, сервис, цена)
- {текст} — сам оцениваемый текст
🚀 Быстрый старт — вставь в чат:
Вот шаблон оценочного промпта с коррекцией негативности.
Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит про шкалу и тип оцениваемых текстов — потому что от них зависит, насколько строгим делать шаг 3 ("защита от штрафа"). Она возьмёт структуру из шаблона и адаптирует под твои данные.
Ограничения
⚠️ Информационный потолок: Если нужная информация просто отсутствует в тексте — промпт не поможет. Примёр: человек пишет про еду и паркинг, но ставит 9 потому что его команда выиграла — LLM никогда не восстановит эту причину, её нет в тексте. Это не баг промпта, это фундаментальное ограничение.
⚠️ Смешанные тексты остаются сложными: На текстах с переплетёнными позитивными и негативными сигналами точность падает существенно — с ~85% до ~42% даже с лучшим промптом. Метод сокращает разрыв, но не закрывает его.
⚠️ Промпт и модель — пара, не отдельные части: Промпт, отточенный под одну модель, на другой может работать хуже. Если переходишь с Claude на GPT или наоборот — проверяй результаты заново на своих данных.
⚠️ Не для простых задач: Трёхшаговый крпотокол избыточен, если текст однозначно позитивный или однозначно негативный. Там любая модель и так справится.
Как исследовали
Исследователи взяли ~10 000 реальных анкет болельщиков после бейсбольных матчей Главной лиги — пять команд, три месяца сезона 2025 года. Каждый болельщик отвечал на два вопроса: число от 0 до 10 ("как в целом?") и открытый текст ("расскажи подробнее"). Задача для LLM: прочитать только текст и предсказать число, которое поставил человек.
Протестировали четыре конфигурации: базовый промпт и кастомизированный, каждый на нескольких моделях GPT. Результат неожиданный: GPT 5.2 оказалась хуже, чем кастомизированный GPT 4.1. Дороже и новее — не значит лучше для конкретной задачи. Ещё интереснее: разрыв между лучшим промптом (69% попаданий ±1 балл) и худшим (67%) был в двадцать раз меньше, чем разрыв между типами входных текстов. На однозначно позитивных текстах — 83–86% попаданий. На текстах с негативными деталями — 42–44%. Это и есть главный инсайт: редактируя промпт, ты работаешь с малой частью уравнения. Большую часть контролирует сам текст.
Дополнительно провели три независимых прогона одного базового промпта — чтобы проверить стабильность. Результаты воспроизвелись точно, что подтверждает: ошибки системные, а не случайные.
Оригинал из исследования
Контекст: Авторы описывают структуру кастомизированного промпта (p3_1) как главный дизайн-сдвиг по сравнению с базовым:
The customized prompt function (p3_1_*) added two design features
informed by early error analysis:
a three-step decision process:
1. prioritize an explicit overall verdict if present
2. then weigh positives and negatives
3. then do not over-penalize minor complaints if the overall tone is positive
and a predicted_rating_rationale field requiring the model to explain
its scoring logic.
Both prompt functions framed the task identically: estimate the fan's
self-reported overall experience rating as they would answer the survey question.
Адаптации и экстраполяции
💡 Адаптация для оценки бизнес-идей
Тот же механизм работает когда просишь LLM оценить питч или бизнес-концепцию. Модель тоже склонна "штрафовать" за упоминание рисков — даже если их признание говорит о зрелости основателя.
Оцени этот питч по шкале 1–10 как потенциальный инвестор.
ШАГ 1. ЯВНЫЙ ПОТЕНЦИАЛ
Есть ли в тексте прямое указание на рыночную возможность или трекшн? Зафикси.
ШАГ 2. ВЗВЕШИВАНИЕ
Сильные стороны питча (рынок, команда, продукт, трекшн):
Слабые стороны или риски:
Определи, что весомее.
ШАГ 3. ЗРЕЛОСТЬ VS ПРОБЛЕМА
Если основатель честно признаёт риски и объясняет как их митигировать —
это плюс, а не минус. Не штрафуй за прозрачность.
ОБОСНОВАНИЕ: Почему именно такая оценка инвестиционной привлекательности?
ИТОГ: Оценка от 1 до 10.
Питч:
{текст_питча}
🔧 Техника: убрать ограничение на штраф → строгий аудит
Если задача обратная — найти скрытые проблемы в тексте (юридический риск, медицинская ошибка, финансовые нарушения) — убери шаг 3 полностью и инвертируй логику:
ШАГ 3. УСИЛЕНИЕ СИГНАЛА РИСКОВ
Любое упоминание проблемы, даже единичное — учитывай как потенциально
критичный сигнал. Не сглаживай.
Тот же протокол, противоположная настройка. Используй когда одна ошибка важнее тысячи правильных вещей.
Ресурсы
Основная работа: "The signal is the ceiling: Measurement limits of LLM-predicted experience ratings from open-ended survey text" — Andrew Hong, Jason Potteiger, Luis E. Zapata (Dimension Labs, April 2026)
Предыдущая работа тех же авторов: Hong, A., Potteiger, J., & Zapata, I. (2026). "LLM Predictive Scoring and Validation: Inferring Experience Ratings from Unstructured Text." arXiv:2604.14321
Контакт: jason@dimensionlabs.io
Смежные работы из цитирований: - Ludwig, Mullainathan, Rambachan (2024) — об LLM-аннотациях как измерительных инструментах - Kahneman, Wakker, Sarin (1997) — peak-end rule (почему воспоминание и переживание расходятся) - Turpin et al. (2023) — о том, что объяснения модели не отражают реальные вычисления
