awslabs/awsome-distributed-ai

Collection of best practices, reference architectures, model training examples and utilities to train large models on AWS.

What it solves

このプロジェクトは、AWS 上での分散型機械学習トレーニングのデプロイと最適化を簡素化するために、包括的なリファレンスアーキテクチャとテストケースを提供します。大規模モデルのための高性能計算クラスター、ネットワーク、およびオーケストレーションを手動で設定する複雑さを回避するのに役立ちます。

How it works

このリポジトリは、いくつかの機能モジュールで構成されています:

  • Architectures: SageMaker HyperPod, AWS ParallelCluster, AWS Batch, および Amazon EKS を使用して計算環境をデプロイするための CloudFormation テンプレートを提供します。
  • Custom Images: Packer と Ansible を使用して、トレーニング用に最適化された Amazon Machine Images (AMIs) とコンテナを作成します。
  • Test Cases: さまざまなフレームワーク (PyTorch, Megatron-LM, JAX, NeMo) と並列化技術 (DDP, FSDP) の事前設定済み例を提供し、異なるモデルサイズでのトレーニングを検証します。
  • Validation & Observability: GPU クラスターのヘルスチェック、PyTorch 環境の検証、および Prometheus と Grafana によるモニタリングツールを含みます。
  • Micro-benchmarks: ネットワーク通信 (NCCL, NCCL, NVSHMEM) およびエキスパート並列化 (MoE) の性能テストを提供します。

Who it’s for

AWS インフラストラクチャ上で大規模モデルのための分散型トレーニングワークロードをセットアップ、スケール、および最適化する必要がある ML エンジニアおよびインフラストラクチャアーキテクト。

Highlights

  • Multi-service support: HyperPod, EKS, ParallelCluster, および AWS Batch をサポート。
  • Framework agnostic: PyTorch, JAX, および Megatron-LM のテストケースを含みます。
  • Performance focused: EFA モニタリング、GPU ヘルスチェック、および通信マイクロベンチマーク用の専用ツール。
  • End-to-end guidance: LLM トレーニングクラスターの運用化に関するワークショップやブログ記事を含みます。