3,583 papers
arXiv:2605.03618 72 5 мая 2026 г. FREE

Промпт-перегрузка: почему стек правил ломает LLM — и как лечит пошаговое извлечение

КЛЮЧЕВАЯ СУТЬ
Пять правил в одном промпте — модель тихо нарушает третье. Шесть правил — забывает второе. У всех LLM есть конечный «бюджет послушания»: при перегрузке ограничениями модель сама решает что соблюдать — без предупреждения и без объяснений. Метод extract-then-generate позволяет соблюдать все ограничения разом — даже когда их шесть, восемь, десять. Разбиваешь один перегруженный запрос на два целевых: первый только извлекает нужные элементы из исходника, второй генерирует результат строго из них. Каждый промпт короткий, каждое правило выполняется полностью — без невидимых компромиссов.
Адаптировать под запрос

TL;DR

Когда в одном промпте слишком много правил («не короче», «только точные термины», «третье лицо», «без исправления опечаток», «только одно предложение»), модель начинает сбоить — игнорирует часть инструкций, пропускает ключевые слова, нарушает формат. Исследование названо "constraint overload": модель буквально перегружается ограничениями и начинает выбирать, какие соблюдать.

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

Решение — пошаговая декомпозиция (extract-then-generate): сначала один запрос извлекает нужные элементы (термины, ключевые факты, структуру), потом другой — генерирует финальный результат на основе уже извлечённого. Два коротких целевых запроса бьют один длинный перегруженный.


🔬

Схема метода

ШАГ 1: Извлечение → отдельный запрос
  Задача: выделить ключевые элементы из исходного текста
  Вывод: список терминов / фактов / структур (БЕЗ генерации)

ШАГ 2: Генерация → отдельный запрос
  Задача: создать финальный текст, используя элементы из Шага 1
  Вывод: готовый результат с соблюдением всех ограничений

Два запроса подряд. Сначала извлечь — потом сгенерировать на основе извлечённого.


🚀

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

Задача: Клиент Wildberries прислал 600-словный голосовой монолог с пожеланиями к карточке товара. Нужно написать SEO-заголовок — строго до 15 слов, с сохранением точных названий характеристик, которые клиент назвал сам.

Промпт (Шаг 1 — Извлечение):

Прочитай описание от клиента и выпиши ТОЛЬКО ключевые характеристики товара — 
точными словами клиента, без перефразирования. 
Формат: маркированный список.

Описание клиента:
[вставь текст монолога]

Промпт (Шаг 2 — Генерация заголовка):

Используй ТОЛЬКО термины из списка ниже. Напиши заголовок для карточки Wildberries.
Требования:
— строго до 15 слов
— начни с главной характеристики
— не добавляй ничего, чего нет в списке

Список терминов: [вставь результат Шага 1]

Результат: Шаг 1 вернёт список точных формулировок клиента — без добавлений от модели. Шаг 2 создаст заголовок строго из этих слов, не превышая лимит. Модель не будет «придумывать» характеристики, потому что работает с готовым ограниченным материалом, а не со всем монологом сразу.


🧠

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

Слабость LLM: Модель генерирует текст последовательно и удерживает все инструкции одновременно в одном «рабочем пространстве». Чем больше правил — тем сложнее их одновременно соблюдать. Модель начинает неявно расставлять приоритеты сама: какие-то правила выполняет, какие-то незаметно нарушает. Без злого умысла — просто ресурс конечен.

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

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

Рычаги управления: - Количество шагов — если задача очень сложная, добавь промежуточный шаг (например, «классифицируй извлечённые элементы» перед генерацией) - Детализация Шага 1 — чем точнее инструкция на извлечение, тем более предсказуем результат Шага 2 - Формат вывода Шага 1 — список, JSON, таблица — выбирай под задачу; структурированный вывод легче передать в Шаг 2


📌

Дополнительные техники из исследования

Помимо основной декомпозиции, авторы применяли три техники, каждая из которых работает отдельно:


📌

Техника 1: Скрытое предварительное мышление (Implicit Pre-computation)

Вместо того чтобы просить модель «думать вслух» (Chain-of-Thought), попроси её молча определить нужные элементы перед тем как писать финальный ответ.

