3,583 papers
arXiv:2610.19872 75 14 окт. 2026 г. FREE

RCCM: парное сравнение промптов показывает, кого промпт спасает, а кого ломает

КЛЮЧЕВАЯ СУТЬ
Один и тот же промпт «рассуждай кратко» на одной модели исправил 20 ответов и испортил 5. На другой исправил 5 и испортил 37. Метод RCCM позволяет узнать, помогает ли новый промпт именно вашей модели, и за счёт чего. Общая точность этого не покажет. RCCM сравнивает два промпта по одним и тем же вопросам и считает «спасённых» и «испорченных». Отдельно он смотрит, дошёл ответ до конца или обрезан по лимиту длины. Так видно, что у Phi выигрыш дала не краткость, а то, что 12 из 13 раньше обрезанных ответов стали верными.
Адаптировать под запрос
⚡

TL;DR

Один и тот же промпт на разных моделях может дать противоположный результат. Просьба «рассуждай кратко» (Chain of Draft, то есть короткие черновые шаги вместо длинного рассуждения) на одной модели исправила 20 неверных ответов и испортила 5. На другой исправила 5 и испортила 37. RCCM сравнивает два промпта по одним и тем же вопросам и считает, сколько ответов промпт спас (было неверно, стало верно) и сколько испортил (было верно, стало неверно). Для этого нужно ещё смотреть, как закончился ответ: дошёл до конца или обрезан по лимиту длины.

Главная боль: общая точность скрывает происходящее. У двух промптов может быть одинаковый результат, например 88 из 120. При этом один из них исправил десять ошибок и испортил десять верных ответов. Вы видите «без изменений», а на деле поменялась пятая часть ответов. Ещё коварнее другое. У одной из моделей «краткий» промпт помог не потому, что рассуждение стало короче. Он помог потому, что ответ перестал обрываться на полуслове. Модель упиралась в лимит токенов, не успевала выдать итог, и проверка засчитывала ей ошибку.

Метод простой: прогнать два промпта на одной и той же выборке своих вопросов с известным ответом, разложить результат на «спасённые / испорченные» и отдельно посмотреть, где ответы обрезались. Затем проверить альтернативное объяснение: оставить модели место под итоговый ответ. Если выигрыш даёт и это, дело было не в краткости.

🔬

Схема метода

ШАГ 1: Взять 30–60 своих вопросов с известным верным ответом
ШАГ 2: Прогнать промпт A (базовый) и промпт B (новый) на ОДНОЙ модели, с одним лимитом длины
ШАГ 3: По каждому вопросу: спасён (A✗ → B✓) / испорчен (A✓ → B✗) / оба верно / оба неверно
ШАГ 4: Отметить, как закончился ответ: дошёл до конца или обрезан по лимиту
ШАГ 5: Проверить, что засчитанный ответ — итоговый, а не промежуточное число из рассуждения
ШАГ 6: Проверить альтернативу: оставить место под ответ («сначала рассуждай, но в конце обязательно дай итог»)

Шаги 1–5 делаются в чате или в таблице. Шаг 6 в статье делали программой с двумя вызовами модели. В чате его можно приблизить инструкцией (см. адаптации).

🚀

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

Задача: Вы руководите небольшой командой продавцов на Ozon. Аналитик нашёл в интернете «волшебный» промпт: «рассуждай кратко, не больше трёх строк». На ChatGPT он, говорят, ускоряет расчёты юнит-экономики. Вы хотите поставить его в локальную модель (Qwen через Ollama), которая считает маржинальность по 40 тестовым SKU. Перед внедрением нужно понять, не сломает ли он расчёты.

Для проверки вы прогнали 40 SKU двумя промптами и собрали таблицу: SKU, верная маржа, ответ A (обычный), ответ B (краткий), пометка «обрезан/не обрезан».

Промпт:

Ниже таблица результатов двух промптов на одной модели.
Колонки: номер, эталонный ответ, ответ A (обычный промпт), ответ B («рассуждай кратко, не больше трёх строк»), статус A (дошёл до конца / обрезан), статус B.

Для каждой строки определи:
1. Верен ли A, верен ли B (сравни с эталоном по числу, допускай округление до рубля).
2. Категорию: «спасён» (A неверно → B верно), «испорчен» (A верно → B неверно), «оба верно», «оба неверно».

