Содержание
  1. Паспорт занятия до всех промптов
  2. Запрос скелета: три пункта без содержания
  3. Три запроса расширения по одному пункту
  4. Ручные эталоны расширения
  5. Две проверки и отрицательная задача
  6. Таблица выбора и правило отката
  7. SoT и обычный чат с конспектом
  8. Что проверить до отправки расширений
  9. Частые вопросы
Гайды

Skeleton-of-Thought: план и параллельные ответы

6 ноября 2026 · 9 минут чтения

Skeleton-of-Thought: план и параллельные ответы устроены так: модель сначала выдаёт короткий скелет из нескольких пунктов, затем каждый пункт расширяется отдельным запросом. В оригинальной работе ICLR 2024 расширения идут параллельно через API или batch. Ниже — паспорт занятия, четыре готовых запроса, ручные эталоны и проверки.

Паспорт занятия до всех промптов

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

Учебное занятие «Бумажный ветер». Аудитория — взрослые новички. Тема — бумажный кораблик. Формат — онлайн. Дата — 20 мая 2027. Время — с 12:00 до 13:00 UTC+03:00. Материалы — лист А4 и карандаш. Адрес — https://class.example.test/roomA. Тариф, аккаунт, число участников и результаты учеников неизвестны.

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

В оригинальной работе авторы из Tsinghua и Microsoft описывают два этапа: skeleton stage, где модель выдаёт сжатый скелет, и point-expanding stage, где пункты разворачиваются. Скелет извлекается из ответа, и число пунктов B становится параметром дальнейшей работы. В нашем примере B равно трём.

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

Запрос скелета: три пункта без содержания

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

ТЕКСТ2 строки
Учебное занятие «Бумажный ветер». Аудитория — взрослые новички. Тема — бумажный кораблик. Формат — онлайн. Дата — 20 мая 2027. Время — с 12:00 до 13:00 UTC+03:00. Материалы — лист А4 и карандаш. Адрес — https://class.example.test/roomA. Тариф, аккаунт, число участников и результаты учеников неизвестны.
Задача: составь только скелет краткой памятки участнику. Верни ровно три пункта с номерами 1, 2 и 3: тема и аудитория; что подготовить; когда и где подключиться. В каждом пункте 3–5 слов. Не пиши содержание разделов, не добавляй фактов и не заполняй неизвестные поля.

Ручной эталон скелета выглядит так:

  1. Тема и аудитория
  2. Что подготовить для занятия
  3. Когда и где подключиться

Ограничение в 3–5 слов на пункт — рабочий приём. Короткую строку легко сверить глазами. Даже краткий пункт нужно проверить на лишние сведения. Если модель возвращает четыре пункта или добавляет подпункты, запрос повторяют с уточнением числа.

Скелет стоит сохранить отдельным сообщением или файлом. Он понадобится в каждом запросе расширения, и его дословное совпадение важнее красоты формулировок.

Три запроса расширения по одному пункту

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

ТЕКСТ6 строк
Учебное занятие «Бумажный ветер». Аудитория — взрослые новички. Тема — бумажный кораблик. Формат — онлайн. Дата — 20 мая 2027. Время — с 12:00 до 13:00 UTC+03:00. Материалы — лист А4 и карандаш. Адрес — https://class.example.test/roomA. Тариф, аккаунт, число участников и результаты учеников неизвестны.
Общий скелет памятки:
1. Тема и аудитория
2. Что подготовить для занятия
3. Когда и где подключиться
Разверни только пункт 1 «Тема и аудитория» в одно или два предложения. Остальные пункты не пиши, не ссылайся на них. Используй только факты паспорта. Не добавляй новых дат, чисел, материалов и обещаний; неизвестные поля не заполняй.
ТЕКСТ6 строк
Учебное занятие «Бумажный ветер». Аудитория — взрослые новички. Тема — бумажный кораблик. Формат — онлайн. Дата — 20 мая 2027. Время — с 12:00 до 13:00 UTC+03:00. Материалы — лист А4 и карандаш. Адрес — https://class.example.test/roomA. Тариф, аккаунт, число участников и результаты учеников неизвестны.
Общий скелет памятки:
1. Тема и аудитория
2. Что подготовить для занятия
3. Когда и где подключиться
Разверни только пункт 2 «Что подготовить для занятия» в одно или два предложения. Остальные пункты не пиши, не ссылайся на них. Используй только факты паспорта. Не добавляй новых дат, чисел, материалов и обещаний; неизвестные поля не заполняй.
ТЕКСТ6 строк
Учебное занятие «Бумажный ветер». Аудитория — взрослые новички. Тема — бумажный кораблик. Формат — онлайн. Дата — 20 мая 2027. Время — с 12:00 до 13:00 UTC+03:00. Материалы — лист А4 и карандаш. Адрес — https://class.example.test/roomA. Тариф, аккаунт, число участников и результаты учеников неизвестны.
Общий скелет памятки:
1. Тема и аудитория
2. Что подготовить для занятия
3. Когда и где подключиться
Разверни только пункт 3 «Когда и где подключиться» в одно или два предложения. Остальные пункты не пиши, не ссылайся на них. Используй только факты паспорта. Не добавляй новых дат, чисел, материалов и обещаний; неизвестные поля не заполняй.

