О чём урок
Теперь, когда вы ознакомились с теорией, давайте применим ее на практике! В этом упражнении вы выполните тонкую настройку модели с помощью GRPO. [!ПОДСКАЗКА] Это упражнение было написано экспертом по fine-tuning LLM @mlabonne. Сначала установим зависимости для этого упражнения. Теперь импортируем необходимые библиотеки. Weights & Biases — это инструмент для логирования и мониторинга ваших экспериментов. Мы будем использовать его для логирования процесса fine-tuning. Вы можете выполнить это упражнение без входа в Weights & Biases, но рекомендуется сделать это для отслеживания ваших экспериментов и интерпретации результатов. Теперь загрузим набор данных. В данном случае мы будем использовать набор данных mlabonne/smoltldr, который содержит список коротких рассказов. Теперь загрузим модель. Для этого упражнения мы будем использовать модель SmolLM2-135M. Это небольшая модель с 135 миллионами параметров, которая работает на ограниченном оборудовании. Это делает модель идеальной для обучения, но она не является самой мощной из существующих. Если у вас есть доступ к более мощному оборудованию, вы можете попробовать выполнить fine-tuning более крупной модели, такой как SmolLM2-1.7B. Теперь загрузим конфигурацию LoRA. Мы воспользуемся LoRA, чтобы уменьшить количество обучаемых параметров и, в свою очередь, объем памяти, необходимый для fine-tuning модели. Если вы не знакомы с LoRA, вы можете узнать о ней подробнее в Главе 11. Как упоминалось в предыдущем разделе, GRPO может использовать любую функцию вознаграждения для улучшения модели. В данном случае мы будем использовать простую функцию вознаграждения, которая побуждает модель генерировать текст длиной 50 токенов. Теперь определим аргументы обучения. Мы будем использовать класс GRPOConfig для определения аргументов обучения в типичном стиле transformers. Если вы впервые определяете аргументы обучения, вы можете ознакомиться с классом TrainingArguments для получения дополнительной информации или с Главой 2 для подробного введения. Теперь мы можем инициализировать trainer с моделью, набором данных и аргументами обучения, а затем начать обучение.
План урока
- Установка зависимостей
- Импорт и вход в Weights & Biases
- Загрузка набора данных
- Загрузка модели
- Загрузка LoRA
- Определение функции вознаграждения
- Определение аргументов обучения
- Публикация модели в Hub во время обучения
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.