Затем выведи:
- Сколько спасённых, сколько испорченных, итог (спасённые − испорченные) в процентных пунктах.
- Отдельную таблицу: сколько ответов обрезано у A и у B, и как категории распределяются по статусам «обрезан/не обрезан».
- Список строк, где засчитанное число похоже на промежуточное значение из рассуждения, а не на итоговый ответ.
- Вывод в 3 предложениях: помогает ли B на этой модели, и за счёт чего (краткость или то, что ответ перестал обрезаться).

Данные:
{таблица}

Результат: Модель вернёт размеченную таблицу по каждому SKU и сводку: сколько ответов спасено и испорчено, чистый итог. Отдельно будет видно, где ответы обрезаны. Затем она выдаст список подозрительных «ответов», взятых из середины рассуждения, и короткий вывод. Если окажется, что «краткий» промпт ломает расчёты, вы узнаете это до внедрения, а не из жалоб на неверную маржу.

🧠

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

Слабость. Средняя точность усредняет всё. Плюс на одних вопросах и минус на других дают «ноль» в сводке, и вы не видите, что поменялось. Вторая слабость: промпт просит одно (кратко), а модель делает другое. Одна модель в тесте уложилась в три строки на 57 из 60 вопросов. Другая не уложилась ни разу, потому что у неё рассуждение идёт в отдельном «мыслительном» блоке. Выигрыш при этом всё равно был, но не из-за краткости.

Сильная сторона. Сравнение «спасён / испорчен» по одним и тем же вопросам считается просто и показывает механику. Часть выигрыша у Phi пришлась на ответы, которые раньше обрывались по лимиту длины, а теперь доходили до конца. Из 60 вопросов 13 перешли из «обрезан» в «завершён», и 12 из них стали верными. Это почти весь выигрыш.

Как метод обходит слабость. Он разделяет три вещи: что промпт просил, что модель сделала и что проверка засчитала. Когда это видно по отдельности, можно понять причину выигрыша. Это важно, потому что «краткость помогает» и «ответ перестал обрезаться» требуют разных действий.

Рычаги управления: - Размер выборки: 30 вопросов дают грубую картину, 60 и больше надёжнее. В статье даже на 60 интервалы широкие. - Лимит длины: при увеличении лимита эффект «краткого» промпта у Phi уменьшался. Проверяйте на том лимите, который у вас в проде. - Критерий засчёта: ужесточите правило (число только из итоговой строки) и увидите, сколько выигрыша было мнимым. - Резерв под ответ: добавьте требование «итог в конце, даже если не закончил» и сравните с «кратким» промптом.

📋

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

Промпт для самого теста (оригинальный «краткий» запрос из исследования плюс требование итогового ответа):

Реши задачу. Рассуждай не более чем в трёх коротких строках.
Затем на отдельной строке напиши: «Ответ: {число}».

Задача: {задача}

Промпт для разбора результатов:

Ниже результаты двух промптов на одной модели.
Колонки: {номер}, {эталон}, {ответ_A}, {ответ_B}, {статус_A}, {статус_B}.

Для каждой строки определи верность A и B и категорию:
«спасён» (A✗→B✓), «испорчен» (A✓→B✗), «оба верно», «оба неверно».
Выведи: число спасённых и испорченных, чистый итог в п.п.;
таблицу «категория × обрезан/не обрезан»;
список строк, где засчитанное число могло быть промежуточным;
вывод в 3 предложениях: помогает ли B и за счёт чего.

Данные:
{таблица}

Что подставлять: {задача} — ваш вопрос с проверяемым числовым ответом. {эталон} — верный ответ. {ответ_A}, {ответ_B} — ответы вашей модели на два промпта. {статус} — «дошёл до конца» или «обрезан по лимиту».

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

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

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

LLM спросит, какие у вас задачи с известным верным ответом, какой лимит длины стоит в проде и как вы определяете «правильный» ответ. Эти данные нужны, чтобы разделять «спасён» и «испорчен» и отличать обрезанные ответы от завершённых. Она возьмёт паттерн из шаблона и соберёт таблицу под вашу задачу.

⚠️

Ограничения

⚠️ Модели и задачи: Всё проверено на небольших локальных моделях (3–7 млрд параметров) и на математике на английском. Для ChatGPT, Claude и Gemini в статье ничего не проверено, перенос выводов на них остаётся догадкой.