Три запроса отличаются одной строкой — номером и названием пункта. Паспорт и скелет в них совпадают дословно. Такая конструкция позволяет отправить запросы параллельно и склеить ответы в исходном порядке.

Ручные эталоны расширения

Эталон — заранее написанный правильный ответ, с которым сравнивают вывод модели. Для нашего паспорта эталоны такие.

  1. Учебное онлайн-занятие «Бумажный ветер» посвящено бумажному кораблику и подходит для взрослых новичков.
  2. Подготовьте лист А4 и карандаш.
  3. Занятие пройдёт 20 мая 2027 с 12:00 до 13:00 UTC+03:00; подключение по адресу https://class.example.test/roomA.

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

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

Две проверки и отрицательная задача

Проверка первая: согласованность раздела со своей исходной строкой паспорта. Каждый расширенный пункт содержит только факты той строки, из которой он вырос. Пункт про материалы говорит о листе А4 и карандаше и молчит о дате.

Проверка вторая: отсутствие дат, чисел и материалов, которых нет в паспорте. Сюда попадают тариф, аккаунт, число участников и результаты учеников — все они помечены как неизвестные.

Отрицательная задача показывает границу метода. Условие: сначала вычисли x=2+3, затем используй только полученный x для y=x×4. Эталон — x=5, y=20. Если развернуть два шага независимыми запросами, второй запрос не знает значения x и не может вычислить y. Передача промежуточного результата обязательна, и параллельные расширения её не заменяют.

Оговорка: если формулу x=2+3 дать каждому независимому запросу, он способен посчитать её заново. Отрицательная задача демонстрирует зависимость второго шага от промежуточного значения. Ошибка конкретной модели в этом упражнении не измерялась.

Таблица выбора и правило отката

Признак Независимый раздел Зависимая задача
Вход строка паспорта результат предыдущего шага
Порядок любой фиксированный
Проверка сверка со своей строкой сверка с эталоном цепочки
Пример «что подготовить» x=2+3, затем y=x×4
Решение параллельное расширение последовательная генерация

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

SoT и обычный чат с конспектом

Оригинальный SoT — это скелет, затем параллельные API-запросы или batched decoding. Для моделей с доступом только по API авторы описывают несколько параллельных вызовов; для локальных моделей — пакетную обработку с выравниванием запросов. Склейка ответов даёт итоговый текст.

Обычный чат с конспектом и последовательным расширением повторяет структуру, но остаётся последовательным: каждое следующее сообщение ждёт предыдущего. Такой сценарий годится для обучения и отладки формулировок.

Разница важна при оценке. Последовательные сообщения в чате не измеряют ускорение, потому что декодирование идёт шаг за шагом. Замеры задержки, токенов и процентов выигрыша в нашем примере не проводились.

Что проверить до отправки расширений

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

Promptliness отдельно предупреждает: неполный или неверно очерченный скелет передаёт свой пробел расширениям. Развёрнутый текст сам по себе не исправляет структуру. После принятия плана проверьте, что расширение действительно отвечает за свой раздел, и соберите результаты в исходном порядке. Для нашего примера достаточно сравнить полученные абзацы с тремя ручными эталонами и повторно проверить дату, материалы и адрес.

В оригинальном репозитории SoT описан вариант с маршрутизатором, который включает метод только для подходящих вопросов. Это ещё одно основание сначала решить, допускает ли задача независимые разделы. Там же у консольного помощника отдельно оговорено последовательное расширение при обычном тестировании и пакетное при соответствующем режиме. Поэтому наличие скелета и нескольких ответов ещё не показывает, что они выполнялись параллельно. В этой статье предъявлены промпты и ручные эталоны; замер работы API не проводился.

Частые вопросы

Что такое skeleton of thought prompting?

Это приём, при котором модель сначала выдаёт короткий скелет ответа, а затем разворачивает каждый пункт отдельным запросом. Авторы работы ICLR 2024 описывают два этапа: генерацию скелета и параллельное расширение пунктов. Для моделей с API используются параллельные вызовы, для локальных — пакетная обработка. Итог собирается склейкой расширенных пунктов.

Чем skeleton of thought отличается от обычного запроса?

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

Как применить skeleton of thought в prompt engineering?

Задайте паспорт с фактами и статусом неизвестных полей. Попросите скелет из фиксированного числа коротких пунктов. Затем отправьте по одному запросу на каждый пункт, повторяя паспорт и скелет дословно. Сравните выводы с ручными эталонами и проверьте, что в разделах нет фактов вне паспорта.

Почему параллельные расширения ошибаются на вычислениях?

Потому что каждый запрос получает только паспорт и свой пункт. Промежуточный результат предыдущего шага в него не попадает. В задаче с x=2+3 и y=x×4 второй запрос не знает значения x. Передача промежуточного значения обязательна, и здесь нужна последовательная генерация.

Когда отказываться от параллельного расширения?

Когда пункты связаны причинно-следственной связью или один опирается на результат другого. Авторы работы про Adaptive Skeleton Graph Decoding отмечают, что допущение о независимости пунктов нарушается на логических задачах. В таких случаях пункты выстраивают в граф зависимостей и декодируют по порядку.

Читайте также

3 материала