3,583 papers
arXiv:2604.04852 77 6 апр. 2026 г. FREE

Structured CoT Framework: 16-факторный контроль над цепочкой рассуждений LLM

КЛЮЧЕВАЯ СУТЬ
Большинство промптов с Chain-of-Thought дают модели слишком много свободы: она сама решает на что опираться, как глубоко рассуждать, что считать доказательством. Исследователи из Университета Турку предложили фреймворк из 16 факторов, разбитых на 4 измерения, которые жёстко контролируют каждый этап рассуждения — от роли и области анализа до структуры вывода и финальной самопроверки.
Адаптировать под запрос

TL;DR

Большинство промптов с Chain-of-Thought дают модели слишком много свободы: она сама решает на что опираться, как глубоко рассуждать, что считать доказательством. Исследователи из Университета Турку предложили фреймворк из 16 факторов, разбитых на 4 измерения, которые жёстко контролируют каждый этап рассуждения — от роли и области анализа до структуры вывода и финальной самопроверки.

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

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


🔬

Схема метода

Два уровня промпта, один запрос:

СИСТЕМНЫЙ ПРОМПТ (глобальные ограничения):
  F1  Роль          → "Ты опытный [специалист в домене]"
  F2  Область       → Ограничь тему строго задачей
  F3  Источник      → Рассуждай только на основе предоставленных данных
  F4  Запрет допущений → Не делай выводов из непредоставленных фактов
  F5  Негативные инструкции → Не привлекай внешние знания
  F9  Схема вывода  → Obs → Ev → Concl (Наблюдение → Доказательство → Вывод)
  F10 Калибровка уверенности → Указывай, когда недостаточно данных
  F11 Глубина       → Не углубляйся в шаги, не нужные для ответа
  F12 Пошаговость   → Каждый шаг — явно
  F15 Самопроверка  → Финальная сверка: вывод соответствует доказательствам?

ПОЛЬЗОВАТЕЛЬСКИЙ ПРОМПТ (задача + управление доказательствами):
  F6  Цитирование   → Перед каждым выводом — конкретный факт из данных
  F7  Привязка к признакам → Называй конкретные показатели, не абстракции
  F8  Обоснование аномалий → Объясни почему это отклонение значимо
  F13 Выравнивание по домену → Связывай с профессиональными категориями
  F14 Фильтр сигнала → Сначала — самые значимые признаки
  F16 Временная логика → Учитывай тренды, не только моментальные значения

Всё это — один двухчастный промпт в обычном чате.


🚀

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

Задача: Максим — основатель небольшого SaaS. Ему предлагают партнёрство: крупный агрегатор хочет встроить его продукт и платить % с каждой продажи. Условия — в PDF, который он загрузил в Claude. Нужен честный анализ рисков, не "в целом звучит неплохо".

Промпт:

[СИСТЕМНЫЙ]
Ты — опытный юрист по B2B-сделкам с фокусом на SaaS-партнёрствах.

Область анализа: только предоставленный договор. Не выходи за его рамки.
Источник: рассуждай исключительно на основе пунктов договора.
Запрет: не делай допущений о "стандартной практике рынка" без прямой ссылки 
на конкретный пункт документа.
Негативные инструкции: не привлекай примеры других сделок из своих знаний — 
только то, что написано в документе.
Схема вывода: каждый вывод строится по формату:
  НАБЛЮДЕНИЕ: [что именно написано в документе]
  ДОКАЗАТЕЛЬСТВО: [пункт / формулировка / цифра]
  ВЫВОД: [что это означает для партнёра]
Калибровка: если данных недостаточно для уверенного вывода — 
прямо укажи "недостаточно данных".
Глубина: не разворачивай шаги, не связанные напрямую с рисками сделки.
Самопроверка в конце: убедись, что каждый вывод подкреплён конкретным 
пунктом договора, а не предположением.

[ЗАДАЧА]
Проанализируй договор партнёрства. Перед каждым выводом назови конкретный 
пункт или формулировку — без цитаты вывод недействителен.

Оцени по четырём блокам:
1. Финансовые условия: % комиссии, сроки выплат, пороги, штрафы
2. Контроль над продуктом: кто управляет ценообразованием, брендингом, 
   интеграцией
3. Риски выхода: условия расторжения, lock-in, штрафы за выход
4. Аномалии: формулировки, которые сильно отклоняются от понятного 
   и прозрачного партнёрства — укажи что именно настораживает

Приоритет — пункты с прямыми финансовыми или операционными последствиями.
Учитывай: если одно условие меняется через 12 месяцев, оцени оба состояния.

[САМОПРОВЕРКА]
После анализа: есть ли выводы без прямого доказательства из текста? 
Если да — удали или перемести в блок "требует уточнения".