⚠️ Малая выборка: Главные выводы по Phi и Qwen получены на 60 вопросах, причём повторные запуски шли на тех же вопросах. Это не 180 независимых проверок. Интервалы широкие.

⚠️ Выигрыш мог быть мнимым: Автоматическая проверка засчитывала число даже из «мыслительного» блока. Когда авторы проверили, что модель действительно пришла к верному итоговому ответу, выигрыш Phi сократился и перестал быть статистически надёжным. Проверял один автор вручную.

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

⚠️ Нужен эталон: Метод работает там, где есть заранее известный верный ответ. Для творческих задач «спасён / испорчен» не посчитать.

🔍

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

Идея была простой: вместо одной цифры точности сравнить ответы на одни и те же вопросы. Сначала взяли пять локальных моделей, девять стратегий рассуждения и 120 математических вопросов. Стратегии: от обычного Chain of Thought и «чернового» Chain of Draft до схем с повторной проверкой и исправлением. Потом проверили шесть вариантов на 500 вопросах MATH500 на трёх моделях при общем лимите длины.

Самое неожиданное нашлось в первом же сравнении. Chain of Draft помог Phi (с 83 до 98 верных) и сильно навредил Qwen (с 88 до 56). Рейтинги стратегий у разных моделей почти не совпадали: средняя корреляция около 0,4, а у пары Gemma и Phi даже отрицательная. На общем лимите в 2048 токенов Chain of Draft проиграл обычному Chain of Thought на всех трёх моделях MATH500.

Затем авторы задались вопросом: почему у Phi краткость помогла? Они взяли ещё 60 новых вопросов и прогнали всё повторно. Выигрыш Phi повторился, а Qwen стабильно терял очень много. Дальше шёл контроль: резервирование 128 токенов под ответ вместо краткости. Он дал примерно такой же выигрыш, и разница с «кратким» промптом не прошла проверку на значимость. Ручной разбор тоже снизил оценку выигрыша Phi: с +13 п.п. по автоматической сверке до +7 п.п., статистически неподтверждённых. Вывод для практики: приписывать выигрыш краткости нельзя, пока не исключены обрезание ответа и ложные засчёты.

💡

Адаптации и экстраполяции

🔧 Техника: резерв под ответ в обычном чате → меньше обрывов.

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

Рассуждай не более {N} строк. Если чувствуешь, что не успеваешь закончить, остановись и сразу выдай «Ответ: ...» с лучшей оценкой.

Проверьте её тем же парным тестом против обычного промпта.

Экстраполяция: парный тест системных инструкций агента.

Тот же подход можно применять к двум версиям системного промпта или файла инструкций агента (CLAUDE.md, AGENTS.md). Это тоже моя идея, не из статьи.

Вот 20 задач с известным верным результатом, и результаты агента с инструкцией v1 и v2.
Разметь каждую задачу как «спасена», «испорчена», «оба верно», «оба неверно».
Покажи, какие типы задач инструкция v2 портит, даже если общий итог не изменился.

Так вы увидите, что новая инструкция ломает у конкретных типов задач, даже когда общая «успешность» не изменилась.

🔗

Ресурсы

  • RCCM: Diagnosing Gains and Harms in Reasoning-Prompt Transfer — Yuqi Zhang, Di Zhang (университет в предоставленном тексте не указан).
  • Chain of Draft (Xu et al., 2025) — «черновые» краткие шаги рассуждения.
  • Sun et al. (2025) — контроль «резерв под ответ» при жёстком лимите токенов.
  • The Format Tax (Lee et al., 2026) — разделение требований к формату и правильности ответа.
  • Наборы данных: GSM8K, MATH, MATH500 (PRM800K). Запуск моделей: Ollama.

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

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

Один и тот же промпт «рассуждай кратко» на одной модели исправил 20 ответов и испортил 5. На другой исправил 5 и испортил 37. Метод RCCM позволяет узнать, помогает ли новый промпт именно вашей модели, и за счёт чего. Общая точность этого не покажет. RCCM сравнивает два промпта по одним и тем же вопросам и считает «спасённых» и «испорченных». Отдельно он смотрит, дошёл ответ до конца или обрезан по лимиту длины. Так видно, что у Phi выигрыш дала не краткость, а то, что 12 из 13 раньше обрезанных ответов стали верными.

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