Зачем: Цепочка рассуждений в ответе «загрязняет» финальный текст — модель начинает объяснять вместо того чтобы делать. Скрытое мышление даёт точность CoT без его балласта в выводе.

Как добавить в промпт:

Прежде чем отвечать, молча определи [что нужно найти/понять]. 
Используй это в ответе, но не включай в вывод — только финальный результат.

📌

Техника 2: LLM-as-a-Judge с приоритетами

Запусти несколько вариантов промпта (или несколько моделей) → попроси отдельного LLM выбрать лучший по явному списку критериев в порядке приоритета.

Зачем: Устраняет «повезло/не повезло» при генерации. Судья смотрит на все варианты сразу и выбирает по твоим критериям, а не по своим.

Как задать критерии судье:

Оцени варианты ответов по критериям в порядке приоритета:
1. [Главный критерий — факты/точность/соответствие исходнику]
2. [Второй критерий — полнота/охват]
3. [Третий критерий — стиль/краткость]

Выбери лучший вариант и объясни почему.

Варианты:
[Вариант А]: ...
[Вариант Б]: ...
[Вариант В]: ...

Важно: порядок критериев имеет значение. Что написал первым — то судья приоритизирует.


📌

Техника 3: Структурные теги для задач выравнивания

Когда модель должна связать части одного текста с частями другого (например, тезисы ответа с источниками), заранее пронумеруй каждое предложение тегами.

Как это выглядит:

Источник:
[1] Первое предложение источника.
[2] Второе предложение источника.

Ответ:
[A1] Первое утверждение ответа.
[A2] Второе утверждение ответа.

Задача: для каждого [A*] укажи какие [*] из источника его подтверждают.

Где применять: разбор документов, проверка аргументов, fact-checking, анализ контрактов — везде, где нужно явно связать утверждение с доказательством.


📋

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

📌

Двухшаговая декомпозиция

Шаг 1:

Прочитай {исходный текст} и извлеки {что именно нужно извлечь}.
Формат вывода: {список / таблица / JSON}.
Не перефразируй — только точные формулировки из текста.

Текст: {вставь текст}

Шаг 2:

Используй ТОЛЬКО элементы из списка ниже.
Напиши {что нужно создать}.
Ограничения: {лимит слов / формат / стиль}.
Не добавляй ничего, чего нет в списке.

Список элементов: {вставь результат Шага 1}

Плейсхолдеры: - {исходный текст} — что анализируем (бриф, статья, документ) - {что именно нужно извлечь} — ключевые слова, факты, требования, аргументы - {список / таблица / JSON} — выбери удобный формат для передачи в Шаг 2 - {что нужно создать} — заголовок, резюме, ТЗ, письмо - {лимит слов / формат / стиль} — все ограничения финального текста


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

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

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

LLM спросит что нужно извлечь и что создать на выходе — потому что это определяет что идёт в Шаг 1, а что в Шаг 2. Она возьмёт паттерн и адаптирует под твою ситуацию.


⚠️

Ограничения

⚠️ Простые задачи: Если задача короткая и понятная — декомпозиция избыточна. Два запроса вместо одного оправданы когда в промпте уже 4+ правил или когда качество страдает.

⚠️ Задачи выравнивания (структурные теги): Работает хорошо для точного цитирования, но модель может ошибаться когда утверждение косвенно, а не прямо поддерживается источником.

⚠️ LLM-as-a-Judge для генеративных задач: В их эксперименте судья добавил меньше 0,1 балла к лучшей одиночной модели — оверхед не всегда окупается. Используй когда нужна максимальная надёжность, а не для рутинных задач.

⚠️ Открытые модели нестабильны: Проприетарные модели (Claude, GPT, Gemini) значительно устойчивее к вариациям промпта. Открытые — чувствительнее к формулировкам и чаще выдают непарсируемые ответы. Для критичных задач — проприетарные.


🔍

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

Команда участвовала в соревновании ArchEHR-QA 2026 — задача: отвечать на вопросы пациентов по их медицинским картам, без обучения на специализированных данных. Они взяли только промптинг — никакого дообучения. Протестировали 5 проприетарных моделей (Claude Sonnet 4.5, GPT-4.1, Gemini 2.5 Flash, Grok 4.1, Gemini 3 Flash) и несколько открытых (MedGemma 27B, Qwen 3, Llama).

