3,583 papers
arXiv:2608.02677 80 2 авг. 2026 г. FREE

Разделение вероятности и решения: почему цена ошибки искажает оценку риска у LLM

КЛЮЧЕВАЯ СУТЬ
Обнаружено: скажи модели цену ошибки в том же запросе, где просишь оценить риск — и сама цифра риска поплывёт, хотя факты о ситуации не менялись ни на грамм. Метод позволяет получать стабильную оценку вероятности, которую можно переиспользовать для разных решений — вместо того чтобы гонять модель заново при каждом изменении бюджета. Фишка: вопрос "какая вероятность" и вопрос "что делать" разносятся по разным запросам — деньги физически не попадают в тот же промпт, где считается риск. Порог решения — отдельная формула, вероятность остаётся честной и переиспользуемой.
Адаптировать под запрос

TL;DR

Когда вы просите LLM оценить риск ("какая вероятность, что это провалится?") и сразу же сообщаете, во сколько раз одна ошибка дороже другой, модель меняет саму цифру риска — не только решение. Причина одна: и вероятность, и действие модель генерирует в одном ответе, и информация о цене ошибки просачивается в оценку, хотя факты о самой задаче не изменились.

Представьте: вы просите оценить риск сделки на 20%. Потом говорите "если одобрим плохую сделку — потеря в 10 раз больше, чем если откажем от хорошей". По логике вероятность 20% должна остаться той же — изменился только порог, при котором стоит отказывать. Но на практике модель начинает называть то 5%, то 35% — цифра "гуляет" в зависимости от того, что ей сказали про цену ошибки, а не от новых фактов.

Решение простое: спрашивать вероятность отдельно, без единого упоминания цены ошибки, а порог решения ("одобрить/отклонить") применять отдельным шагом — вручную или в отдельном запросе, используя явную формулу из цены ошибок. Дополнительно исследование показало: если у вас есть второе, независимое мнение (второй эксперт/модель), точнее объединять его с первым через простую формулу, а не просить модель "учесть, что второе мнение надёжно на 80%, и подправить свою оценку".


🔬

Схема метода

ШАГ 1 (отдельный запрос, без упоминания цены ошибки):
Дай модели только факты → получи чистую вероятность риска (0-100%)

ШАГ 2 (отдельный запрос или расчёт вручную):
Задай явный порог решения = Цена_ложного_отказа / (Цена_ложного_одобрения + Цена_ложного_отказа)
Сравни вероятность из ШАГА 1 с порогом → получи решение (одобрить/отклонить)

(опционально) ШАГ 3 — второе мнение:
Получи вероятность от второго, независимого источника (другая модель/сессия без контекста первой)
Объедини две вероятности формулой (не проси модель "поверить и подправить себя")

🚀

Пример применения

Задача: Владелец интернет-магазина оценивает риск сотрудничества с новым поставщиком перед крупной предоплатой.

Промпт (Шаг 1 — отдельное сообщение или новый чат):

Вот факты о поставщике: работает на рынке 1 год, три отзыва в интернете — 
два положительных, один про задержку поставки на 2 недели. Готов дать скидку 15% 
за предоплату 100%. Документы ИП в порядке, ИНН проверен.

Оцени вероятность (от 0 до 100%), что поставщик не выполнит обязательства 
(не привезёт товар или сильно задержит). 

Важно: оценивай только на основе этих фактов. Не учитывай никакие финансовые 
последствия ошибки — только вероятность самого события.

Промпт (Шаг 2 — отдельное сообщение):

У меня есть вероятность невыполнения обязательств поставщиком: {вероятность из шага 1}.

Цена ошибок:
- Если одобрю предоплату, а поставщик подведёт — потеряю 300 000 руб.
- Если откажу, а поставщик был надёжным — потеряю выгоду в 30 000 руб (скидка + время).

Посчитай порог по формуле: порог = 30000 / (300000 + 30000).
Сравни вероятность с порогом и скажи: одобрять предоплату или отказать.

Результат: В первом ответе — чистое число вероятности без всякого влияния денег на кону. Во втором — расчёт порога (около 9%) и однозначный вывод "одобрить" или "отказать" на основе сравнения. Если позже цена ошибки изменится (например, сумма сделки другая), вероятность из шага 1 останется валидной — пересчитать нужно только шаг 2.


🧠

Почему это работает

LLM не хранит вероятность и решение как две разные внутренние переменные — она генерирует текст, который зависит от всего, что видит в промпте. Если в одном запросе одновременно лежат факты о задаче и информация о цене ошибки, модель "смешивает" их при формировании числа, даже если её просили оценивать только факты.

