INTEGRITY Документация

Дообучение моделей с помощью AutoTrain от HuggingFace

Дообучение модели ИИ дает возможность добавить в неё дополнительные обучающие данные. Workers AI позволяет Low-Rank Adaptation, LoRA, адаптеры который позволит вам дообучать наши модели.

В этом руководстве мы рассмотрим, как создавать собственные LoRA. Мы сосредоточимся на Дообучение LLM с помощью AutoTrain.

1. Создайте файл CSV со своими обучающими данными

Начните с создания файла CSV (Comma Separated Values, значения, разделённые запятыми). В этом файле будет только один столбец с именем text. Задайте заголовок, добавив слово text на отдельной строке.

Теперь нужно решить, что вы хотите добавить в свою модель.

Примеры форматов приведены ниже:

### Human: What is the meaning of life? ### Assistant: 42.

Если строка обучающих данных содержит символы переноса строки, заключите её в кавычки.

"human: What is the meaning of life? \n bot: 42."

Разные модели, например Mistral, предоставляют особый шаблон чата/формат инструкций

<s>[INST] What is the meaning of life? [/INST] 42</s>

2. Настройте HuggingFace Autotrain Advanced Notebook

Откройте HuggingFace Autotrain Advanced Notebook

Чтобы у AutoTrain было достаточно памяти, потребуется выбрать другую среду выполнения. В меню в верхней части Notebook выберите Runtime > Change Runtime Type и укажите A100.

В этом notebook есть несколько интерактивных разделов, которые нам нужно будет изменить.

Конфигурация проекта

Измените следующие поля

Необязательный раздел: Push to Hub

Хотя для использования AutoTrain это не обязательно, создание Аккаунт HuggingFace поможет вам хранить артефакты дообучения в удобном репозитории, чтобы обращаться к ним позже.

Если вы не выполните настройку HuggingFace, вы всё равно сможете скачать свои файлы из Notebook.

Следуйте инструкциям в notebook чтобы создать учетную запись и токен, если это необходимо.

Раздел: гиперпараметры

Нам нужно изменить лишь несколько из этих полей, чтобы всё заработало в Cloudflare Workers AI.

3. Загрузка CSV-файла в Notebook

У Notebook есть структура папок, перейти к которой можно, нажав на значок папки на левой панели навигации.

Создайте папку с именем data.

Вы можете перетащить файл CSV в notebook.

Убедитесь, что он называется train.csv

4. Выполнение Notebook

В меню Notebook выберите Runtime > Run All.

Он выполнит все ячейки Notebook по порядку: сначала установит необходимые пакеты, затем настроит и запустит вашу сессию AutoTrain.

Это может занять некоторое время в зависимости от размера вашего файла train.csv.

Если вы столкнётесь со следующей ошибкой, она вызвана нехваткой памяти (Out of Memory). Возможно, стоит переключить среду выполнения на более мощный GPU.

subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'autotrain.trainers.clm', '--training_config', 'blog-instruct/training_params.json']' died with <Signals.SIGKILL: 9>.

5. Загрузка LoRA

Необязательно: HuggingFace

Если вы отправили данные в HuggingFace, новую карточку модели, которую вы назвали, можно найти в project_name выше. По умолчанию карточка модели приватна. Перейдите в раздел файлов и скачайте перечисленные ниже файлы.

Notebook

В своём Notebook вы также найдёте нужные файлы. Новая папка, соответствующая вашему project_name будет там.

Скачайте следующие файлы:

6. Обновление конфигурации адаптера

Вам нужно добавить одну строку в adapter_config.json который вы скачали.

"model_type": "mistral"

Где model_type это архитектура. Текущие допустимые значения: mistral, gemma, а также llama.

7. Загрузка Fine Tune в ваш аккаунт Cloudflare

Теперь, когда файлы готовы, вы можете добавить их в свою учётную запись.

Вы можете либо использовать REST API или Wrangler.

8. Использование Fine Tune в генерациях

После того как ваш новый fine tune настроен, можно использовать это в своих запросах на инференс.