Результат: Модель выдаст анализ по четырём блокам. Каждый вывод будет выглядеть как: Наблюдение (что написано) → Доказательство (цитата/пункт) → Вывод (что означает). Там, где договор неоднозначен или данных нет, появится явная пометка "недостаточно данных" вместо домысла. Финальный блок самопроверки покажет, все ли выводы подкреплены — и отдельно вынесет спорные места.


🧠

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

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

Сильная сторона LLM: Модель отлично следует явным структурным правилам. Если явно сказать "перед каждым выводом — цитата из документа", она будет так делать. Не потому что "понимает", а потому что паттерн закреплён в инструкции и она его воспроизводит.

Как метод использует это: 16 факторов закрывают 16 дыр, через которые уходит качество. Роль убирает расплывчатость. Негативные инструкции (что НЕ делать) работают лучше, чем позитивные (что делать) — потому что явный запрет сужает пространство генерации. Схема Obs→Ev→Concl делает структуру вывода обязательной, а не опциональной. Самопроверка в конце — второй проход, который ловит то, что проскользнуло.

Рычаги управления: - Схема вывода (Obs → Ev → Concl) — самый мощный рычаг. Убери структуру → потеряешь трассируемость. Добавь четвёртый уровень (например, "РИСК: критический/средний/низкий") → получишь встроенную приоритизацию - Негативные инструкции (F4, F5) — регулируй строгость. Для creative задач — убери. Для юридического или финансового анализа — ужесточи - Калибровка уверенности (F10) — если нужен уверенный ответ без оговорок, убери. Если важна честность — оставь и усиль: "скажи явно, если вероятность вывода ниже 70%" - Самопроверка (F15) — для быстрых задач убери, экономия токенов. Для критических решений — оставь всегда


📋

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

[СИСТЕМНЫЙ КОНТЕКСТ]
Ты — {роль_эксперта}.

Область: только {источник_данных}. Не выходи за его рамки.
Источник: рассуждай исключительно на основе предоставленных данных.
Запрет допущений: не делай выводов из фактов, которых нет в данных.
Негативные инструкции: не привлекай внешние знания без прямой ссылки на данные.

Схема каждого вывода:
  НАБЛЮДЕНИЕ: [что именно следует из данных]
  ДОКАЗАТЕЛЬСТВО: [конкретный факт / цитата / показатель]
  ВЫВОД: [что это означает для задачи]

Калибровка: если данных недостаточно — укажи "недостаточно данных".
Глубина: не разворачивай шаги, не связанные напрямую с {цель_анализа}.
Самопроверка в конце: убедись, что каждый вывод подкреплён доказательством.

[ЗАДАЧА]
Проанализируй {объект_анализа}.

Перед каждым выводом — конкретный факт из данных. Без факта — вывод недействителен.

Оцени по блокам:
1. {блок_1}: {что анализируем}
2. {блок_2}: {что анализируем}
3. {блок_3}: {что анализируем}
4. Аномалии: что сильно отклоняется от {норма_в_домене}

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

[САМОПРОВЕРКА]
Есть ли выводы без прямого доказательства? Если да — удали или перемести 
в блок "требует уточнения".

Что подставлять: - {роль_эксперта} → опытный финансовый аналитик / юрист по контрактам / HR-эксперт - {источник_данных} → загруженный документ / данные ниже / результаты исследования - {цель_анализа} → рисков сделки / слабых мест стратегии / несоответствий в данных - {объект_анализа} → договор / отчёт / резюме кандидата / финансовая модель - {блок_1-3} → структурные блоки по домену: финансы / контроль / выход; или: стратегия / тактика / ресурсы - {норма_в_домене} → честного партнёрства / рыночных условий / стандартного договора - {наиболее_значимые_признаки} → пункты с прямыми финансовыми последствиями / ключевые метрики


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

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

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

LLM спросит: что анализировать, какова роль эксперта, на какие блоки разбить, что считать аномалией — потому что без этого нельзя заполнить системный контекст и структуру блоков. Она возьмёт паттерн Obs→Ev→Concl и самопроверку и встроит в твою задачу.


⚠️

Ограничения

⚠️ Творческие и субъективные задачи: Фреймворк жёстко привязывает вывод к данным. Для задач, где нет "правильного" исходника — написать текст рекламы, придумать название — структура Obs→Ev→Concl не работает и стесняет модель.

⚠️ Токены: 16 факторов — длинный системный блок. На коротких задачах затраты на инструкцию могут превышать ценность. Используй облегчённую версию (5-7 самых важных факторов).

⚠️ Качество источника: Самопроверка и цитирование работают только если данные реально загружены. Если просишь анализ "из головы" модели — схема создаёт иллюзию доказательности.