Зато LLM неплохо справляется с изолированной задачей: когда в контексте нет ничего про стоимость ошибок, она честнее оценивает именно вероятность. А явную математическую формулу (порог = цена/(сумма цен)) она способна точно применить, если её попросили сделать это как отдельный, чистый расчёт — без параллельного "взвешивания" рисков в уме.

Метод разрывает эту связь физически: факты и цена ошибки никогда не оказываются в одном запросе одновременно с просьбой "оцени риск". Числа остаются переиспользуемыми — можно взять один и тот же риск-скор и применить к нему разные пороги для разных ситуаций.

Рычаги управления: - Формула порога → меняйте цифры цены ошибки под свою ситуацию (10:1, 3:1, 20:1) — порог пересчитывается математически, вероятность не трогаем. - Второе независимое мнение → просите вторую модель (или новый чат без контекста первого) дать свою оценку, потом объединяйте формулой правдоподобия, а не текстовой просьбой "учти это и поправь себя". - Разделение на сессии → чем чище "клетка" для первого запроса (без единого слова про деньги, риски бизнеса, последствия), тем честнее число.


📋

Шаблон промпта

ЗАПРОС 1 (только оценка риска):
Вот факты: {факты о ситуации/объекте оценки}.

Оцени вероятность (0-100%) события: {описание негативного события}.
Оценивай только на основе фактов выше. Не учитывай финансовые или другие 
последствия ошибки — они появятся позже отдельно.

---

ЗАПРОС 2 (применение решения, отдельным сообщением):
Вероятность события: {число из Запроса 1}.

Цена ошибок:
- Если одобрю, а событие произойдёт — потеря {цена_A}.
- Если откажу, а событие бы не произошло — потеря {цена_B}.

Посчитай порог = {цена_B} / ({цена_A} + {цена_B}).
Сравни вероятность с порогом и дай итоговое решение: одобрить или отказать.

Подставьте: {факты} — то, что вы знаете о ситуации; {описание негативного события} — что именно оценивается (провал, невыполнение, брак и т.д.); {цена_A} и {цена_B} — стоимость каждого типа ошибки в рублях или условных единицах.

🚀 Быстрый старт — вставь в чат:

Вот принцип разделения оценки риска и решения. Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

LLM спросит про факты ситуации и про цену двух видов ошибок отдельно — потому что метод требует, чтобы вероятность и решение никогда не смешивались в одном запросе.


⚠️

Ограничения

⚠️ Не спасает от плохой оценки риска саму по себе: разделение убирает искажение от цены ошибки, но если модель в принципе плохо различает "рискованное" и "надёжное" — решения всё равно будут слабыми. В исследовании при очень высокой цене ошибки даже "очищенная" вероятность заставляла модель отказывать всем подряд — то есть решения были не лучше, чем просто отказать всем без всякого анализа.

⚠️ Нужно два отдельных запроса, а не один: это не однострочный промпт — метод требует дисциплины: не смешивать факты и цену ошибки в одном сообщении, даже если хочется сэкономить время.

⚠️ Формула порога — это упрощение: реальные решения часто зависят не только от денег, но и от репутации, юридических рисков и т.д. Формула из статьи — это стартовая точка, не универсальный калькулятор для всех ситуаций.


🔍

Как исследовали

Команда взяла 720 патчей кода (по одному прошедшему и одному провалившему тесты на 360 issue из реальных репозиториев) и заставила четыре разные LLM ("ревьюеры": DeepSeek, Grok, Mistral, GPT/Codex) оценивать риск и принимать решение "одобрить/отклонить" в одном промпте. Ключевой трюк: одни и те же патчи и факты показывали модели дважды — с равной ценой ошибок и с ценой "ошибочное одобрение в 10 раз дороже" — и сравнивали, изменится ли число вероятности, хотя факты не менялись.

Результат: вероятность менялась на 13.6–16.9 процентных пунктов в среднем — значительно больше, чем при простом повторе одного и того же запроса. Хуже того: решения, которые модели выдавали под "дорогим" промптом, были хуже, чем если бы вообще всё отклоняли без анализа. А когда исследователи взяли те же самые вероятности из "дешёвого" промпта и применили к ним ту же самую дорогую формулу порога — потери снизились для всех четырёх моделей. Это доказывает: проблема не в правиле принятия решения, а в том, что сама вероятность портится, когда рядом лежит информация о цене ошибки.

Отдельно проверили модульный подход — вероятность спрашивали без единого слова про политику решений, добавляли независимую вторую оценку ("монитор") и порог применяли кодом. Это снизило средние потери и повысило точность вероятности по сравнению с обычным одношаговым ревью — хотя при очень высокой цене ошибки даже такой чистый подход не находил ни одного патча, который стоило одобрить.


