Комментарии 8
Опять дичь.
Интересная идея и реализация, а есть какой-то результат для примера?
Неделю назад обучал 0.25B LLM с нуля исключительно на статьях с хабра, датасет IlyaGusev/habr, просто посмотреть, что из этого получится. SFT датасет автоматически построен из датасета хабра, чтобы не было примесей из других источников. Токенизатор обучен тоже только на хабре.
Идея была попробовать обучить 1B, но времени было мало, поэтому на коленке обучил только 0.25B за 3 часа. Первый шаг, это pre-train, который умеет только продолжать то, что ему задать как промпт:


Обучение pre-train было всего на 1 эпохе, поэтому знания плохо усвоены, но что-то аппроксимировано. Модель сама выявила паттерны русского языка, родов, склонений и прочего, хотя логика и знания хромают, общее написание фраз вполне корректное.
Для примера как выглядело начало обучения:

Дальше идет обучение SFT, где pre-train учится шаблону чата и умению отвечать на вопросы и уметь разделять где assistant, а где user. Качество общения зависит от качества SFT датасета, его я сделал автоматически и всего на 1к записей, как старт сойдет, но о проработке речи не идет:


Примеров генерации нет, к сожалению. Запуски были давно, чекпоинты не сохранились, остались только графики loss.
По твоему опыту - интересно. Датасет в parquet со сжатием, реальный объём текста скорее всего ~15 гб, но оценить сколько это всё таки в токенах сложно из-за дополнительных полей. По Chinchilla нужно 5B токенов для 0.25B модели, и если за 3 часа всё это не прошло, модель явно недообучена. Отсюда и результат "что-то аппроксимировано". Интересно было бы посмотреть что получится с несколькими эпохами или большим датасетом.
Датасет, конечно, лютая дичь. Почему бы не засунуть всю русскую литературу, которая находится в свободном домене от Пушкина до Ленина? Было бы больше пользы.
На Ленине надо зафайнтюнить, потом подать в контекст описание текущего положения дел в стране и мире и спросить что делать )
Удивительно, что до сих пор никто не сделал так.
Тестил на книгах, но там свои проблемы - стиль слишком далёк от живого языка, а у части контента содержание специфичное 💀. Жёсткая фильтрация оставила бы слишком мало. Для задачи с персонажем нужен был именно неформальный язык, поэтому и пошёл в сторону блогов.
На Ленине надо зафайнтюнить, потом подать в контекст описание текущего положения дел в стране и мире и спросить что делать ) Удивительно, что до сих пор никто не сделал так.
Вообще-то сделали, и даже в виде интервью:
https://youtu.be/7XHvrwijXY4?t=264
Видео эпичное, я от начала и до конца посмотрел, очень круто получилось.

Как я обучил GPT с нуля на русском языке — и что из этого получилось