Home
Login

Eine leistungsstarke Toolbox für große Sprachmodelle, die das Vortraining, Feinabstimmung und die Bereitstellung von über 20 Modellen unterstützt.

Apache-2.0Python 12.3kLightning-AI Last Updated: 2025-06-18

LitGPT - Hochleistungs-Toolbox für große Sprachmodelle

Projektübersicht

LitGPT ist eine Open-Source-Toolbox für große Sprachmodelle, die von Lightning AI entwickelt wurde und über 20 hochleistungsfähige Sprachmodelle für Vortraining, Feinabstimmung und skalierbare Bereitstellung bietet. Das Projekt basiert auf Lightning Fabric und erweitert Lit-LLaMA und nanoGPT, wobei der Fokus auf der Bereitstellung von LLM-Trainings- und Bereitstellungsfunktionen auf Enterprise-Niveau liegt.

Kernfunktionen

✅ Enterprise-Funktionen

  • Apache 2.0 Lizenz - Unterstützt uneingeschränkte Nutzung auf Enterprise-Niveau
  • Entwicklerfreundlich - Single-File-Implementierung ohne Abstraktionsschichten, erleichtert das Debuggen
  • Leistungsoptimiert - Entwickelt für maximale Leistung, reduzierte Kosten und beschleunigtes Training
  • Verifizierte Rezepte - Hochoptimierte Trainings-/Feinabstimmungsrezepte, die im Enterprise-Maßstab getestet wurden

✅ Fortschrittliche technische Funktionen

  • Von Grund auf implementiert - Alle Modelle sind von Grund auf neu geschrieben, ohne Abstraktionsschichten, volle Kontrolle
  • Flash Attention v2 - Neueste Optimierung des Aufmerksamkeitsmechanismus
  • Multi-GPU-Unterstützung - Implementiert durch Fully Sharded Data Parallelism (FSDP)
  • Speicheroptimierung - Optionale CPU-Offload- und TPU/XLA-Unterstützung
  • Quantisierungstechniken - Unterstützt 4-Bit-Gleitkomma, 8-Bit-Integer und doppelte Quantisierung
  • Parametereffiziente Feinabstimmung - Unterstützt LoRA, QLoRA, Adapter und Adapter v2

Unterstützte Modelle

LitGPT unterstützt über 20 gängige große Sprachmodelle, darunter:

Hauptmodellfamilien

  • Llama-Familie - Llama 3, 3.1, 3.2, 3.3 (1B-405B Parameter)
  • CodeGemma - 7B-Modell, das speziell für die Code-Generierung entwickelt wurde
  • Gemma-Familie - Googles Open-Source-Modelle
  • Mistral-Familie - Beinhaltet Mistral 7B und Mixtral usw.
  • Phi-Familie - Microsofts kleine, effiziente Modelle
  • Qwen-Familie - Alibabas mehrsprachige Modelle
  • DeepSeek R1 - Neuestes Inferenzmodell

Besondere Modelle

  • Falcon-Familie - Von TII entwickelte Hochleistungsmodelle
  • StableLM - Stability AIs stabiles Sprachmodell
  • TinyLlama - Leichte Llama-Variante
  • SmolLM - Hugging Faces kleines Modell

Kernfunktionen

1. Schnellstart

from litgpt import LLM
llm = LLM.load("microsoft/phi-2")
text = llm.generate("Fix the spelling: Every fall, the family goes to the mountains.")
print(text)

2. Modellfeinabstimmung

Unterstützt verschiedene Feinabstimmungsmethoden:

  • Vollständige Feinabstimmung - Trainiert alle Parameter
  • LoRA-Feinabstimmung - Low-Rank Adaptation Feinabstimmung
  • QLoRA - Quantisierte LoRA-Feinabstimmung
  • Adapter-Feinabstimmung - Adapter-Layer-Feinabstimmung

Beispielbefehl:

litgpt finetune microsoft/phi-2 \
  --data JSON \
  --data.json_path my_custom_dataset.json \
  --data.val_split_fraction 0.1 \
  --out_dir out/custom-model

3. Modellvortraining

Unterstützt das Training von Grund auf und die Fortsetzung des Vortrainings:

litgpt pretrain EleutherAI/pythia-160m \
  --tokenizer_dir EleutherAI/pythia-160m \
  --data TextFiles \
  --data.train_data_path "custom_texts/" \
  --train.max_tokens 10_000_000 \
  --out_dir out/custom-model

4. Modellbereitstellung

Unterstützt die Ein-Klick-Bereitstellung als Webdienst:

# Bereitstellung eines vortrainierten Modells
litgpt serve microsoft/phi-2

# Bereitstellung eines benutzerdefinierten Modells
litgpt serve out/custom-model/final

5. Modellevaluierung

Unterstützt verschiedene Evaluierungs-Benchmarks:

litgpt evaluate microsoft/phi-2 --tasks 'truthfulqa_mc2,mmlu'

6. Interaktiver Chat

litgpt chat microsoft/phi-2

Technische Vorteile

