Что такое Autoresearch
Что если поручить агенту не отдельный запрос, а весь цикл исследования: от формулировки гипотезы до проверки результата и поиска следующего улучшения?
Вместе с Максимом Лунициным, Data Scientist-ом ВТБ, разбираемся с Autoresearch - автономным исследованием, в котором LLM-агент самостоятельно в цикле работает с исходным кодом для оптимизации определённого функционала.
Первая реализация Autoresearch была предложена Андреем Карпаты в марте 2026 года. Изначально проект был создан для экспериментов с обучением nanochat на одной GPU и впоследствии стал отправной точкой для других похожих проектов.
Как это работает?
Простота и гибкость подхода позволяют с помощью агентов решать широкий класс задач, где:
1. есть объективная метрика, которую можно измерить и оптимизировать (например, точность модели, время выполнения или расход памяти);
2. изменения можно сохранить или откатить; один эксперимент занимает относительно мало времени — минуты, а не дни;
3. пространство поиска ограничено конкретным проектом или репозиторием.
Из чего состоит Autoresearch?
Классическая схема такая:
program.md — главный файл, написанный человеком. Обычно содержит цель и ограничения эксперимента, а также инструкции и правила для агента.
train.py — файл, изменяемый агентом. Содержит код, который выполняет поставленную задачу. В отличие от hyperparameter tuning или neural architecture search, меняться может что угодно в исходном коде, а не только гиперпараметры и архитектура.
prepare.py — файл, который агенту запрещено менять. Содержит вспомогательные функции вроде чтения/загрузки данных, а также алгоритм валидации эксперимента. Агент самостоятельно формулирует и тестирует гипотезы, анализирует результаты и планирует дальнейшие шаги.
Дальше начинается автономный цикл: модификация кода → верификация результата → сохранение/откат назад → повтор. Git хранит только успешные изменения: при улучшении метрики ветка продвигается вперёд, неудачные изменения откатываются. Журнал всех попыток агент ведёт в results.tsv Цикл продолжается, пока его не прервёт человек. Для этого в program.md существует отдельная инструкция NEVER STOP.
pi-autoresearch
Autoresearch Карпаты во многом похож на агентский скилл, а саму идею можно легко расширить и на другие задачи помимо обучения LLM. Поэтому инженеры из Shopify выложили в открытый доступ расширение pi-autoresearch, которое способно работать с любой оптимизационной задачей:
The extension is domain-agnostic infrastructure. The skill encodes domain knowledge. This separation means one extension serves unlimited domains.
В pi-autoresearch за это отвечают: .auto/prompt.md — инструкции для агента; .auto/measure.sh — скрипт измерения результата; .auto/log.jsonl — журнал экспериментов.
Дополнительно используется Confidence score на основе MAD (Median Absolute Deviation): он помогает оценить, насколько найденное улучшение превышает обычный шум измерений. Это дополнительный ориентир для агента при принятии решения о сохранении изменений.
Подробнее о подходе и примерах его применения за пределами ML — в этом разборе.
Awesome-autoresearch После публикации оригинального проекта сообщество разработчиков начало активно экспериментировать с подходом и создавать собственные реализации.
Появились даже специальные подборки проектов и сценариев использования:
- Awesome Autoresearch от yibie
- Awesome Autoresearch от WecoAI
В них можно найти разные варианты применения идеи — от оптимизации ML-пайплайнов до совершенно других инженерных задач.
В одном из следующих постов поговорим про риски и ограничения Autoresearch.