NVIDIA NeMo Projekt – Detaillierte Vorstellung
Projektübersicht
Das NVIDIA NeMo Framework ist ein skalierbares und Cloud-natives generatives KI-Framework, das speziell für Forscher und PyTorch-Entwickler entwickelt wurde und sich auf große Sprachmodelle (LLMs), multimodale Modelle (MMs), automatische Spracherkennung (ASR), Text-to-Speech (TTS) und Computer Vision (CV) konzentriert. Das Framework soll Benutzern helfen, effizient neue generative KI-Modelle zu erstellen, anzupassen und bereitzustellen, indem sie vorhandenen Code und vortrainierte Modell-Checkpoints nutzen.
Kernfunktionen
NeMo 2.0 – Wesentliche Aktualisierungen
NeMo 2.0 führt im Vergleich zu seinem Vorgänger NeMo 1.0 mehrere wichtige Verbesserungen ein, die die Flexibilität, Leistung und Skalierbarkeit erhöhen:
- Python-basierte Konfiguration – Übergang von YAML-Dateien zu Python-basierter Konfiguration, was mehr Flexibilität und Kontrolle bietet
- Modulare Abstraktion – Verwendung der modularen Abstraktion von PyTorch Lightning zur Vereinfachung der Anpassung und des Experimentierens
- Skalierbarkeit – Nahtlose Skalierung auf Tausende von GPUs für groß angelegte Experimente mit NeMo-Run
Technische Architekturvorteile
Alle NeMo-Modelle werden mit Lightning trainiert, wobei das Training automatisch auf Tausende von GPUs skaliert werden kann. Das Framework integriert modernste verteilte Trainingstechniken, darunter:
- Tensor Parallelism (TP)
- Pipeline Parallelism (PP)
- Fully Sharded Data Parallelism (FSDP)
- Mixture of Experts (MoE)
- Mixed Precision Training (Unterstützung für BFloat16 und FP8)
Transformer-basierte LLMs und MMs nutzen die NVIDIA Transformer Engine für FP8-Training auf NVIDIA Hopper GPUs und nutzen gleichzeitig NVIDIA Megatron Core zur Skalierung des Transformer-Modelltrainings.
Hauptanwendungsbereiche
1. Große Sprachmodelle und Multimodale Modelle
Neueste Funktionsupdates
- AutoModel-Unterstützung - Die neueste Funktion des NeMo Framework, AutoModel, unterstützt 🤗Hugging Face-Modelle. Version 25.02 konzentriert sich auf AutoModelForCausalLM in der Kategorie Textgenerierung.
- Blackwell-Unterstützung - Das NeMo Framework hat Blackwell-Unterstützung hinzugefügt. Version 25.02 konzentriert sich auf die Funktionsparität von B200.
Modell-Alignment-Techniken
NeMo LLMs können mit modernsten Methoden wie SteerLM, Direct Preference Optimization (DPO) und Reinforcement Learning from Human Feedback (RLHF) ausgerichtet werden. Neben Supervised Fine-Tuning (SFT) unterstützt NeMo auch die neuesten parameter-effizienten Fine-Tuning-Techniken (PEFT) wie LoRA, P-Tuning, Adapters und IA3.
2. Cosmos World Foundation Models
Die NVIDIA Cosmos-Plattform beschleunigt die Entwicklung von Weltmodellen für physische KI-Systeme. Cosmos basiert auf CUDA und kombiniert modernste Welt-Foundation-Modelle, Video-Tokenisierer und KI-beschleunigte Datenverarbeitungspipelines. Entwickler können die Entwicklung von Weltmodellen beschleunigen, indem sie Cosmos World Foundation Models feinabstimmen oder neue Modelle von Grund auf neu erstellen.
3. Spracherkennungstechnologie
Parakeet-Modellfamilie
- Parakeet-TDT – Bessere Genauigkeit und 64 % schneller als das bisher beste Modell Parakeet-RNNT-1.1B
- Canary Multilingual Model – Kann Sprache in Englisch, Spanisch, Deutsch und Französisch mit Zeichensetzung und Großschreibung transkribieren und bietet auch bidirektionale Übersetzungen zwischen diesen Sprachen
Leistungsoptimierung
Das NVIDIA NeMo-Team hat mehrere Inferenzoptimierungen für CTC-, RNN-T- und TDT-Modelle veröffentlicht, die eine bis zu 10-fache Steigerung der Inferenzgeschwindigkeit ermöglichen. Diese Modelle übertreffen jetzt einen Real-Time-Faktor (RTFx) von 2.000, einige erreichen sogar 6.000 RTFx.
Installation und Bereitstellung
Unterstützte Installationsmethoden
- Conda/Pip-Installation – Geeignet zum Erkunden von NeMo, empfohlen für ASR- und TTS-Bereiche
- NGC PyTorch Container – Installation aus dem Quellcode in einem hochoptimierten Container
- NGC NeMo Container – Sofort einsatzbereite Lösung, die alle Abhängigkeiten enthält
Systemanforderungen
- Python 3.10 oder höher
- PyTorch 2.5 oder höher
- NVIDIA GPU (wenn Modelltraining geplant ist)
Plattformunterstützung
Betriebssystem/Plattform |
PyPi-Installation |
NGC Container Quellcode-Installation |
Linux - amd64/x84_64 |
Begrenzte Unterstützung |
Volle Unterstützung |
Linux - arm64 |
Begrenzte Unterstützung |
Begrenzte Unterstützung |
macOS - amd64/x64_64 |
Veraltet |
Veraltet |
macOS - arm64 |
Begrenzte Unterstützung |
Begrenzte Unterstützung |
Ökosystem und Toolchain
Verwandte Projekte
- NeMo-Run – Tool zum Konfigurieren, Starten und Verwalten von Machine-Learning-Experimenten
- NeMo Curator – Skalierbares Datenvorverarbeitungs- und Kurations-Toolkit für LLMs
- NeMo Guardrails – Open-Source-Toolkit zum Hinzufügen programmierbarer Schutzschranken zu LLM-basierten Dialogsystemen
- NeMo Aligner – Modell-Alignment-Tool
- NeMo Skills – Projekt zur Verbesserung der "Fähigkeiten" großer Sprachmodelle
Bereitstellung und Optimierung
- NeMo LLMs und MMs können über NVIDIA NeMo Microservices bereitgestellt und optimiert werden
- NeMo ASR- und TTS-Modelle können über NVIDIA Riva für die Inferenz optimiert und für Produktionsanwendungsfälle bereitgestellt werden
Leistung
Benchmark-Ergebnisse
- MLPerf Training v4.0 – Mit dem NVIDIA NeMo Framework und NVIDIA Hopper GPUs konnte NVIDIA auf 11.616 H100 GPUs skalieren und eine nahezu lineare Leistungsskalierung beim LLM-Pretraining erzielen
- H200 Leistungssteigerung – Bis zu 4,2-fache Beschleunigung des Llama 2 Pretrainings auf NVIDIA H200 Tensor Core GPUs
Anwendungsfälle und Partner
Unternehmensanwendungen
- Amazon Titan Foundation Models – Das NVIDIA NeMo Framework bietet jetzt effiziente Unterstützung für das Training großer Sprachmodelle für Amazon Titan Foundation Models
- Bria.ai Plattform – Nutzung der Referenzimplementierung der multimodalen Sammlung von NeMo zur Realisierung von Bildgenerierung mit hohem Durchsatz und geringer Latenz
Cloud-Plattform-Unterstützung
- Amazon EKS – Unterstützung für die Ausführung verteilter Trainings-Workloads auf Amazon Elastic Kubernetes Service-Clustern
- Google GKE – Bereitstellung einer End-to-End-Anleitung für das Training generativer KI-Modelle auf Google Kubernetes Engine
Open Source und Lizenzierung
Das NeMo Framework ist unter der Apache 2.0-Lizenz Open Source und freut sich über Beiträge der Community. Das Projekt wird auf GitHub mit aktiver Entwicklung und Unterstützung gepflegt und bietet umfangreiche Dokumentation, Tutorials und Beispielskripte.
Lernressourcen
- Offizielle Dokumentation – Bietet vollständige Benutzerhandbücher und technische Dokumentation
- Tutorials – Umfangreiche Tutorials, die auf Google Colab ausgeführt werden können
- Beispielskripte – Vollständige Beispielsuite zur Unterstützung von Multi-GPU/Multi-Node-Training
- Community-Unterstützung – FAQ und Community-Unterstützung über den GitHub Discussions-Bereich
Das NVIDIA NeMo Framework repräsentiert die Spitze der generativen KI-Entwicklung und bietet Forschern und Entwicklern eine leistungsstarke, flexible und skalierbare Plattform zum Erstellen der nächsten Generation von KI-Anwendungen.