NVIDIA NeMo プロジェクト詳細
プロジェクト概要
NVIDIA NeMo Frameworkは、研究者およびPyTorch開発者向けに構築された、スケーラブルでクラウドネイティブな生成AIフレームワークです。大規模言語モデル(LLM)、マルチモーダルモデル(MM)、自動音声認識(ASR)、テキスト読み上げ(TTS)、およびコンピュータビジョン(CV)の分野に焦点を当てています。このフレームワークは、既存のコードと事前学習済みモデルのチェックポイントを活用して、新しい生成AIモデルを効率的に作成、カスタマイズ、およびデプロイできるように設計されています。
コア機能
NeMo 2.0 の主なアップデート
NeMo 2.0は、以前のバージョンであるNeMo 1.0と比較して、柔軟性、パフォーマンス、およびスケーラビリティを強化するいくつかの重要な改善を導入しました。
- Pythonベースの構成 - YAMLファイルからPythonベースの構成に移行し、より高い柔軟性と制御を提供
- モジュール化された抽象化 - PyTorch Lightningのモジュール化された抽象化を採用し、適応と実験のプロセスを簡素化
- スケーラビリティ - NeMo-Runを使用して、数千のGPUの大規模な実験にシームレスに拡張
技術アーキテクチャの利点
すべてのNeMoモデルはLightningを使用してトレーニングされ、トレーニングは自動的に数千のGPUに拡張できます。フレームワークには、最先端の分散トレーニング技術が統合されています。
- テンソル並列処理(TP)
- パイプライン並列処理(PP)
- 完全シャードデータ並列処理(FSDP)
- 専門家混合(MoE)
- 混合精度トレーニング(BFloat16およびFP8をサポート)
TransformerベースのLLMおよびMMは、NVIDIA Hopper GPUでNVIDIA Transformer Engineを使用してFP8トレーニングを実行し、NVIDIA Megatron Coreを利用してTransformerモデルのトレーニングを拡張します。
主な応用分野
1. 大規模言語モデルとマルチモーダルモデル
最新機能アップデート
- AutoModelサポート - NeMo Frameworkの最新機能であるAutoModelは、🤗Hugging Faceモデルをサポートします。25.02バージョンは、テキスト生成カテゴリのAutoModelForCausalLMに焦点を当てています。
- Blackwellサポート - NeMo FrameworkはBlackwellサポートを追加しました。25.02バージョンは、B200の機能パリティに焦点を当てています。
モデルアライメント技術
NeMo LLMは、SteerLM、直接選好最適化(DPO)、および人間フィードバック強化学習(RLHF)などの最先端の方法を使用してアライメントできます。教師あり微調整(SFT)に加えて、NeMoはLoRA、P-Tuning、Adapters、IA3などの最新のパラメータ効率的な微調整(PEFT)技術もサポートしています。
2. Cosmos世界基礎モデル
NVIDIA Cosmosプラットフォームは、物理AIシステムの世界モデル開発を加速します。CUDAに基づいて構築されたCosmosは、最先端の世界基礎モデル、ビデオトークナイザー、およびAIアクセラレーションデータ処理パイプラインを組み合わせています。開発者は、Cosmos世界基礎モデルを微調整するか、新しいモデルをゼロから構築することで、世界モデルの開発を加速できます。
3. 音声認識技術
Parakeetシリーズモデル
- Parakeet-TDT - 精度が向上し、以前の最高のモデルであるParakeet-RNNT-1.1Bよりも64%高速
- Canary多言語モデル - 英語、スペイン語、ドイツ語、フランス語の音声を転記でき、句読点と大文字が含まれ、これらの言語間の双方向翻訳も提供
パフォーマンス最適化
NVIDIA NeMoチームは、CTC、RNN-T、およびTDTモデル向けに複数の推論最適化をリリースし、最大10倍の推論速度の向上を実現しました。これらのモデルは現在、2,000を超える逆リアルタイムファクター(RTFx)を超えており、一部は6,000のRTFxに達しています。
インストールとデプロイ
サポートされているインストール方法
- Conda/Pipインストール - NeMoの探索に適しており、ASRおよびTTS分野に推奨
- NGC PyTorchコンテナ - ソースコードから高度に最適化されたコンテナにインストール
- NGC NeMoコンテナ - すべての依存関係を含むすぐに使用できるソリューション
システム要件
- Python 3.10以降
- PyTorch 2.5以降
- NVIDIA GPU(モデルトレーニングを行う場合)
プラットフォームサポート
オペレーティングシステム/プラットフォーム |
PyPiインストール |
NGCコンテナソースコードインストール |
Linux - amd64/x84_64 |
限定サポート |
完全サポート |
Linux - arm64 |
限定サポート |
限定サポート |
macOS - amd64/x64_64 |
非推奨 |
非推奨 |
macOS - arm64 |
限定サポート |
限定サポート |
エコシステムとツールチェーン
関連プロジェクト
- NeMo-Run - 機械学習実験の構成、起動、および管理のためのツール
- NeMo Curator - LLM用のスケーラブルなデータ前処理およびキュレーションツールキット
- NeMo Guardrails - LLMベースの対話システムにプログラム可能なガードレールを追加するためのオープンソースツールキット
- NeMo Aligner - モデルアライメントツール
- NeMo Skills - 大規模言語モデルの「スキル」を改善するプロジェクト
デプロイと最適化
- NeMo LLMおよびMMは、NVIDIA NeMo Microservicesを介してデプロイおよび最適化できます
- NeMo ASRおよびTTSモデルは、NVIDIA Rivaを介して推論を最適化し、本番環境のユースケースにデプロイできます
パフォーマンス
ベンチマーク結果
- MLPerf Training v4.0 - NVIDIA NeMo FrameworkおよびNVIDIA Hopper GPUを使用して、NVIDIAは11,616個のH100 GPUに拡張し、LLMの事前トレーニングでほぼ線形のパフォーマンス拡張を実現しました
- H200パフォーマンス向上 - NVIDIA H200 Tensor Core GPUでのLlama 2の事前トレーニング速度が最大4.2倍向上
アプリケーション事例とパートナー
エンタープライズアプリケーション
- Amazon Titan基礎モデル - NVIDIA NeMo Frameworkは、Amazon Titan基礎モデルに効率的な大規模言語モデルトレーニングサポートを提供するようになりました
- Bria.aiプラットフォーム - NeMoマルチモーダルコレクションのリファレンス実装を利用して、高スループットと低遅延の画像生成を実現
クラウドプラットフォームサポート
- Amazon EKS - Amazon Elastic Kubernetes Serviceクラスターでの分散トレーニングワークロードの実行をサポート
- Google GKE - Google Kubernetes Engineでの生成AIモデルのトレーニングに関するエンドツーエンドのガイダンスを提供
オープンソースとライセンス
NeMo FrameworkはApache 2.0ライセンスでオープンソース化されており、コミュニティの貢献を歓迎します。このプロジェクトはGitHubで活発な開発とサポートを維持しており、広範なドキュメント、チュートリアル、およびサンプルスクリプトを提供しています。
学習リソース
- 公式ドキュメント - 完全なユーザーガイドと技術ドキュメントを提供
- チュートリアル - Google Colabで実行できる広範なチュートリアル
- サンプルスクリプト - マルチGPU/マルチノードトレーニングをサポートする完全なサンプルスイート
- コミュニティサポート - GitHub Discussionsボードを介してFAQとコミュニティサポートを提供
NVIDIA NeMo Frameworkは、生成AI開発の最前線を表しており、研究者と開発者に、次世代AIアプリケーションを構築するための強力で柔軟かつスケーラブルなプラットフォームを提供します。