Для каждой подзадачи — от 7 до 11 вариантов промптов. Сначала все гипотезы проверяли на 20 примерах dev-сета, потом лучшие — на скрытом тесте (47–147 примеров).

Любопытный результат: Task Decomposition стабильно побеждала прямую генерацию с ограничениями — почти у всех протестированных моделей, не только у лучших. Это редкость в исследованиях промптинга — обычно «лучший промпт» зависит от модели. Здесь принцип оказался универсальным.

Неожиданность: для задачи генерации (Subtask 3) промпт почти не влиял на результат — важнее был выбор модели. Но для задачи согласования (Subtask 4) — наоборот, именно few-shot структура примеров давала большой прирост. Вывод: чем «творческее» задача, тем больше решает модель; чем «точнее» — тем больше решает промпт.

Общий бюджет на API за всё соревнование: $109 — вполне посильно для серьёзной экспериментальной работы.


💡

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

📌

🔧 Адаптация: Скрытое мышление + Декомпозиция вместе

Объедини обе техники: в Шаге 1 попроси модель думать молча, в Шаге 2 — генерировать только финал.

Шаг 1:
Прочитай текст. Молча определи главные аргументы. 
Выведи только список: [аргумент 1], [аргумент 2]...

Шаг 2:
Напиши вывод на основе этих аргументов.
Строго до {N} слов. Только то, что есть в списке.

Получаешь точность мышления без «шума» рассуждений в финальном тексте.


⚠️

🔧 Адаптация: Персона-аудитор + Отрицательные ограничения

Для задач где нужно чтобы модель не «творила» — используй связку жёсткой персоны и явных запретов:

Ты — строгий редактор фактических текстов. 
НЕ додумывай, НЕ обобщай, НЕ интерпретируй, НЕ добавляй контекст.
Только то, что явно написано в тексте.

Задача: {задача}
Текст: {текст}

Особенно работает при саммаризации договоров, технических условий, юридических текстов — где «творческая» интерпретация меняет смысл.


🔗

Ресурсы

Название работы: BIT.UA-AAUBS at ArchEHR-QA 2026: Evaluating Open-Source and Proprietary LLMs via Prompting in Low-Resource QA

Код, промпты, результаты: https://github.com/bioinformatics-ua/ArchEHR-QA-2026

Авторы: Richard A. A. Jonker, Alexander Christiansen, Alexandros Maniatis, Rúben Garrido, Rogério Braunschweiger de Freitas Lima, Roman Jurowetzki, Sérgio Matos

Организации: Aalborg University Business School (Дания), IEETA/DETI/LASI, University of Aveiro (Португалия)

Референсы: Chain-of-Thought (Wei et al., 2022), LLM-as-a-Judge (Zheng et al., 2023), Task Decomposition (Zhou et al., 2023), ICL (Brown et al., 2020)


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

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

Пять правил в одном промпте — модель тихо нарушает третье. Шесть правил — забывает второе. У всех LLM есть конечный «бюджет послушания»: при перегрузке ограничениями модель сама решает что соблюдать — без предупреждения и без объяснений. Метод extract-then-generate позволяет соблюдать все ограничения разом — даже когда их шесть, восемь, десять. Разбиваешь один перегруженный запрос на два целевых: первый только извлекает нужные элементы из исходника, второй генерирует результат строго из них. Каждый промпт короткий, каждое правило выполняется полностью — без невидимых компромиссов.

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

Модель хорошо справляется с одной чёткой задачей. «Найди все ключевые термины» — без проблем. «Напиши текст строго из этих терминов» — тоже. Но «найди термины И напиши текст строго из них И соблюди длину И сохрани голос автора» — начинается деградация. Два изолированных шага убирают конкуренцию между инструкциями: Шаг 1 — только извлечь (факты, термины, требования, структуру из исходника). Шаг 2 — только создать финальный текст из уже извлечённого. Каждый шаг получает полное «внимание» модели — не остатки от пяти других задач.

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