⚠️ Меньшие модели: Прирост качества значительный, но абсолютный уровень ниже. Структура компенсирует слабость модели, но не заменяет мощную модель.


🔍

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

Команда взяла публичный датасет сетевого трафика с размеченными DDoS-атаками — 400 записей, 23 признака каждая — и прогнала через 11 моделей разного размера: от крошечных 2B до 70B-гиганта. Каждую модель тестировали в трёх режимах: свободный CoT, CoT с требованием опираться на данные, и полностью структурированный промпт по их фреймворку. Интересный выбор дизайна: промпты создавали и вручную, и через ChatGPT — чтобы понять, важен ли автор промпта или только структура.

Результаты оценивали двойным способом: автоматически (точность классификации) и вручную — два независимых исследователя ставили баллы за качество рассуждений. Межэкспертное согласие (Cohen's κ) выше 0.80 — это высокая планка, означает что критерии были достаточно чёткими, а не субъективными.

Самый неожиданный вывод: маленькие модели выиграли больше всего — прирост до 40% в качестве рассуждений. Большие модели и без структуры рассуждали сносно, но структура подтянула их стабильность. Логика простая: маленькая модель без каркаса плывёт — ей некуда опереться. Структура даёт опору. Большой модели каркас тоже помогает, но она и без него держится лучше.


📄

Оригинал из исследования

Исследователи описывают три уровня CoT-промптов — приводим ключевую классификацию:

(1) Free CoT Prompt: The step-by-step reasoning approach with minimal structural 
constraints, emphasizes flexibility;

(2) Evidence-Locked CoT Prompt: Incorporating consistency constraints into the 
reasoning process, requiring conclusions to be based on given information, 
increasing credibility and reducing hallucinations;

(3) Structured Security Reasoning Prompt: The reasoning process follows the actual 
workflow of security analysis (e.g., threat detection → risk analysis → 
action recommendation) to ensure the model output is consistent with the 
decision-making logic of human security experts.

И ключевая схема вывода из фреймворка:

Output schema: Obs → Ev → Concl
(Observation → Evidence → Conclusion)

Контекст: Исследователи описывают градиент от свободного к полностью структурированному CoT — и тестируют, как каждый уровень влияет на точность и трассируемость в задаче обнаружения атак.


💡

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

1. Адаптация: убери предметную специфику — получи универсальный аналитик

Фреймворк заточен под кибербезопасность, но механика — универсальная. Замени F13 (выравнивание по таксономии атак) на любой профессиональный словарь:

💡 Адаптация для HR: F13 становится "выравниванием по компетенциям должности". F16 (временная логика) → "учитывай карьерную динамику, не только текущий уровень". F7 (привязка к признакам) → "называй конкретные примеры из резюме, не характеристики".

[СИСТЕМНЫЙ]
Ты — опытный HR-партнёр по найму на C-level позиции.

Источник: только предоставленное резюме и описание вакансии.
Запрет: не домысливай опыт кандидата сверх написанного.
Схема: НАБЛЮДЕНИЕ (что в резюме) → ДОКАЗАТЕЛЬСТВО (цитата) → ВЫВОД (соответствие)
Самопроверка: есть ли выводы без конкретной строки из резюме?

[ЗАДАЧА]
Оцени соответствие кандидата. Приоритет — управленческий опыт и P&L.
Учитывай динамику: рост ответственности важнее текущего уровня.
Отдельный блок: аномалии — пробелы, нелогичные переходы, завышенные формулировки.

2. Техника: усиль самопроверку → добавь явный порог

🔧 Техника: числовой порог уверенности → честность вместо уверенности

Стандартная самопроверка: "убедись, что каждый вывод подкреплён". Можно ужесточить:

САМОПРОВЕРКА:
Для каждого вывода определи: 
- ВЫСОКАЯ уверенность: есть прямая цитата/цифра из данных
- СРЕДНЯЯ уверенность: есть косвенное указание  
- НИЗКАЯ уверенность: вывод логически следует, но данных нет

Выводы с НИЗКОЙ уверенностью — вынеси в блок "требует проверки".

Это превращает самопроверку из формальности в реальный фильтр галлюцинаций.


3. Экстраполяция: фреймворк + ролевой дебатер

Структурированный CoT хорошо работает для "объективного" анализа. Если нужно получить противоположные точки зрения с той же доказательностью — добавь ролевую дискуссию:

Проведи анализ договора два раза:
1. От лица опытного юриста ПОКУПАТЕЛЯ (ищет риски для себя)
2. От лица юриста ПРОДАВЦА (защищает условия)

Оба используют схему Obs→Ev→Concl. 
Оба ссылаются только на текст договора.
В конце: где их анализы совпадают — там объективный факт. 
Где расходятся — там зона переговоров.

Это комбинация структурированного CoT + мультиагентной дискуссии. Два доказательных рассуждения с противоположными целями — честнее одного "нейтрального".


🔗

Ресурсы

Статья: Strengthening Human-Centric Chain-of-Thought Reasoning Integrity in LLMs via a Structured Prompt Framework

Авторы: Jiling Zhou, Aisvarya Adeseye, Seppo Virtanen, Antti Hakkala, Jouni Isoaho — Department of Computing, University of Turku, Финляндия

Контакт: jizhou@utu.fi

Датасет: DDoS SDN Dataset (Kaggle, открытый доступ)


Проблемы LLM

ПроблемаСутьКак обойти
Цепочка рассуждений выглядит убедительно, но не опирается на данныеПросишь "думай шаг за шагом". Модель строит гладкую логику. Но каждый шаг опирается на домыслы, а не на то, что ты дал. Данных не хватает — она заполняет пробел правдоподобным текстом. Говорит уверенно. Звучит как анализ. Но "факт вывод" разорван. Проблема в любой задаче, где нужно обосновать вывод даннымиПривяжи каждый вывод к доказательству. Явно скажи: "перед выводом — конкретный факт из текста. Нет факта — вывод недействителен." Добавь финальную самопроверку: "убедись, что каждый вывод подкреплён."

Методы

МетодСуть
Схема вывода: Наблюдение Доказательство ВыводЗадай обязательную структуру для каждого вывода. НАБЛЮДЕНИЕ: [что следует из данных] / ДОКАЗАТЕЛЬСТВО: [конкретный факт, цитата, цифра] / ВЫВОД: [что это означает]. Модель хорошо воспроизводит явные паттерны. Если структура задана — она её держит. Без структуры — порядок произвольный, доказательства опциональны. Когда работает: есть конкретный источник (документ, данные, текст). Не работает: творческие задачи, нет исходника — тогда схема создаёт иллюзию доказательности. Можно усилить: добавь четвёртый уровень РИСК: критический/средний/низкий — получишь встроенную приоритизацию
Финальная самопроверка как второй проходВ конце промпта добавь отдельный блок: "Есть ли выводы без прямого доказательства? Если да — удали или перемести в блок 'требует уточнения'." Первый проход генерирует. Второй — ловит то, что проскользнуло. Работает потому что модель в режиме проверки оценивает текст иначе, чем в режиме генерации. Применяй на аналитических задачах, где важна точность. На быстрых задачах убери — экономия токенов
📖 Простыми словами

Strengthening Human-Centric Chain-of-Thought Reasoning Integrity inLLMsvia a StructuredPromptFramework

arXiv: 2604.04852

Обычный Chain-of-Thought — это когда ты просишь нейронку «думать по шагам», надеясь на её благоразумие. Но проблема в том, что LLM по своей природе не аналитик, а гениальный имитатор. Если дать ей свободу рассуждать как угодно, она просто генерирует текст, который похож на логичный вывод, но на деле может быть набором случайных галлюцинаций. Модель стремится к красивому и уверенному ответу, поэтому она легко затыкает дыры в логике выдуманными фактами, лишь бы текст лился плавно.

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

Суть метода в том, чтобы превратить рыхлое рассуждение в структурированный алгоритм. Вместо простого «подумай», мы вбиваем в промпт 4 измерения: четкую роль, границы области анализа, жесткую структуру вывода и обязательную самопроверку в конце. Это работает как чек-лист для пилота: ты не просто летишь, а обязан подтвердить каждый параметр. Если модель анализирует сделку для SaaS-стартапа, она не имеет права написать «всё будет круто», пока не прогонит данные через фильтры конкретных рисков и не докажет их цитатами из документа.

Хотя метод тестировали на сложных бизнес-кейсах, этот структурный каркас универсален. Его можно и нужно втыкать везде: от написания кода до планирования отпуска или анализа медицинских симптомов. Главная фишка в том, что мы заменяем «свободное творчество» модели на протоколируемый процесс. Когда у нейронки есть 16 факторов, за которые её спросят, у неё просто не остается места, чтобы вставить своё «авторское видение» или пропустить важный косяк в данных.

Короче: стандартный CoT — это лотерея, где модель может завести тебя в дебри самообмана. Новый фреймворк превращает нейронку из болтливого сказочника в дотошного аудитора, который боится ошибиться. Если тебе нужен не просто текст, а результат, которому можно верить — забудь про «думай по шагам» в чистом виде. Жесткая структура и 16 факторов контроля — это единственный способ заставить AI работать на совесть, а не на количество знаков.

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

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

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