TL;DR
Даже если вы отправите модели точно такой же промпт второй раз, ответ может отличаться — и это не баг, а особенность того, как LLM генерирует текст. Модель выбирает следующее слово не как калькулятор, а как "бросок кубика" с учётом вероятностей: даже отключив случайность (температуру ставят на 0), на сервере всё равно происходит округление чисел, распределение задач между процессорами и внутренние "переключения" модели, которые чуть-чуть меняют расчёт — и этого достаточно, чтобы в редких случаях выбралось другое слово, а весь дальнейший текст "поехал" в другую сторону.
Боль конкретная: если вы просите модель оценить тональность отзыва, классифицировать документ или поставить балл от 1 до 10, вы можете один раз получить "позитив: 8", а повторив тот же запрос через час — "позитив: 6". Причина не в том, что модель "плохая" — просто под капотом у неё нет единственного правильного пути, есть счётчик вероятностей, и даже отключение случайности не гарантирует одинаковый маршрут через него из-за нагрузки на сервер, изменений модели без предупреждения и обычных ошибок округления в вычислениях.
Решение простое: относиться к ответу модели не как к измерению, а как к одному "черпку" из распределения возможных ответов. Для важных оценок и классификаций нужно спрашивать модель несколько раз (не один!) и смотреть на большинство или разброс, а не доверять единственному числу.
Схема метода
ШАГ 1: Задать модели один и тот же вопрос/задачу N раз (5–10 повторов, в отдельных сообщениях или новых чатах)
→ получить набор из N ответов
ШАГ 2: Сравнить ответы между собой
→ если совпадают почти все — доверяем результату
→ если разброс большой — берём большинство/медиану, либо пересматриваем формулировку промпта
Оба шага делаются вручную в обычном чате, без кода и API.
Пример применения
Задача: Маркетолог просит ChatGPT классифицировать тональность 50 отзывов клиентов о продукте («позитивный / нейтральный / негативный») для отчёта руководству.
Промпт (повторить одинаково несколько раз, желательно в новых чатах):
Оцени тональность следующего отзыва клиента: позитивный, нейтральный или негативный.
Ответь одним словом.
Отзыв: «Доставили с опозданием на два дня, но сам товар оказался лучше, чем я ожидал»
Результат: Если задать этот же вопрос 5 раз, скорее всего 3-4 раза модель ответит одинаково («нейтральный» или «позитивный»), но один-два раза может выпасть другой вариант — особенно если отзыв неоднозначный, как в примере выше. Это и есть та самая случайность: модель не ошибается, она каждый раз слегка иначе взвешивает "плюсы" и "минусы" в тексте. Для отчёта, где важна точность на десятках или сотнях отзывов, лучше не полагаться на один прогон, а взять большинство из нескольких.
Почему это работает
LLM генерирует текст по одному слову (токену), выбирая его из вероятностей — а не вычисляет "единственно верный" ответ, как калькулятор. Даже если убрать намеренную случайность (температуру на 0), на серверах провайдера операции всё равно округляются и выполняются в разном порядке из-за нагрузки, распределения по процессорам и внутренней архитектуры модели (у крупных моделей часто работает "комитет экспертов", и какой из них обработает ваш запрос — зависит от того, какие ещё запросы обрабатываются одновременно).
Сильная сторона модели — она справляется с задачей классификации/оценки правильно в среднем, даже если отдельный ответ иногда "шумит". Это как спросить мнение у одного человека против опроса пяти — единичное мнение может быть случайным перекосом, а мнение большинства — надёжнее.
Метод использует эту особенность напрямую: вместо одного запроса — несколько, и берём консенсус. Это работает как фильтр шума — убирает случайные колебания, оставляя устойчивый сигнал.
Рычаги управления: - Число повторов — для важных решений (юридическая оценка, финансовый отчёт) берите 7-10 повторов; для черновой прикидки достаточно 3. - Формулировка промпта — если разброс ответов большой даже при повторах, проблема может быть не в случайности модели, а в неоднозначности самого вопроса — стоит его переформулировать точнее. - Явный запрос уверенности — можно попросить модель указать, насколько она уверена в ответе, но помните: это тоже не всегда надёжно.
Шаблон промпта
Оцени/классифицируй следующее: {задача с текстом или данными}
Ответь только {формат ответа: одно слово / число / категория}, без пояснений.
Повторите этот промпт {количество раз} в разных сообщениях или новых чатах. Затем:
Вот {N} ответов модели на один и тот же вопрос по одной и той же задаче:
{список ответов}
Какой ответ встречается чаще всего? Есть ли явный разброс, требующий внимания?
🚀 Быстрый старт — вставь в чат:
Я хочу проверить надёжность оценки/классификации перед тем, как использовать её в важном отчёте.
Вот моя задача: {твоя задача}.
Помоги составить короткий промпт для повторных запросов и объясни, как сравнить ответы между собой.
LLM спросит, какой формат ответа вам нужен (число, категория, короткий текст) — потому что для сравнения разных прогонов важно, чтобы ответы были в едином, легко сопоставимом формате.
Ограничения
⚠️ Не спасает от скрытых обновлений модели: если провайдер тихо заменил модель за неизменным названием (это случается регулярно), повторные запросы в разные дни могут отличаться не из-за случайности, а из-за того, что вы буквально общаетесь с другой версией модели — и это никак не отследить в обычном чате.
⚠️ Дороже по времени: повторение запроса 5-10 раз для сотен или тысяч документов — это заметная трата времени и токенов, метод оправдан только для действительно важных решений, не для рутинных мелких задач.
⚠️ Не убирает систематическую ошибку: если модель стабильно неправильно понимает какой-то тип текста (например, путает иронию с негативом), усреднение по повторам не поможет — оно фильтрует только случайный шум, не смещение модели.
Как исследовали
Команда авторов — редакторы данных крупнейших экономических журналов (Econometric Society, Journal of Political Economy, American Economic Association) — сначала показала масштаб проблемы: они проанализировали 105 464 статьи в 145 топовых журналах экономики и менеджмента за 2020-2026 годы и обнаружили, что почти 6% статей в 2026 году упоминают использование LLM — и это только вершина айсберга, ведь публикация отстаёт от реальной практики на 1-3 года.
Дальше они на техническом уровне разобрали, откуда берётся непостоянство ответов: намеренная случайность (сэмплирование при генерации текста), скрытые обновления модели у провайдера, ошибки округления чисел при параллельных вычислениях на серверах, и особенности архитектуры "комитета экспертов" у крупных моделей.
Чтобы показать эффект на практике, они взяли выдержки из годовых отчётов 100 компаний из S&P 500 и попросили модель классифицировать тональность текста (позитив/нейтрал/негатив) — классическая задача из финансовых исследований. Даже при формально одинаковых настройках ответы расходились между повторами. Логика находки простая: раз в основе генерации текста лежит выбор из вероятностей, а вычисления на серверах провайдера не гарантированно идут в одном и том же порядке — то результат по сути непредсказуем на границе, где несколько вариантов ответа близки по вероятности. Инсайт для практики: чем важнее решение, основанное на ответе модели, тем больше повторов нужно сделать, чтобы не принять случайный шум за закономерность.