LLM генерирует текст последовательно и держит все инструкции в одном рабочем пространстве. Чем их больше — тем выше конкуренция. Модель неявно расставляет приоритеты: какие-то правила выполняет, какие-то незаметно сбрасывает. Ты не видишь какие. Результат внешне выглядит нормально — но третье ограничение нарушено. Декомпозиция убирает саму конкуренцию — в каждом шаге у модели одна задача, и она её делает без оглядки на остальные. Дополнительный бонус: результат Шага 1 становится «якорем» для Шага 2 — модель не придумывает, а работает с готовым ограниченным материалом.

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

Написание карточек товаров с точными характеристиками клиента → особенно когда нужно сохранить дословные формулировки, а не пересказ. Генерация технических заданий из брифов → когда бриф длинный и требования разрозненные по тексту. Разбор документов и анализ договоров → когда важно привязать каждое утверждение к конкретному источнику. Резюме с жёсткими ограничениями по объёму и стилю. НЕ подходит для простых задач — если одно-два условия и всё работает нормально, два запроса только замедлят.

Мини-рецепт

1. Проверь промпт: больше 3-4 ограничений одновременно — пора делить на шаги.
2. Напиши Шаг 1 — только извлечение: один запрос, одна задача: выпиши нужные элементы из исходника точными словами. Никакой генерации. Задай формат вывода — список, таблица или JSON — чтобы удобно передать в следующий шаг.
3. Напиши Шаг 2 — только генерация: новый запрос. Передай результат из Шага 1 как входной материал. Все ограничения финального текста — сюда. Явно запрети добавлять что-то, чего нет в списке.
4. Если задача сложная — добавь промежуточный шаг между извлечением и генерацией. Например: «классифицируй по группам» или «расставь по приоритету» перед финальным написанием.

Примеры

[ПЛОХО] : Прочитай монолог клиента и напиши SEO-заголовок для Wildberries. До 15 слов. Только точные характеристики клиента. Начни с главной. Без добавлений от себя. Без союзов.
[ХОРОШО] : Шаг 1: Прочитай описание клиента. Выпиши ТОЛЬКО характеристики товара — точными словами, без перефразирования. Формат: маркированный список. Текст: [вставь монолог] Шаг 2: Используй ТОЛЬКО термины из списка ниже. Напиши заголовок для карточки Wildberries: строго до 15 слов, начни с главной характеристики, не добавляй ничего, чего нет в списке. Список терминов: [результат Шага 1]
Источник: BIT.UA-AAUBS at ArchEHR-QA 2026: Evaluating Open-Source and Proprietary LLMs via Prompting in Low-Resource QA
ArXiv ID: 2605.03618 | Сгенерировано: 2026-05-06 05:31

Проблемы LLM

ПроблемаСутьКак обойти
Много правил в одном запросе — модель ломает часть из нихДобавляешь четвёртое правило к трём уже написанным. Модель начинает соблюдать новое — и незаметно нарушает одно из старых. Она не показывает какое правило проигнорировала. Финальный текст выглядит нормально, но часть ограничений не выполнена. Проблема не в модели — так работают все. Рабочее пространство конечно. Чем больше условий одновременно — тем выше вероятность что какое-то не выполнитсяРазбей на два запроса. Первый — только извлечь нужные элементы. Второй — создать текст строго из извлечённого. Каждый запрос требует соблюдения меньшего числа правил. Конкуренции между ними нет

Методы

