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: 提供 CloudFormation 範本,用於部署使用 SageMaker HyperPod、AWS ParallelCluster、AWS Batch 和 Amazon EKS 等服務的運算環境。
- 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, NCCOM, 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 訓練集群進行營運化的工作坊與部落格文章。