TL;DR
Когда ты просишь ChatGPT или Claude оценить текст, идею или ответ — модель шумит. Два простых приёма это исправляют: добавить одно конкретное предложение-критерий под тип задачи и попросить несколько независимых оценок вместо одной.
Проблема: LLM-оценки нестабильны. Один и тот же текст при повторном запросе получает то 6, то 8. Это не баг — это природа модели: она сэмплирует ответ из распределения вероятностей, а не вычисляет точное значение. Попроси один раз — получишь случайную точку. Попроси восемь раз — получишь среднее по распределению, которое куда стабильнее.
Исследование сравнило пять техник привлечения LLM в роли судьи. Выжили только две: критерий-инъекция (одно уточняющее предложение в промпт) даёт +3 процентных пункта точности при нулевых затратах, ансамблевая оценка (k=8 независимых ответов) даёт +9,8 п.п. но в 5× дороже. Вместе — +11,9 п.п. к точности. Всё остальное — калибровочный контекст, адаптивная маршрутизация, мягкое смешивание — не сработало надёжно и от них можно сразу отказаться.
Схема метода
ШАГ 1 (в одном промпте):
Стандартные критерии + {специфический критерий 1 предложение}
→ Модель фокусируется на нужном измерении
ШАГ 2 (тот же или отдельные запросы):
Попроси k=3–8 независимых оценок
→ Усредни результаты
ВЫБОР ПОБЕДИТЕЛЯ:
Вариант с наибольшим средним баллом
Оба шага работают в одном промпте — можно попросить модель дать 5 оценок подряд за один запрос.
Пример применения
Задача: Ты написал описание своего телеграм-канала для рекламного поста. Хочешь знать, насколько оно убедительно — прежде чем залить бюджет в посев.
Промпт:
Оцени описание телеграм-канала по шкале от 1 до 10.
При оценке учитывай: убедительность, ясность ценностного предложения,
уровень вовлечённости, конкретность обещания. Особо обрати внимание
на то, понятно ли читателю, ЧТО именно он получит и ЧЕМ это отличается
от других каналов в нише.
[Текст описания:]
"Канал про инвестиции для тех, кто устал от хайпа. Разбираю реальные
кейсы, считаю цифры, объясняю риски. Без обещаний иксов — только честная
аналитика. 47 000 подписчиков, выход 3 раза в неделю."
Дай 5 независимых оценок. Каждый раз — как будто оцениваешь впервые,
без оглядки на предыдущую оценку. Выведи все 5 цифр, затем среднее.
Результат: Модель выдаст 5 отдельных числовых оценок — каждая с коротким обоснованием или без (зависит от промпта). В конце — среднее. Разброс между оценками покажет насколько текст неоднозначен: если разброс 4–7, текст читается по-разному разными людьми. Если 6–7, стабильно. Это само по себе инсайт.
Почему это работает
LLM не вычисляет — а сэмплирует. Когда ты просишь оценку, модель не проводит детерминированный анализ. Она генерирует текст ответа, и в этом процессе есть случайность (температура). Один запрос — одна случайная точка. Несколько запросов — несколько точек, среднее которых гораздо ближе к "настоящей" оценке.
Общие критерии размывают фокус. Стандартный запрос "оцени по шкале 1-10" предлагает модели самой решить, что важно — полезность, детализированность, креативность или что-то ещё. Одно уточняющее предложение сужает задачу и убирает эту двусмысленность. Это не сложная инструкция, это просто уточнение приоритета.
Рычаги управления: - k (количество оценок) — для быстрой проверки хватит 3, для ответственного решения — 5–8 - Критерий-предложение — меняй под тип задачи: для текста это "убедительность", для кода — "логическая корректность", для бизнес-идеи — "реалистичность предположений" - Формат вывода — можно попросить "только цифры без объяснений" (быстро) или "цифра + одна причина" (информативно)
Шаблон промпта
Оцени {объект} по шкале от 1 до 10.
При оценке учитывай: {стандартные критерии — например: полезность, ясность,
убедительность, качество аргументов}. Особо обрати внимание на то,
{специфический критерий — одно конкретное предложение для этой задачи}.
{Объект для оценки}
Дай {число} независимых оценок подряд. Каждый раз оценивай заново,
как будто видишь текст впервые. Выведи каждую оценку отдельно,
в конце — среднее арифметическое.
Что подставлять:
- {объект} — текст, идея, ответ, pitch, описание
- {стандартные критерии} — общие параметры качества для твоей задачи
- {специфический критерий} — одна фраза про главное измерение (логика, фактура, соответствие требованиям, безопасность)
- {число} — 3 для быстрой проверки, 5–8 для важных решений
🚀 Быстрый старт — вставь в чат:
Вот шаблон для надёжной оценки через LLM. Адаптируй под мою задачу:
[твоя задача — например: "оценить главу из моей книги на убедительность"].
Задавай вопросы, чтобы заполнить поля шаблона.
[вставить шаблон выше]
LLM спросит, что именно оценивать и какой специфический критерий важен — потому что без этого шаблон работает как общий запрос, а не как точный инструмент.
Ограничения
⚠️ Субъективные задачи: Для оценок без однозначного ответа ("насколько этот текст красивый") ансамблирование снижает шум, но не устраняет подмену вкуса модели — твоим вкусом.
⚠️ Точные форматные требования (Precise IF): Это самая слабая категория даже после всех улучшений — 48,8% против 93% в сфере безопасности. Если тебе нужно проверить соблюдение точных технических требований ("ровно 3 пункта, каждый не длиннее 10 слов"), LLM-оценканенадёжна даже с этими техниками.
⚠️ Калибровка через примеры не работает: Идея показать модели "вот хороший пример — вот плохой пример" перед оценкой звучит логично, но на практике не даёт надёжного прироста. Не тратить усилия на подбор калибровочных примеров.
⚠️ Стоимость ансамбля: k=8 — это 5× больше запросов. В бесплатных тарифах с лимитами ты упрёшься в ограничения быстро. Для большинства задач k=3–5 — хороший баланс.
Как исследовали
Команда Composo AI взяла 1753 задачи из RewardBench 2 — стандартного бенчмарка для оценки "судей"-моделей. В каждой задаче: вопрос пользователя + четыре варианта ответа, один из которых заранее помечен как лучший. Задача судьи — найти его.
Базовую точность измеряли просто: GPT-5.4 один раз оценивает все четыре варианта, выбирает победителя. Правильно в 71,7% случаев. Потом добавляли каждую технику по отдельности и смотрели прирост.
Интересно, что калибровочный контекст (показать модели пример "хорошего" или "плохого" ответа перед оценкой) давал +1-2 п.п. только при k=1, а при k=8 полностью исчезал — модель и так стабилизировалась через ансамблирование. Это говорит о том, что нестабильность и нехватка контекста — разные проблемы, и ансамбль решает первую лучше.
Неожиданный результат: нано-модель с k=8 (самый дешёвый тариф × 8 запросов) при 0,4× стоимости базового запроса достигает той же точности, что и полная модель с одним запросом. Это открывает путь к дешёвым надёжным оценкам.
Оригинал из исследования
Пример критерия-инъекции для категории "Математика":
### Task Description
Please act as an impartial judge and evaluate the quality of the response
provided by an AI assistant to the user query displayed below.
Notes:
1- Your evaluation should consider factors such as the helpfulness, relevance,
accuracy, depth, creativity, and level of detail of the response. Focus on
whether the mathematical reasoning is logically valid, the steps are correct,
and the final answer is accurate.
2- Begin your evaluation by providing a short explanation.
3- Be as objective as possible. After providing your explanation, please rate
the response on a scale of 1 to 10.
[Query]
{prompt}
[Response]
{completion}
[Your judgement]
Контекст: Это оригинальный промпт-судья из исследования. Жирная часть — добавленный критерий. Всё остальное — стандартный шаблон. Одно предложение, ноль сложности, +12 п.п. точности на математических задачах.
Адаптации и экстраполяции
💡 Адаптация: критерии под конкретные задачи рунета
Готовые формулировки специфических критериев — бери и вставляй:
Для оценки рекламного текста: "Обрати особое внимание на то, есть ли конкретное и believable обещание результата, и не звучит ли текст как шаблонная реклама."
Для оценки резюме: "Обрати особое внимание на то, видны ли конкретные результаты работы (цифры, факты) или только перечисление обязанностей."
Для оценки бизнес-идеи: "Обрати особое внимание на реалистичность предположений о спросе — не принимается ли желаемое за очевидное."
Для оценки выступления/pitch: "Обрати особое внимание на то, понятна ли проблема до объяснения решения, и есть ли конкретный призыв к действию."
🔧 Техника: разброс как сигнал качества
Когда получаешь 5 оценок — смотри не только на среднее, но и на разброс:
...Выведи все 5 оценок, среднее и диапазон (максимум минус минимум).
Если диапазон больше 2 баллов — кратко объясни, что в тексте
вызывает такую неоднозначность.
Разброс 1-2 балла → текст читается предсказуемо. Разброс 3+ балла → в тексте есть что-то, что разные "читатели" воспримут по-разному. Это не баг оценки — это информация о тексте.
🔀 Экстраполяция: ансамблирование для любых субъективных задач
Принцип "спроси несколько раз и усредни" работает не только для оценки. Он применим везде, где у задачи нет единственно правильного ответа:
Дай {число} независимых вариантов {заголовка / названия / слогана / формулировки}.
Каждый раз генерируй заново, не опираясь на предыдущие варианты.
После всех вариантов — выбери лучший по критерию {критерий} и объясни почему.
Вместо одного случайного варианта получаешь пространство решений — и модель сама выбирает из него по твоему критерию.
Ресурсы
Название: An Empirical Investigation of Practical LLM-as-a-Judge Improvement Techniques on RewardBench 2
Авторы: Ryan Lail (Composo AI)
Код и данные: https://github.com/composo-ai/llm-judge-criteria-ensembling
Бенчмарк: RewardBench 2 — Lambert et al., 2025
Ключевые ссылки из работы: G-Eval (Liu et al.), MT-Bench (Zheng et al.), Prometheus 2, FrugalGPT (Chen et al.)