МетодСуть
Разбивка на два запроса — сначала извлечь, потом создатьЗапрос 1: Прочитай {текст} и извлеки {что нужно}. Формат: список. Не перефразируй — только точные формулировки из текста. Запрос 2: Используй ТОЛЬКО элементы из списка ниже. Напиши {что нужно создать}. Ограничения: {лимит / формат}. Не добавляй ничего, чего нет в списке. Список: {результат запроса 1}. Почему работает: в каждом запросе — одна задача. Нет конкуренции между правилами. Второй запрос получает готовый «якорь» — работает с ограниченным материалом, а не с исходным сырым текстом. Когда применять: 4+ правил в одном запросе, модель нарушает часть ограничений, нужна точность формулировок. Когда не нужно: короткая простая задача — один запрос справится
Скрытое мышление перед ответом — точность без лишнего текстаПопроси модель сначала молча определить нужные элементы, а в вывод включить только финальный результат. Добавь в запрос: Прежде чем отвечать, молча определи {что нужно найти}. Используй это в ответе, но не включай в вывод — только финальный результат. Почему работает: цепочка рассуждений в ответе «загрязняет» финальный текст — модель начинает объяснять вместо того чтобы делать. Скрытое мышление даёт ту же точность без балласта в выводе. Когда применять: нужен точный результат без объяснений модели, но простой запрос даёт ошибки
Порядковые теги для задач сверкиПронумеруй предложения источника [1], [2]... Пронумеруй утверждения ответа [A1], [A2]... Попроси: Для каждого [A] укажи какие [] из источника его подтверждают. Почему работает: явные якоря убирают размытость. Модель не угадывает где что подтверждается — работает по точным ссылкам. Когда применять: проверка аргументов, fact-checking , разбор документов, анализ договоров — везде где нужно связать утверждение с доказательством. Ограничение: работает хорошо для прямых цитат. Хуже — когда утверждение косвенно поддерживается источником

Тезисы

ТезисКомментарий
Каждое новое ограничение снижает точность соблюдения предыдущихМодель держит все правила одновременно в одном рабочем пространстве. Ресурс конечен. Добавляешь новое условие — оно вытесняет внимание от старых. Модель не предупреждает об этом. Ты видишь нарушение только в финальном тексте. Применяй: считай правила в промпте. Больше трёх-четырёх — проверь вывод на каждое ограничение отдельно или разбей на два запроса
📖 Простыми словами

BIT.UA-AAUBS at ArchEHR-QA 2026: Evaluating Open-Source and ProprietaryLLMsviaPromptingin Low-Resource QA

arXiv: 2605.03618

Суть проблемы в том, что у нейросетей, как и у людей, ограниченный объем «оперативки» на одну задачу. Когда ты заваливаешь модель горой условий — пиши кратко, используй термины, не исправляй ошибки, соблюдай формат — наступает перегрузка ограничениями. Модель не просто устает, она начинает физически не справляться с удержанием всех правил в голове одновременно. В итоге алгоритм превращается в плохого исполнителя, который из десяти правок выбирает три случайных, а на остальные забивает, потому что его когнитивный ресурс тупо закончился.

Это как если бы ты попросил друга донести до дома открытый аквариум, одновременно жонглируя апельсинами и напевая гимн на латыни. Формально задача ясна, но на практике он либо выльет воду, либо уронит фрукты, либо замолчит. В мире LLM это работает так же: каждое новое «не» или «обязательно» в промпте отъедает внимание от самой сути ответа. Чем сложнее конструкция, тем выше шанс, что на выходе получится бессвязная каша или игнор половины твоих ТЗ.

Исследователи проверили это на методе constraint overload и подтвердили: модель начинает лажать даже в простых вещах, если обвесить их забором из условий. Например, если тебе нужно вытащить из 600-словного нытья клиента конкретные характеристики для SEO-заголовка и при этом соблюсти еще пять правил оформления, модель с вероятностью 80% потеряет либо ключевое слово, либо лимит по знакам. Она не тупая, она просто перегружена приоритетами, которые конфликтуют друг с другом в её «рабочем пространстве».

Этот принцип универсален и касается не только медицины или товарных карточек. Он работает везде: от написания кода до генерации юридических текстов. Если ты пытаешься впихнуть в один промпт и стиль, и структуру, и проверку фактов, и запрет на стоп-слова — ты сам подставляешь нейронку. Сложные инструкции убивают качество, и неважно, используешь ты бесплатную модель или топовую GPT-4. Лимит внимания — это фундаментальный барьер, который нельзя просто проигнорировать.

Короче: хватит пытаться создать «один идеальный промпт-монстр» на все случаи жизни. Если правил больше трех-четырех, модель начнет неявно халтурить, и ты получишь мусор на выходе. Разбивай задачу на этапы, давай инструкции порциями и не жди, что AI станет многозадачным гением. Либо ты упрощаешь правила, либо смиряешься с тем, что результат будет рандомным и кривым. В этой игре побеждает тот, кто умеет вовремя заткнуться и не перегружать систему лишним шумом.

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

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

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