Метод разделяет три вещи: что промпт просил, что модель сделала и что проверка засчитала. 1. Каждый вопрос попадает в одну из четырёх корзин: «спасён» (было неверно, стало верно), «испорчен» (наоборот), «оба верно», «оба неверно». 2. Каждый ответ получает пометку: дошёл до конца или обрезан по лимиту. 3. Проверяется, что засчитано итоговое число, а не промежуточное из рассуждения. Представь два одинаковых счёта в банке: 88 из 120. У одного движений нет. У другого десять приходов и десять расходов. Сальдо одно, а жизнь разная. Итог скрывает движения, а RCCM показывает именно их.

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

Средняя точность складывает плюсы и минусы. Десять спасённых и десять испорченных дают «без изменений». При этом поменялась пятая часть ответов. Вторая ловушка: промпт просит одно, а модель делает другое. Qwen уложилась в три строки на 57 из 60 вопросов. Phi не уложилась ни разу, потому что рассуждает в отдельном «мыслительном» блоке. Выигрыш у неё всё равно был, но не из-за краткости. Причина в другом. Из 60 вопросов 13 перешли из «обрезан» в «завершён», и 12 из них стали верными. Модель не умнела, она просто успевала написать итог до лимита. С ростом лимита эффект «краткого» промпта у Phi падал. И критика. Когда авторы проверили, что модель дошла до верного итога, выигрыш Phi сжался и перестал быть статистически надёжным. Проверял один человек вручную. Выборка 60 вопросов, интервалы широкие.

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

Выбор промпта под конкретную модель → особенно когда промпт нашли в интернете и он «работал на ChatGPT», а вы ставите его в локальную модель. Подходит для задач с проверяемым числовым ответом: расчёты, математика, извлечение чисел. Лимит длины должен быть такой же, как в вашей рабочей системе. НЕ подходит для творческих задач (тексты, идеи): там нет эталона, и «спасён / испорчен» не посчитать. Выводы статьи проверены только на небольших локальных моделях (3–7 млрд параметров) и английской математике. Для ChatGPT, Claude и Gemini это догадка.

Мини-рецепт

1. Собери вопросы: 30–60 задач с известным верным ответом. На 30 картина грубая, на 60 надёжнее.
2. Прогони два промпта: на одной модели и с одним лимитом длины. Лимит возьми из рабочей системы.
3. Запиши ответы в таблицу: номер, эталон, ответ A, ответ B.
4. Отметь обрезанные: дошёл ответ до конца или оборвался на полуслове.
5. Разложи по корзинам: спасён, испорчен, оба верно, оба неверно. Посчитай разницу в процентных пунктах.
6. Поймай мнимый выигрыш: найди ответы, где засчитано число из середины рассуждения. Ужесточи правило: только итоговая строка «Ответ: ...».
7. Проверь альтернативу: добавь в промпт «рассуждай, но в конце обязательно дай итог». Если выигрыш даёт и это, дело было не в краткости.
8. Реши: внедряй промпт только если чистый итог положителен и не держится на обрезанных ответах.

Примеры

[ПЛОХО] : Какой промпт точнее: обычный или «рассуждай кратко»? Вот результаты, у обоих 88 из 120.
[ХОРОШО] : Ниже таблица двух промптов на одной модели. Колонки: номер, эталон, ответ A, ответ B, статус A, статус B (дошёл до конца / обрезан). Для каждой строки определи верность A и B (округление до рубля допустимо) и категорию: спасён, испорчен, оба верно, оба неверно. Выведи: сколько спасённых и испорченных, чистый итог в процентных пунктах, таблицу «категория × обрезан/не обрезан», список строк, где засчитанное число похоже на промежуточное. В конце дай вывод в 3 предложениях: помогает ли B и за счёт чего, краткости или того, что ответ перестал обрезаться. Данные: {таблица} В первом случае «88 против 88» выглядит как ничья. Во втором видно, что промпт мог исправить десять ошибок и сломать десять верных расчётов маржи. Или что он помог только потому, что итог влез в лимит.
Источник: RCCM: Diagnosing Gains and Harms in Reasoning-Prompt Transfer
ArXiv ID: 2610.19872 | Сгенерировано: 2026-10-15 08:00

Проблемы LLM

