SkillOpt от Microsoft: как превратить промпты для AI-агентов в обучаемые параметры
Microsoft Research представила SkillOpt — метод, который превращает инструкции (skills) для AI-агентов в обучаемые параметры. Вместо ручной правки промптов или одноразовой генерации система оптимизирует навыки агента через циклы обучения с валидацией, как в классическом машинном обучении. На 52 тестах (6 бенчмарков × 7 моделей × 3 режима) SkillOpt показала лучший или равный лучшему результат во всех ячейках, поднимая точность на 20+ процентных пунктов без изменения весов модели.
Это шаг от одноразовых промптов к систематическому обучению поведения агентов без дообучения моделей. SkillOpt даёт воспроизводимый путь повышения надёжности агентов в продакшене и сближает производительность малых моделей с frontier-классом.
Проблема: промпты для агентов никто не обучает
LLM-агенты умеют вызывать инструменты и выполнять многошаговые задачи, но их надёжность остаётся низкой. Инструкции (skills) обычно пишут вручную, генерируют одним запросом к frontier-модели или агент сам их переписывает после выполнения — без контроля качества, без валидации, без памяти об ошибках. Результат: промпты разрастаются, дрейфуют, а разумная на первый взгляд правка может тихо убить производительность.
Решение: SkillOpt — обучение навыков как параметров
Microsoft Research представила SkillOpt (статья) — метод, который превращает skill-файл в обучаемый параметр вне замороженной целевой модели. Вместо одноразовой генерации промпта запускается цикл forward–backward–update в текстовом пространстве:
- Forward: замороженная модель выполняет батч задач с текущим skill-файлом.
- Backward: отдельная optimizer-модель анализирует траектории (успехи и провалы), выделяя паттерны для сохранения или исправления.
- Update: optimizer предлагает точечные правки (add/delete/replace), ограниченные текстовым «learning rate» — бюджетом редактирований за шаг. Каждая правка проходит строгий validation gate: принимается, только если улучшает метрику на held-out split.
Отклонённые правки не выбрасываются — попадают в rejected-edit buffer как негативная обратная связь. Раз в эпоху slow/meta-update консолидирует долгосрочные уроки. Всё это держит оптимизацию управляемой: skill-файл остаётся компактным, читаемым и аудируемым, вместо бесконтрольного дрейфа.
Результаты: +23,5 п.п. без изменения весов
SkillOpt протестировали на 52 evaluation cells: 6 бенчмарков (SearchQA, SpreadsheetBench, OfficeQA, DocVQA, LiveMathematicianBench, ALFWorld) × 7 моделей (от GPT-5.5 до open-weight Qwen3.5-4B) × 3 режима (direct chat, Codex, Claude Code). Во всех 52 ячейках метод оказался лучшим или разделил первое место. С GPT-5.5 средняя точность выросла с 58,8% до 82,3% (+23,5 п.п.) — на 5,4 п.п. выше «оракула», который для каждой задачи выбирает лучший из конкурирующих методов.
Особенно сильны сдвиги на процедурных задачах: SpreadsheetBench 41,8→80,7, OfficeQA 33,1→72,1, LiveMathematicianBench 37,6→66,9. В агентных циклах Codex подъём +24,8 п.п., Claude Code +19,1 п.п.
Переносимость и масштабирование
Обученные skills переносятся между масштабами моделей, фреймворками агентов и смежными задачами — это говорит о том, что SkillOpt извлекает переиспользуемое знание о рабочих процессах, а не заучивает инструкции под бенчмарк. Метод сближает малые модели с frontier-уровнем производительности без дообучения весов — достаточно оптимизировать skill-файл.
Ключевые выводы
- SkillOpt превращает написание промптов для агентов в управляемый процесс обучения с валидацией и контролем шага обновлений
- Метод показал лучшие или равные лучшим результаты во всех 52 тестовых ячейках (6 бенчмарков × 7 моделей × 3 режима), поднимая точность на 20+ п.п. без изменения весов модели
- Обученные навыки переносятся между моделями разного размера, фреймворками агентов и смежными задачами — это реиспользуемое процедурное знание, а не заученные инструкции
- Rejected-edit buffer и validation gating предотвращают дрейф промптов, сохраняя skill-файл компактным и аудируемым
- Особенно сильные скачки на процедурных задачах (SpreadsheetBench, OfficeQA, LiveMathematicianBench) — от +30 до +40 п.п.
Автор: Артём Ковалёв · Источник: microsoft.com
**SkillOpt — это редкий случай, когда исследовательская идея сразу бьёт в продакшен-боль.** Сегодня промпт-инженеры агентов работают вслепую: правишь инструкцию, запускаешь батч — и молишься, чтобы не стало хуже. SkillOpt превращает это шаманство в управляемый цикл обучения: каждая правка проверяется на валидации, отклонённые варианты не теряются, а попадают в отрицательную обратную связь. Результат — +23,5 п.п. средней точности на шести бенчмарках без изменения весов модели. Это не магия, а банальная дисциплина: обучение с контролем шага, валидационный гейт, память об ошибках.
Особенно интересно, что обученные навыки переносятся между моделями и задачами — значит, SkillOpt извлекает реиспользуемое процедурное знание, а не подгоняет промпт под конкретный бенчмарк. Если метод держит обещание компактности и аудируемости (skill-файл остаётся читаемым), это реальный кандидат на стандартную практику для продакшен-агентов. Вопрос — как он поведёт себя за пределами академических бенчмарков, на живых задачах с неочевидной валидацией и shifting ground truth.
Комментарии