arXiv cs.LG→ оригинал

Видимый CoT не улучшает генерацию SQL и pandas-кода универсально: новое исследование

Препринт arXiv 2610.10639 проверяет популярный совет «думай шаг за шагом» на генерации аналитического кода. Один и тот же запрос ставили в двух вариантах, SQL и Python (pandas), а результат оценивали по исполнению кода. Универсального выигрыша от видимой цепочки рассуждений не обнаружено. Стабильной пользы от рассуждения на языке целевого кода («think in SQL») тоже нет. Результат зависит от персоны в промпте, целевого языка, модели и режима внутреннего рассуждения. • Видимый CoT не универсальный оптимизатор. • Совпадение языка рассуждения и кода ничего не гарантирует. • Режим внутреннего рассуждения иногда важнее промпта.

AI-обработка оригинала arXiv cs.LG; редакция Hamidun News
Видимый CoT не улучшает генерацию SQL и pandas-кода универсально: новое исследование
Источник: arXiv cs.LG. Коллаж: Hamidun News.
◐ Слушать статью
⊞Паспорт материала и цифры
ПараметрДанные
ПервоисточникarXiv cs.LG ↗
Главный редактор
Ключевой факт #1Видимый CoT не универсальный оптимизатор.
Ключевой факт #2Совпадение языка рассуждения и кода ничего не гарантирует.
Ключевой факт #3Режим внутреннего рассуждения иногда важнее промпта.

Исследователи проверили один из самых тиражируемых советов по промптингу, «пусть модель думает вслух», на задаче с объективной проверкой: генерации аналитического кода, который можно запустить. Препринт arXiv 2610.10639 сравнивает SQL и Python (pandas) на одинаковых запросах. Авторы не нашли ни универсального выигрыша в точности от видимой цепочки рассуждений (Chain-of-Thought), ни стабильной пользы от рассуждения «на языке задачи». Эффект зависит от персоны в промпте, целевого языка, конфигурации модели и режима внутреннего рассуждения.

Как устроен эксперимент

Аналитический код — удобный полигон. Запрос на естественном языке двусмысленен, модели нужно привязаться к схеме данных, а результат подчиняется жёстким правилам целевого языка. Один и тот же вопрос про данные можно решить и SQL-запросом, и pandas-скриптом. Поэтому авторы собрали бенчмарк, где запросы сопоставлены между двумя языками, и проверили распространённое допущение: видимое рассуждение работает лучше, если записано в том же представлении, что и ответ, то есть «думай в SQL» или «думай в Python».

В эксперименте скрестили несколько факторов:

  • формулировку персоны в промпте;
  • целевой язык: SQL или Python (pandas);
  • формат видимого CoT, включая рассуждение в представлении целевого языка;
  • контрольные префиксы;
  • прямую генерацию без видимых рассуждений;
  • конфигурации внутреннего рассуждения модели.

Качество оценивали по исполнению кода, а не по сходству текста с эталоном. Численных результатов и названий моделей в аннотации нет, их придётся смотреть в полном тексте.

Что показали результаты

Главный вывод отрицательный, зато практичный. Видимый CoT не даёт общего прироста точности. Согласование представления рассуждения с целевым языком тоже не работает как правило: где-то помогает, где-то нет. Знак и размер эффекта определяются сочетанием персоны, языка, модели и настроек внутреннего рассуждения.

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

Что делать командам, которые строят text-to-SQL и аналитических агентов

Промпт «think step-by-step» не стоит считать значением по умолчанию. Его нужно проверять на собственных данных так же, как любой другой параметр. Вот минимальный набор практик, который следует из работы:

  • Держите прямую генерацию без видимого CoT как обязательный базовый вариант и сравнивайте с ней по результату исполнения запросов.
  • Тестируйте промпт вместе с моделью, персоной, целевым языком и режимом thinking. Перенос настроек между связками ненадёжен.
  • Добавляйте контрольные префиксы, чтобы отличить пользу рассуждения от эффекта длинного шаблона.
  • Для reasoning-моделей отдельно проверяйте, не мешает ли видимый CoT внутреннему рассуждению.
  • Не вшивайте советы вроде «думай в SQL» в системный промпт без замера на вашей схеме.

Ограничения тоже очевидны. Это препринт версии v1 без рецензии, а по аннотации нельзя оценить масштаб эффектов и охват моделей. Но как методический каркас для ответа на вопрос, где CoT помогает исполнимому коду, где только шумит, а где важнее настройки модели, работа полезна любой команде с аналитическим ассистентом в продакшене.

⧉ Сюжет

❓ Вопросы и ответы по материалу

Что известно по теме: как устроен эксперимент?

Аналитический код — удобный полигон. Запрос на естественном языке двусмысленен, модели нужно привязаться к схеме данных, а результат подчиняется жёстким правилам целевого языка. Один и тот же вопрос про данные можно решить и SQL-запросом, и pandas-скриптом. Поэтому авторы собрали бенчмарк, где запросы сопоставлены между двумя языками, и проверили распространённое допущение: видимое рассуждение работает лучше, если записано в том же представлении, что и ответ, то есть «думай в SQL» или «думай в Python». В эксперименте скрестили несколько факторов: формулировку персоны в пром

Что известно по теме: что показали результаты?

Главный вывод отрицательный, зато практичный. Видимый CoT не даёт общего прироста точности. Согласование представления рассуждения с целевым языком тоже не работает как правило: где-то помогает, где-то нет. Знак и размер эффекта определяются сочетанием персоны, языка, модели и настроек внутреннего рассуждения. Отдельную ценность имеют контрольные абляции. Они разделяют влияние содержания рассуждения и влияние формата промпта. Часть изменений в качестве может объясняться тем, что дополнительный шаблон или префикс просто сдвигает поведение модели, независимо от того, рассужда

Что известно по теме: что делать командам, которые строят text-to-SQL и аналитических агентов?

Промпт «think step-by-step» не стоит считать значением по умолчанию. Его нужно проверять на собственных данных так же, как любой другой параметр. Вот минимальный набор практик, который следует из работы: Держите прямую генерацию без видимого CoT как обязательный базовый вариант и сравнивайте с ней по результату исполнения запросов. Тестируйте промпт вместе с моделью, персоной, целевым языком и режимом thinking. Перенос настроек между связками ненадёжен. Добавляйте контрольные префиксы, чтобы отличить пользу рассуждения от эффекта длинного шаблона. Для reasoning-моделей отде

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ Практика AI-разработки

Соберите и запустите AI-продукт без классического кодинга

Практический интенсив Жемала Хамидуна по вайб-кодингу в Claude Code и Cursor на hamidun.com/vibecoding: от идеи и архитектуры до рабочего продакшн-сервиса, ботов и пайплайнов.

Программа интенсива →Платформа Vibe Academy
Что вы думаете?
Загружаем комментарии…