ПроблемаСутьКак обойти
Промпт, который помог на одной модели, на другой может навредитьБерёшь «волшебный» промпт из интернета. Он хорошо работал на другой модели. На твоей он исправляет часть ответов, но портит другие. Иногда портит больше, чем исправляет. Общая оценка этого не показывает. Два промпта могут дать одинаковую точность. При этом у одного поменялась пятая часть ответов: десять ошибок исправлено, десять верных ответов испорченоНе доверяй чужому результату. Прогони старый и новый промпт на одних и тех же 30–60 своих вопросах с известным ответом. По каждому вопросу ставь метку: «спасён» (было неверно, стало верно), «испорчен» (было верно, стало неверно), «оба верно», «оба неверно». Смотри на разницу между спасёнными и испорченными. Общий процент не смотри
Ответ обрывается по лимиту длины и засчитывается как ошибкаМодель рассуждает долго и упирается в лимит. Итог не выдан. Проверка считает это ошибкой. Новый промпт может «помочь» только тем, что ответ стал помещаться в лимит. Тогда дело не в качестве рассуждений. Ты думаешь, что нашёл хороший приём. На деле ты просто освободил место под итогДля каждого ответа записывай, как он закончился: дошёл до конца или обрезан. Смотри, откуда взялся выигрыш: из обрезанных ответов или из завершённых. Проверяй на том лимите длины, который стоит у тебя в работе. При другом лимите эффект может исчезнуть

Методы

МетодСуть
Парное сравнение промптов: спасённые и испорченные ответыВозьми 30–60 вопросов с проверяемым ответом. Прогони оба промпта на одной модели с одним лимитом длины. Попроси модель или таблицу разметить каждую строку: спасён / испорчен / оба верно / оба неверно. Дополнительно отметь: ответ дошёл до конца или обрезан. Посчитай (спасённые − испорченные) в процентных пунктах. Почему работает: среднее складывает плюсы и минусы и показывает ноль. Парное сравнение по одним и тем же вопросам видит, кого промпт спасает, а кого ломает. Строгий засчёт: требуй в конце строку Ответ: {число} и засчитывай только её. Иначе в зачёт может попасть промежуточное число из рассуждения, и выигрыш окажется мнимым. Когда применять: выбираешь между двумя промптами, переносишь промпт на другую модель, меняешь лимит длины. Когда не работает: творческие задачи без эталонного ответа, выборка меньше 30 вопросов. На 60 вопросах интервалы всё равно широкие, так что делай выводы осторожно
Контрольный промпт: проверка, из-за чего пришёл выигрышЕсли новый промпт «кратко» дал плюс, проверь другое объяснение. Дай модели третий вариант: Сначала рассуждай как обычно, но в конце обязательно напиши итог, даже если не закончил. Сравни его с «кратким». Если выигрыш такой же, дело было не в краткости. Просто ответу оставили место. Почему работает: два разных приёма могут давать один и тот же плюс. Контрольный вариант убирает одну причину и показывает, что осталось. Когда применять: подозреваешь, что причина выигрыша другая, чем заявлено. Ограничение: в чате это лишь приближение. Точная проверка резервирует место под итог программно, отдельным вызовом модели
📖 Простыми словами

RCCM: Diagnosing Gains and Harms in Reasoning-PromptTransfer

arXiv: 2610.19872

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

Это как залить авиационное топливо в дизельный трактор в надежде, что он помчит как ракета. Формально горючка элитная, но поршни просто расплавятся. Чужой промпт грубо влезает во внутренние цепочки рассуждений конкретной модели и ломает логику на корню, выдавая полный бред вместо красивой лаконичности.

Исследователи взяли популярный метод Chain of Draft с установкой «рассуждай кратко». На первой модели он исправил 20 ошибок и испортил 5, а на второй — исправил 5 и убил 37. Средняя точность тут врёт как дышит: плюс на минус даёт красивый ноль в отчёте. Фреймворк RCCM вскрывает эту подлянку: он сравнивает промпты на одних и тех же вопросах и считает, сколько ответов промпт реально спас, а сколько пустил под откос.

Тестировали на тестах рассуждений, но принцип универсален. Считаешь юнит-экономику для Ozon, настраиваешь клиентский саппорт или анализируешь базу данных — при любой смене движка всё рушится. Переносишь отлаженные промпты из ChatGPT в локальный Qwen через Ollama — готовься к тому, что проверенная инструкция превратится в тыкву без поштучной калибровки.

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

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

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

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