Андрей Карпатый, ML-инженер и бывший разработчик OpenAI, представил открытый проект nanochat, позволяющий пройти полный цикл создания языковой модели за минимальные средства. Общая стоимость обучения модели составляет около 100 долларов при аренде вычислительных мощностей у облачных провайдеров.
Проект nanochat был разработан в рамках курса LLM101n от Eureka Labs. Репозиторий содержит все компоненты, необходимые для обучения языковой модели: токенизатор на Rust, систему подкачки датасета FineWeb-EDU, скрипты для файнтюнинга, инференса и сбора метрик. Дополнительным преимуществом является встроенный веб-интерфейс, позволяющий взаимодействовать с готовой моделью.
Узнать подробнее про клуб ShareAI
Для обучения требуется инстанс с 8 видеокартами Nvidia H100. В таких условиях процесс займет около четырех часов. Стоимость аренды подобных мощностей составляет примерно 24 доллара в час, что дает итоговую сумму около 100 долларов за полный цикл обучения. Весь процесс запускается одной командой speedrun.sh, а веб-интерфейс для общения с моделью активируется командой python -m scripts.chat_web.
Пользователи могут получить подробный отчет о ходе обучения с помощью команды cat report.md, которая выводит детальную статистику процесса.
По словам Карпатого, основная цель проекта — создать компактный, но полноценный цикл обучения языковой модели, который можно запустить одной командой. Это делает nanochat удобным инструментом как для обучения, так и для доработки. Проект может служить основой для создания более мощных нейросетей и добавления различных интеграций.
Глобальная задача nanochat заключается в улучшении качества микромоделей с бюджетом на обучение до тысячи долларов. Это значительно снижает входной порог для исследователей и разработчиков, желающих экспериментировать с языковыми моделями.
Весь код проекта открыт и доступен на GitHub вместе с необходимыми файлами и инструкциями, что делает его доступным для широкого круга энтузиастов и исследователей в области машинного обучения.