Перейти к основному содержимому

Axolotl

Axolotl: YAML-тонкая настройка LLM (LoRA, DPO, GRPO).

Метаданные навыка​

ИсточникОпционально — установка через vibeos skills install official/mlops/axolotl
Путьoptional-skills/mlops/training/axolotl
Версия1.0.0
АвторOrchestra Research
ЛицензияMIT
Зависимостиaxolotl, torch, transformers, datasets, peft, accelerate, deepspeed
Платформыlinux, macos
ТегиFine-Tuning, Axolotl, LLM, LoRA, QLoRA, DPO, KTO, ORPO, GRPO, YAML, HuggingFace, DeepSpeed, Multimodal

Справочник: полный SKILL.md​

к сведению

Ниже приведено полное определение навыка, которое VibeOS загружает при его активации. Это те инструкции, которые видит агент, когда навык активен.

Навык Axolotl

Что внутри​

Экспертное руководство по тонкой настройке LLM с помощью Axolotl — YAML-конфиги, 100+ моделей, LoRA/QLoRA, DPO/KTO/ORPO/GRPO, поддержка мультимодальности.

Всесторонняя помощь в разработке с Axolotl, созданная на основе официальной документации.

Когда использовать этот навык​

Этот навык следует активировать, когда:

  • Вы работаете с Axolotl
  • Вы задаёте вопросы о функциях или API Axolotl
  • Вы внедряете решения на Axolotl
  • Вы отлаживаете код Axolotl
  • Вы изучаете лучшие практики Axolotl

Быстрая справка​

Типовые шаблоны​

Шаблон 1: Чтобы убедиться, что скорость передачи данных достаточна для вашей задачи обучения, запуск тестов NCCL может помочь выявить узкие места, например:

./build/all_reduce_perf -b 8 -e 128M -f 2 -g 3

Шаблон 2: Настройте вашу модель на использование FSDP в YAML-файле Axolotl. Например:

fsdp_version: 2
fsdp_config:
offload_params: true
state_dict_type: FULL_STATE_DICT
auto_wrap_policy: TRANSFORMER_BASED_WRAP
transformer_layer_cls_to_wrap: LlamaDecoderLayer
reshard_after_forward: true

Шаблон 3: Параметр context_parallel_size должен быть делителем общего количества GPU. Например:

context_parallel_size

Шаблон 4: Например: - С 8 GPU и без параллелизма последовательностей: 8 различных батчей обрабатываются за шаг - С 8 GPU и context_parallel_size=4: только 2 различных батча обрабатываются за шаг (каждый разделён между 4 GPU) - Если ваш micro_batch_size на GPU равен 2, глобальный размер батча уменьшается с 16 до 4

context_parallel_size=4

Шаблон 5: Установка save_compressed: true в вашей конфигурации включает сохранение моделей в сжатом формате, что: - Сокращает использование дискового пространства примерно на 40% - Сохраняет совместимость с vLLM для ускоренного инференса - Сохраняет совместимость с llmcompressor для дальнейшей оптимизации (например, квантование)

save_compressed: true

Шаблон 6: Примечание: Нет необходимости размещать вашу интеграцию в папке integrations. Она может находиться в любом месте, если она установлена как пакет в вашем Python-окружении. Смотрите пример в этом репозитории: https://github.com/axolotl-ai-cloud/diff-transformer

integrations

Шаблон 7: Обработка как одиночных примеров, так и батчей данных. - Одиночный пример: sample[‘input_ids’] — это list[int] - Батч данных: sample[‘input_ids’] — это list[list[int]]

utils.trainer.drop_long_seq(sample, sequence_len=2048, min_sequence_len=2)

Примеры кода​

Пример 1 (python):

cli.cloud.modal_.ModalCloud(config, app=None)

Пример 2 (python):

cli.cloud.modal_.run_cmd(cmd, run_folder, volumes=None)

Пример 3 (python):

core.trainers.base.AxolotlTrainer(
*_args,
bench_data_collator=None,
eval_data_collator=None,
dataset_tags=None,
**kwargs,
)

Пример 4 (python):

core.trainers.base.AxolotlTrainer.log(logs, start_time=None)

Пример 5 (python):

prompt_strategies.input_output.RawInputOutputPrompter()

Справочные файлы​

Этот навык включает исчерпывающую документацию в references/:

  • api.md — Документация API
  • dataset-formats.md — Документация по форматам наборов данных
  • other.md — Прочая документация

Используйте view для чтения конкретных справочных файлов, когда требуется детальная информация.

Работа с этим навыком​

Для начинающих​

Начните с файлов getting_started или tutorials для изучения основ.

Для конкретных функций​

Используйте соответствующий справочный файл категории (api, guides и т.д.) для получения подробной информации.

Для примеров кода​

Раздел быстрой справки выше содержит типовые шаблоны, извлечённые из официальной документации.

Ресурсы​

references/​

Организованная документация, извлечённая из официальных источников. Эти файлы содержат:

  • Подробные объяснения
  • Примеры кода с аннотациями языка
  • Ссылки на оригинальную документацию
  • Оглавление для быстрой навигации

scripts/​

Добавьте сюда вспомогательные скрипты для типовых задач автоматизации.

assets/​

Добавьте сюда шаблоны, заготовки или примеры проектов.

Примечания​

  • Этот навык был автоматически сгенерирован на основе официальной документации
  • Справочные файлы сохраняют структуру и примеры из исходных документов
  • Примеры кода включают определение языка для лучшей подсветки синтаксиса
  • Типовые шаблоны извлечены из распространённых примеров использования в документации

Обновление​

Чтобы обновить этот навык с актуальной документацией:

  1. Повторно запустите парсер с той же конфигурацией
  2. Навык будет пересобран с последней информацией