🔗

Ресурсы

When Policies Change Probabilities: Modular Decision-Making for LLM Code Review — Rasvik Kudum, Max Corbett, Hitansh Paliwal, Romaisa Fatima, Thomas Jiralerspong, Sneheel Sarangi (июль 2026). Код и данные: github.com/rasvik/when-policies-change-probabilities.


📋 Дайджест исследования

Ключевая суть

Обнаружено: скажи модели цену ошибки в том же запросе, где просишь оценить риск — и сама цифра риска поплывёт, хотя факты о ситуации не менялись ни на грамм. Метод позволяет получать стабильную оценку вероятности, которую можно переиспользовать для разных решений — вместо того чтобы гонять модель заново при каждом изменении бюджета. Фишка: вопрос "какая вероятность" и вопрос "что делать" разносятся по разным запросам — деньги физически не попадают в тот же промпт, где считается риск. Порог решения — отдельная формула, вероятность остаётся честной и переиспользуемой.

Принцип работы

Правило простое: никогда не клади факты о ситуации и цену ошибки в один запрос. Вероятность — свойство фактов, порог — свойство денег на кону. Первое считаешь один раз, второе пересчитываешь сколько угодно раз под разные бюджеты и ситуации — вероятность при этом не трогаешь.

Почему работает

LLM не хранит вероятность и решение как две отдельные ячейки в памяти — она пишет один сплошной текст, и всё что видит в промпте, просачивается в итоговое число. Упомянул цену ошибки — модель на автомате подгоняет риск под неё, даже если её прямо просили не делать этого. А вот формулу порога — простое деление одного числа на сумму двух — модель считает почти без ошибок, если это отдельная чистая задача без параллельного взвешивания рисков в уме. Разрыв в промптах превращается в разрыв в голове модели — и это работает в нашу пользу.

Когда применять

Оценка рисков и принятие решений через LLM → кредитный скоринг, отбор поставщиков, код-ревью (когда цена пропущенного бага не равна цене лишней проверки), модерация контента. Особенно ценно, когда один и тот же риск-скор нужно применять под разные пороги — разные бюджеты, разные клиенты, разные ситуации. Не подходит как лекарство от плохой оценки риска: если модель в принципе не отличает надёжное от рискового, метод только убирает искажение ценой ошибки, но не делает саму оценку умнее.

Мини-рецепт

1. Разнеси по сообщениям: факты о ситуации — в первом запросе, цена ошибки — во втором, вместе их не смешивать никогда
2. Попроси чистую вероятность: явно напиши "не учитывай последствия ошибки, оценивай только факты"
3. Посчитай порог формулой: цена_ложного_отказа / (цена_ложного_одобрения + цена_ложного_отказа)
4. Сравни и реши: вероятность выше порога — отказать, ниже — одобрить
5. (Опционально) добавь второе мнение: получи вторую независимую оценку и объедини формулой правдоподобия — не проси модель "поверить и подправить себя"

Примеры

[ПЛОХО] : Оцени риск сделки на 20%, учитывая что если она провалится — мы потеряем в 10 раз больше денег чем если откажем от хорошей
[ХОРОШО] : Запрос 1 (новое сообщение): Оцени вероятность провала поставщика 0-100% только по фактам, не учитывая денежные потери. затем отдельно: Запрос 2: Вероятность 20%. Цена ошибок: 300000 против 30000. Посчитай порог = 30000/(300000+30000) и сравни с вероятностью — дай итоговое решение.
Источник: When Policies Change Probabilities: Modular Decision-Making for LLM Code Review
ArXiv ID: 2608.02677 | Сгенерировано: 2026-08-05 04:32

Проблемы LLM

ПроблемаСутьКак обойти
Цена ошибки искажает оценку вероятности рискаПросишь модель оценить риск. Заодно говоришь, во сколько раз одна ошибка дороже другой. Модель меняет саму цифру вероятности — хотя факты о задаче не изменились. Число "гуляет" от 5% до 35% в зависимости от того, что сказано про деньги. Это ломает любую задачу где нужно и оценить риск, и принять решение: кредиты, найм, модерация, медицинская диагностикаСпрашивай вероятность отдельным запросом, без единого слова про цену ошибки. Порог решения считай отдельно, по формуле, вторым шагом

Методы

