AI Personal Learning
und praktische Anleitung
讯飞绘镜

LLaMA Factory: Effiziente Feinabstimmung von mehr als hundert Open-Source-Makromodellen, einfache Modellanpassung

Allgemeine Einführung

LLaMA-Factory ist ein einheitlicher und effizienter Rahmen für die Feinabstimmung, der die flexible Anpassung und das effiziente Training von über 100 großen Sprachmodellen (LLMs) unterstützt. Die eingebaute LLaMA-Board-Webschnittstelle ermöglicht es den Nutzern, Modelle fein abzustimmen, ohne Code schreiben zu müssen. Das Framework integriert eine Vielzahl fortschrittlicher Trainingsmethoden und praktischer Tipps, um die Trainingsgeschwindigkeit und die GPU-Speicherauslastung deutlich zu verbessern.

LLaMA Factory:高效微调百余种开源大模型,轻松实现模型定制-1


 

Funktionsliste

  • Unterstützung mehrerer ModelleUnterstützung für LLaMA, LLaVA, Mistral, Qwen und andere mehrsprachige Modelle.
  • Mehrere AusbildungsmethodenUmfasst das Trimmen des gesamten Volumens, das Einfrieren, LoRA, QLoRA, usw.
  • effizienter AlgorithmusIntegration von GaLore, BAdam, Adam-mini, DoRA und anderen fortgeschrittenen Algorithmen.
  • praktisches KönnenUnterstützung für FlashAttention-2, Unsloth, Liger Kernel, und mehr.
  • Experimentelle ÜberwachungBietet Überwachungswerkzeuge wie LlamaBoard, TensorBoard, Wandb, MLflow und mehr.
  • schnelle InferenzBietet OpenAI-ähnliche APIs, Gradio UI und CLI-Schnittstellen.
  • Unterstützung von DatensätzenUnterstützung für das Herunterladen von vortrainierten Modellen und Datensätzen von HuggingFace, ModelScope und anderen Plattformen.

 

Hilfe verwenden

Einbauverfahren

  1. Klonen Sie den Projektcode:
   git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
  1. Installieren Sie die Abhängigkeit:
   pip install -e ".[torch,metrics]"

Zu den optionalen Abhängigkeiten gehören: torch, torch-npu, metrics, deepspeed, liger-kernel, bitsandbytes, und weitere.

Vorbereitung der Daten

Bitte beachten Sie data/README.md Erfahren Sie mehr über das Dataset-Dateiformat. Sie können Datensätze auf dem HuggingFace / ModelScope / Modelers Hub verwenden oder Datensätze auf Ihre lokale Festplatte laden.

Schnellstart

Verwenden Sie die folgenden Befehle, um LoRA auszuführen, um Llama3-8B-Instruct-Modelle abzustimmen, zu analysieren und zusammenzuführen:

llamafactory-cli train examples/train_lora/llama3_lora_sft.yaml
llamafactory-cli chat examples/inference/llama3_lora_sft.yaml
llamafactory-cli export examples/merge_lora/llama3_lora_sft.yaml

Für eine erweiterte Verwendung siehe examples/README.md.

Verwendung der LLaMA Board GUI

Die Feinabstimmung erfolgt über die von Gradio bereitgestellte LLaMA Board GUI:

llamafactory-cli webui

Docker-Bereitstellung

Für CUDA-Benutzer:

cd docker/docker-cuda/
docker compose up -d
docker compose exec llamafactory bash

Für Ascend NPU-Benutzer:

cd docker/docker-npu/
docker compose up -d
docker compose exec llamafactory bash

Für AMD ROCm-Benutzer:

cd docker/docker-rocm/
docker compose up -d
docker compose exec llamafactory bash

API-Bereitstellung

Verwendung von APIs im Stil von OpenAI und vLLM Begründungen:

API_PORT=8000 llamafactory-cli api examples/inference/llama3_vllm.yaml

Besuchen Sie diese Seite für die API-Dokumentation.

Modelle und Datensätze herunterladen

Wenn Sie Probleme beim Herunterladen von Modellen und Datensätzen von Hugging Face haben, können Sie ModelScope verwenden:

export USE_MODELSCOPE_HUB=1

Trainieren Sie ein Modell, indem Sie die Modell-ID des ModelScope Hub angeben, z. B. LLM-Research/Meta-Llama-3-8B-Instruct.

Aufzeichnung von Versuchsergebnissen mit W&B

Zur Verwendung Gewichte & Biases zeichnet die Ergebnisse seiner Experimente mit den folgenden Parametern in der yaml-Datei auf:

wandb:
project: "your_project_name"
entity: "your_entity_name"
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " LLaMA Factory: Effiziente Feinabstimmung von mehr als hundert Open-Source-Makromodellen, einfache Modellanpassung
de_DEDeutsch