<НА ГЛАВНУЮ

Meta FAIR представила CWM — 32B LLM с открытыми весами, обученную предсказывать выполнение кода

'Meta FAIR выпустила CWM, 32B LLM с открытыми весами, mid-trained на трассах выполнения Python и агентных взаимодействиях для более обоснованной генерации и патчинга кода.'

Что такое CWM и почему это важно

Meta FAIR выпустила Code World Model (CWM) — плотный (dense) трансформер с 32 миллиардами параметров и декодерной архитектурой, который вводит моделирование мира в задачу генерации кода. Вместо обучения только на статическом исходном тексте CWM проходит промежуточное обучение на трассах выполнения и длительных агентных взаимодействиях, чтобы понять, как меняется состояние программы во время исполнения.

Чем отличается подход CWM

Во время mid-training модель работает с двумя семействами наблюдений и действий. Первое — трассы интерпретатора Python, где фиксируются локальные переменные после каждой выполненной строки, что помогает выучить семантику переходов состояния. Второе — агентные взаимодействия внутри контейнеризированных репозиториев, включающие правки, shell-команды и обратную связь от тестов, что тренирует многошаговый инструментальный разум и работу с репозиториями.

Сбор данных и ForagerAgent

Для масштабирования набора данных команда собрала исполняемые образы репозиториев из тысяч GitHub-проектов и использовала программного агента ForagerAgent для поиска многошаговых траекторий. В релизе указано примерно 3 миллиона траекторий по ~10 тысячам образов и 3.15 тысячам репозиториев, включая варианты mutate-fix и issue-fix, отражающие реальные рабочие сценарии разработки.

Архитектура модели и окно контекста

CWM — плотный трансформер с 64 слоями, GQA (48Q/8KV), активацией SwiGLU, RMSNorm и масштабируемым RoPE. Внимание чередует локальные блоки по 8k токенов и глобальные скользящие окна по 131k токенов, что обеспечивает эффективный контекст до 131k токенов. Обучение использует document-causal masking для поддержки долгого контекста.

Рецепт обучения: pre → mid → post

  • Предобучение: 8 триллионов токенов с акцентом на код при контексте 8k.
  • Mid-training: дополнительно ~5 триллионов токенов в длинном контексте (131k) с Python-трассами, данными ForagerAgent, диффами из PR, IR/компиляторами, Triton-ядрами и данными Lean.
  • Post-training: 100B токенов SFT для инструкций и рассуждений, затем многотасковое RL (~172B токенов) по верифицируемому кодингу, математике и многопроходным средам SWE с использованием алгоритма в стиле GRPO и минимального набора инструментов (bash/edit/create/submit).

Квантованное инференс-решение помещается на одном H100 с 80 GB памяти, что облегчает исследовательскую оценку.

Бенчмарки и результаты

Команда приводит конкурентные результаты CWM на нескольких наборах задач: SWE-bench Verified (65.8% pass@1 с масштабированием во время теста), LiveCodeBench-v5 (68.6%), LCB-v6 (63.5%), Math-500 (96.6%), AIME-24 (76.0%), AIME-25 (68.2%) и CruxEval-Output (94.3%). По позиционированию CWM сопоставим с аналогичными моделями с открытыми весами и в ряде случаев конкурирует с более крупными или закрытыми моделями в задачах инженерии ПО.

Зачем моделирование мира нужно для кода

Два ключевых операционных преимущества выделены в релизе:

  • Предсказание трасс выполнения: зная функцию и начало трассы, CWM предсказывает фреймы стека и выполняемую строку на каждом шаге в структурированном формате, что можно использовать как нейронный отладчик для обоснованных рассуждений без живого исполнения.
  • Агентное кодирование: многошаговое рассуждение с использованием инструментов против реальных репозиториев, проверяемое скрытыми тестами и вознаграждением за схожесть патча; модель учат локализовать ошибки и генерировать полные патчи (git diff), а не отрывочные фрагменты.

Практические замечания и лицензия

Токенайзер основан на семействе Llama-3 с зарезервированными управляющими токенами для разделения сегментов трасс и рассуждений при SFT. Слой внимания применяет 3:1 чередование локальных и глобальных блоков по всей глубине. Параметры обучения и расписания масштаба рассчитывались с учетом внутренних исследований законов масштабирования для задач длинного контекста. Meta FAIR выпустила промежуточные и пост-тренированные чекпоинты под лицензией FAIR Non-Commercial Research License, предоставляя платформу для воспроизводимых экспериментов по моделированию выполнения и длинного контекста.

Для полного ознакомления обращайтесь к статье, странице GitHub и модели на Hugging Face, указанным в официальном релизе.

🇬🇧

Switch Language

Read this article in English

Switch to English