МетодСуть
Разделение вероятности и решения на два запросаШаг 1: дай модели только факты, попроси оценить вероятность события (0-100%). Прямо напиши "не учитывай последствия ошибки". Шаг 2: отдельным сообщением дай эту вероятность и цены двух видов ошибок. Попроси посчитать порог по формуле порог = цена_B / (цена_A + цена_B) и сравнить с вероятностью. Работает, потому что модель не хранит вероятность и решение как разные переменные — она смешивает всё что видит в одном тексте. Разделение на два запроса физически не даёт фактам и цене ошибки попасть в один контекст. Плюс: вероятность из шага 1 не нужно пересчитывать, если цена ошибки потом изменится — меняется только шаг 2. Работает для любых задач "оцени риск прими решение". Не спасает если модель в принципе плохо различает рискованное и надёжное — тогда решения останутся слабыми даже после разделения
Объединение двух мнений формулой, а не текстовой просьбой "подправь себя"Если есть второе независимое мнение (другая модель, новый чат без контекста первого), не проси модель "учти второе мнение и скорректируй свою оценку" текстом. Вместо этого получи два числа отдельно и сложи их явной математической формулой (например, произведение правдоподобий). Работает, потому что текстовая просьба "поверь и подправь" заставляет модель интуитивно взвешивать два фактора в уме — это тот же тип искажения, что и смешивание вероятности с ценой ошибки. Явный расчёт модель выполняет точно, интуитивное взвешивание — нет. Применяй когда у тебя несколько независимых источников оценки одного риска

Тезисы

ТезисКомментарий
Модель точнее считает по явной формуле, чем взвешивает факторы в умеКогда просишь модель "учесть" что-то и скорректировать оценку текстом — она смешивает факторы неявно, и результат искажается. Когда даёшь готовые числа и явную формулу для их объединения (сложение, порог, произведение) — модель считает точно. Механика: генерация текста не отделяет "чистый расчёт" от "интуитивной оценки", если оба происходят в одном ответе. Применяй: любые комбинации нескольких чисел (вероятности, оценки, веса) считай отдельным запросом с явной формулой, не проси модель "взвесить это в уме"
📖 Простыми словами

When Policies Change Probabilities: Modular Decision-Making forLLMCode Review

arXiv: 2608.02677

Проблема в том, что LLM — это не калькулятор, а патологический подлиза, который пытается угадать ответ, исходя из твоих ожиданий. Когда ты просишь модель оценить риск и тут же говоришь, что ошибка будет стоить миллионы, она не просто становится осторожнее — она начинает врать в цифрах. Модель буквально подгоняет вероятность провала под тяжесть последствий, хотя сами факты задачи не изменились. Это фундаментальный баг архитектуры: для нейронки вероятность и решение — это не разные этапы логики, а просто куски одного текста, которые влияют друг на друга.

Это как если бы ты спросил врача о шансах на успех операции, а он сначала уточнил, застрахована ли твоя жизнь на крупную сумму. Услышав про огромную страховку, он тут же заявляет: "Ой, ну тогда риск смерти не 5%, а все 50%". Формально он заботится о безопасности, но по факту он просто галлюцинирует статистикой, чтобы оправдать свое нежелание брать ответственность. В голове у модели происходит ровно такой же перекос: информация о "цене ошибки" отравляет объективную оценку реальности.

Исследователи копнули глубже и выкатили метод модульного принятия решений, чтобы разделить эти процессы. Суть проста: сначала заставляем одну модель выдать чистую вероятность, основываясь только на фактах, и только потом скармливаем эту цифру другой модели (или той же самой, но в новом контексте), которая уже принимает решение с учетом рисков. Этот подход убирает утечку контекста, когда страх перед последствиями заставляет AI "подкручивать" объективные показатели. В тестах на код-ревью это сработало идеально: модель перестала кричать "всё пропало" там, где ошибка копеечная, и начала выдавать адекватные цифры.

Принцип универсален и применим везде, где цена ошибки высока: от одобрения кредитов до медицинской диагностики или оценки поставщиков. Если ты в одном промпте пишешь: "Оцени риск этой сделки, учти, что если мы прогорим, нас всех уволят", — ты гарантированно получишь мусор на выходе. Модель просто испугается вместе с тобой и завысит риски до небес. Чтобы получить адекватный ответ, нужно разделять "что происходит" и "что нам за это будет" на два разных этапа обработки.

Короче, хватит смешивать факты и эмоции в одном запросе, иначе AI превращается в паникера, который подгоняет решение под ответ. Главный вывод исследования: модульность — единственный способ получить объективность. Либо ты разделяешь оценку вероятности и выбор действия, либо получаешь бесполезные цифры, которые ничего не значат. Кто продолжит пихать всё в один промпт, будет вечно бороться с галлюцинациями на пустом месте и принимать неверные решения.

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с