Leistungsoptimierung

  • Optimierte Inferenzgeschwindigkeit - Speziell für schnelle Inferenz optimiert
  • Quantisierungsunterstützung - Reduziert den Speicherbedarf
  • Low-Memory-GPU-Betrieb - Unterstützt ressourcenbeschränkte Umgebungen
  • Produktionsreife Skalierung - Unterstützt 1-1000+ GPU/TPU

Speicher- und Rechenoptimierung

  • Gemischte Präzisionstraining - Unterstützt FP16-, BF16-, FP32-Mischung
  • Gradienten-Checkpointing - Reduziert die Speichernutzung
  • CPU-Offload - Verarbeitet extrem große Modelle
  • Verteiltes Training - Multi-Node-Multi-GPU-Unterstützung

Konfigurierbares Training

LitGPT bietet validierte YAML-Konfigurationsdateien, die verschiedene Trainingsszenarien abdecken:

litgpt finetune \
  --config https://raw.githubusercontent.com/Lightning-AI/litgpt/main/config_hub/finetune/llama-2-7b/lora.yaml

Anwendungsfälle

Forschung und Entwicklung

  • Modellforschung - Bietet lesbaren, leicht modifizierbaren Code
  • Algorithmus-Experimente - Unterstützt die schnelle Implementierung neuester Forschungsideen
  • Benchmark-Tests - Standardisierte Modellevaluierungsprozesse

Unternehmensanwendungen

  • Benutzerdefinierte Modelle - Modellfeinabstimmung für spezifische Geschäftsszenarien
  • Produktionsbereitstellung - Modellservicebereitstellung auf Enterprise-Niveau
  • Kostenoptimierung - Reduziert die Rechenkosten durch Quantisierung und Optimierung

Bildung und Lernen

  • Anfängerfreundlich - Klare Codestruktur und detaillierte Dokumentation
  • Praktische Lehre - Vollständiger Prozess vom Training bis zur Bereitstellung
  • Forschungstraining - Bietet Forschern ein zuverlässiges Basiswerkzeug

Community-Ökosystem

Unterstützung bekannter Projekte

  • SAMBA-Projekt - Von Microsoft entwickeltes Hybrid-State-Space-Modell basierend auf LitGPT
  • TinyLlama - Mit LitGPT trainiertes kleines 300M-Parameter-Modell
  • NeurIPS 2023 Challenge - Offizielles Toolkit für die LLM-Effizienz-Challenge

Aktive Open-Source-Community

  • Kontinuierliche Updates - Regelmäßige Ergänzung neuer Modelle und Funktionen
  • Community-Beiträge - Entwickler aller Niveaus sind willkommen, sich zu beteiligen
  • Detaillierte Dokumentation - Umfassende Tutorials und API-Dokumentation

Installation und Verwendung

Basisinstallation

pip install 'litgpt[all]'

Installation aus dem Quellcode

git clone https://github.com/Lightning-AI/litgpt
cd litgpt
pip install -e '.[all]'

Grundlegender Nutzungsprozess

  1. Modellauswahl - Wählen Sie aus über 20 unterstützten Modellen
  2. Datenvorbereitung - Verwenden Sie integrierte Datensätze oder benutzerdefinierte Daten
  3. Trainingskonfiguration - Verwenden Sie voreingestellte Konfigurationen oder benutzerdefinierte Parameter
  4. Training durchführen - Vortraining oder Feinabstimmung des Modells
  5. Modellbereitstellung - Bereitstellung als Produktionsdienst
  6. Modellevaluierung - Verwenden Sie Standard-Benchmark-Tests

Technische Dokumentation

LitGPT bietet eine vollständige technische Dokumentation, einschließlich:

  • Schnellstartanleitung - Vollständiges Tutorial von 0 zu LitGPT
  • Feinabstimmungs-Tutorial - Enthält detaillierte Erklärungen zu LoRA, QLoRA und Adapter
  • Vortrainingsanleitung - Vollständiger Prozess zum Trainieren von Modellen von Grund auf
  • Bereitstellungsdokumentation - Best Practices für die Bereitstellung in Produktionsumgebungen
  • Leistungsoptimierung - OOM-Fehlerbehandlung und Speicheroptimierungstipps
  • Cloud-Bereitstellung - Anleitungen zur Verwendung von TPU und Cloud-Plattformen

Zusammenfassung

LitGPT ist eine umfassende, leistungsstarke Toolbox für große Sprachmodelle, die für eine Vielzahl von Anwendungen von der Forschung bis zur Produktion geeignet ist. Mit seinem Designprinzip der Implementierung von Grund auf und ohne Abstraktionsschichten bietet es dem Benutzer maximale Flexibilität und Kontrolle, während es durch umfangreiche Optimierungstechniken und Konfigurationsoptionen einen effizienten Betrieb unter verschiedenen Hardwarebedingungen gewährleistet. Ob KI-Forscher, Unternehmensentwickler oder Lernende, jeder kann in LitGPT eine Lösung finden, die seinen Bedürfnissen entspricht.