

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# SageMaker モデル並列処理ライブラリのリリースノート
<a name="model-parallel-release-notes"></a>

以下のリリースノートを参照して、SageMaker モデル並列処理 (SMP) ライブラリの最新の更新情報を確認してください。SMP ライブラリについてさらにご質問がある場合は、SMP サービスチーム (`sm-model-parallel-feedback@amazon.com`) にお問い合わせください。

## SageMaker モデル並列処理ライブラリ v2.8.0
<a name="model-parallel-release-notes-20250306"></a>

*日付: 2025 年 4 月 1 日*

### SMP ライブラリの更新情報
<a name="model-parallel-release-notes-20250306-smp-lib"></a>

**バグ修正**
+ SMP 勾配ノルムクリッピングでアクティベーションオフロードがサポートされるようになりました。

### SMP Docker コンテナと Enroot コンテナ
<a name="model-parallel-release-notes-20250306-smp-docker"></a>

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker AI は自動的に SMP Docker コンテナを選択します。SMP v2 のこのリリースを使用するには、SageMaker Python SDK を `v2.243.0` 以降にアップグレードしてください。

**最新の更新内容**
+ PyTorch v2.5.1 のサポートが追加されました。
+ CUDA サポートを v12.4 にアップグレードしました。
+ NCCL サポートを v2.23.4 にアップグレードしました。
+ SMDDP ライブラリを 2.6.0 にアップグレードしました。

**コンテナの詳細**
+ PyTorch v2.5.1 および CUDA v12.4 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.5.1-gpu-py311-cu124
  ```
+ PyTorch v2.5.1 および CUDA v12.4 に対応した SMP Enroot コンテナ

  ```
  https://sagemaker-distributed-model-parallel.s3.<us-west-2>.amazonaws.com/enroot/2.5.1-gpu-py311-cu124.sqsh
  ```
+ インストール済みのパッケージ
  + SMP ライブラリ v2.8.0
  + SMDDP ライブラリ v2.6.0
  + CUDNN v9.4.0
  + FlashAttention v2.5.8
  + TransformerEngine v1.10
  + Megatron v0.8.0
  + Hugging Face Transformers v4.44.2
  + Hugging Face Datasets ライブラリ v2.19.0
  + EFA v1.36.0
  + NCCL v2.23.4
  + AWS-OFI-NCCL v1.13.2

### SMP Conda チャネル
<a name="model-parallel-release-notes-20250306-smp-conda-channel"></a>

次の S3 バケットは、SMP サービスチームがホストする SMP ライブラリのパブリック Conda チャネルです。SageMaker HyperPod クラスターなどの環境に SMP v2 ライブラリをインストールする場合は、この Conda チャネルを使用して正しく SMP ライブラリをインストールしてください。
+ `https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/`

Conda チャネル全般の詳細については、*Conda のドキュメント*の「[Channels](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html)」を参照してください。

## SageMaker モデル並列処理ライブラリ v2.7.0
<a name="model-parallel-release-notes-20241204"></a>

*日付: 2024 年 12 月 4 日*

### SMP ライブラリの更新情報
<a name="model-parallel-release-notes-20241204-smp-lib"></a>

**新しい特徴**
+ [SageMaker HyperPod レシピ](sagemaker-hyperpod-recipes.md) のサポートを追加しました。

### SMP Docker コンテナと Enroot コンテナ
<a name="model-parallel-release-notes-20241204-smp-docker"></a>

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナと Enroot コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker は自動的に SMP Docker コンテナを選択します。SMP v2 のこのリリースを使用するには、SageMaker Python SDK を `v2.237.0` 以降にアップグレードしてください。

**コンテナの詳細**
+ PyTorch v2.4.1 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.<us-west-2>.smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  ```
+ PyTorch v2.4.1 および CUDA v12.1 に対応した SMP Enroot コンテナ

  ```
  https://sagemaker-distributed-model-parallel.s3.<us-west-2>.amazonaws.com/enroot/2.4.1-gpu-py311-cu121.sqsh
  ```
+ インストール済みのパッケージ
  + SMP ライブラリ v2.7.0
  + SMDDP ライブラリ v2.5.0
  + CUDNN v9.4.0
  + FlashAttention v2.5.8
  + TransformerEngine v1.10
  + Megatron v0.8.0
  + Hugging Face Transformers v4.44.2
  + Hugging Face Datasets ライブラリ v2.19.0
  + EFA v1.32.0
  + NCCL v2.21.5

### SMP Conda チャネル
<a name="model-parallel-release-notes-20241204-smp-conda-channel"></a>

次の S3 バケットは、SMP サービスチームがホストする SMP ライブラリのパブリック Conda チャネルです。SageMaker HyperPod クラスターなどの Conda 環境に SMP v2 ライブラリをインストールする場合は、この Conda チャネルを使用して正しく SMP ライブラリをインストールしてください。
+ `https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/`

Conda チャネル全般の詳細については、*Conda のドキュメント*の「[Channels](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html)」を参照してください。

## SageMaker モデル並列処理ライブラリ v2.6.1
<a name="model-parallel-release-notes-20241031"></a>

*日付: 2024 年 10 月 31 日*

### SMP ライブラリの更新情報
<a name="model-parallel-release-notes-20241031-smp-lib"></a>

**バグ修正**
+ SMP v2.6.0 で古いトレーニングスクリプトを使用する場合に発生する `ImportError` の問題を修正しました。これにより、SMP v2.6.0 との下位非互換性が修正されます。
+ `torch.sagemaker.distributed.fsdp.checkpoint` の `DeprecationWarning` を追加しました。このモジュールは SMP v2.7.0 で廃止および削除されます。コードで現在 `torch.sagemaker.distributed.fsdp.checkpoint` を使用している場合は、将来の問題を避けるため、SMP v2.7.0 のリリース前にスクリプトを更新する計画を立てる必要があります。
+ SMP v2.6.0 で特定された下位互換性の問題を修正しました。この問題は、SMP v2.6.0 での `USE_PG_WITH_UTIL` チェックポイントメソッドの非推奨化に関連しており、以前のバージョンのトレーニングスクリプトとの下位互換性をなくす結果となっていました。この問題を解決するには、PyTorch トレーニングジョブを再実行して、SMP v2.6.1 でパッケージ化された最新の SMP コンテナを取得します。

### SMP Docker コンテナ
<a name="model-parallel-release-notes-20241031-smp-docker"></a>

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker AI は自動的に SMP Docker コンテナを選択します。

**コンテナの詳細**
+ PyTorch v2.4.1 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  ```
+ インストール済みのパッケージ
  + SMP ライブラリ v2.6.1
  + SMDDP ライブラリ v2.5.0
  + CUDNN v9.4.0
  + FlashAttention v2.5.8
  + TransformerEngine v1.10
  + Megatron v0.8.0
  + Hugging Face Transformers v4.44.2
  + Hugging Face Datasets ライブラリ v2.19.0
  + EFA v1.32.0
  + NCCL v2.21.5

### SMP Conda チャネル
<a name="model-parallel-release-notes-20241031-smp-conda-channel"></a>

次の S3 バケットは、SMP サービスチームがホストする SMP ライブラリのパブリック Conda チャネルです。高度にカスタマイズ可能なコンピューティングリソース環境 (SageMaker HyperPod クラスターなど) に SMP v2 ライブラリをインストールする場合は、この Conda チャネルを使用して正しく SMP ライブラリをインストールしてください。
+ `https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/`

Conda チャネル全般の詳細については、*Conda のドキュメント*の「[Channels](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html)」を参照してください。

## SageMaker モデル並列処理ライブラリ v2.6.0
<a name="model-parallel-release-notes-20241017"></a>

*日付: 2024 年 10 月 17 日*

### SMP ライブラリの更新情報
<a name="model-parallel-release-notes-20241017-smp-lib"></a>

**新しい特徴**
+ 次の LLM モデル構成がサポートされるようになりました。[コンテキスト並列処理](model-parallel-core-features-v2-context-parallelism.md) および [テンソル並列性](model-parallel-core-features-v2-tensor-parallelism.md) を使用できるようになりました。
  + [Llama3.1 8B](https://huggingface.co/meta-llama/Llama-3.1-8B)
  + [Llama3.1 70B](https://huggingface.co/meta-llama/Llama-3.1-70B)
  + [Mistral 7B](https://huggingface.co/mistralai/Mistral-7B-v0.3)
+ 次の Mixtral モデル構成で [テンソル並列性](model-parallel-core-features-v2-tensor-parallelism.md) がサポートされるようになりました。
  + [Mixtral 8x7B](https://huggingface.co/mistralai/Mixtral-8x7B-v0.1)
  + [Mixtral 8x22B](https://huggingface.co/mistralai/Mixtral-8x22B-v0.1)
+ AllGather 集合通信を活用してキーと値のテンソルの完全なシーケンスを取得する、AllGather ベースのコンテキスト並列処理の実装がサポートされるようになりました。使用可能な実装は `p2p` と `all_gather` です。`p2p` 実装では、アテンションの計算中にピアツーピアの送受信呼び出しを使用してキーと値 (KV) のテンソルを蓄積します。非同期的に実行され、通信と計算をオーバーラップさせることができます。一方の `all_gather` 実装は、KV テンソルの蓄積に `AllGather` 集合通信演算を使用します。これらのコンテキスト並列処理の実装を適用する方法については、「[コンテキスト並列処理](model-parallel-core-features-v2-context-parallelism.md)」を参照してください。
+ Rotary Position Embedding (RoPE) のシータ値を調整できるようになりました。

**バグ修正**
+ パラメータ遅延が有効になっている場合に、Rotary Position Embedding (RoPE) が事前トレーニング中に適切に初期化されないバグを修正しました。

**既知の問題**
+ Transformer Engine は現在、スライディングウィンドウのアテンションが有効になっている場合は、コンテキスト並列処理や FP8 をサポートしていません。そのため、Mistral トランスフォーマーの SMP バージョンは、スライディングウィンドウ設定が非 NULL 値に設定されている場合、コンテキスト並列処理や FP8 トレーニングをサポートしません。

### SMP Docker コンテナ
<a name="model-parallel-release-notes-20241017-smp-docker"></a>

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker AI は自動的に SMP Docker コンテナを選択します。

**最新の更新内容**
+ PyTorch を v2.4.1 にアップグレードしました。
+ Megatron を v0.8.0 にアップグレードしました。
+ TransformerEngine ライブラリを v1.10 にアップグレードしました。
+ Transformers を v4.44.2 にアップグレードしました。
+ cuDNN を v9.4.0.58 にアップグレードしました。

**コンテナの詳細**
+ PyTorch v2.4.1 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.<us-west-2>.amazonaws.com/smdistributed-modelparallel:2.4.1-gpu-py311-cu121
  ```
+ インストール済みのパッケージ
  + SMP ライブラリ v2.6.0
  + SMDDP ライブラリ v2.5.0
  + CUDNN v9.4.0
  + FlashAttention v2.5.8
  + TransformerEngine v1.10
  + Megatron v0.8.0
  + Hugging Face Transformers v4.44.2
  + Hugging Face Datasets ライブラリ v2.19.0
  + EFA v1.32.0
  + NCCL v2.21.5

### SMP Conda チャネル
<a name="model-parallel-release-notes-20241017-smp-conda-channel"></a>

次の S3 バケットは、SMP サービスチームがホストする SMP ライブラリのパブリック Conda チャネルです。高度にカスタマイズ可能なコンピューティングリソース環境 (SageMaker HyperPod クラスターなど) に SMP v2 ライブラリをインストールする場合は、この Conda チャネルを使用して正しく SMP ライブラリをインストールしてください。
+ `https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/`

Conda チャネル全般の詳細については、*Conda のドキュメント*の「[Channels](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html)」を参照してください。

## SageMaker モデル並列処理ライブラリ v2.5.0
<a name="model-parallel-release-notes-20240828"></a>

*日付: 2024 年 8 月 28 日*

### SMP ライブラリの更新情報
<a name="model-parallel-release-notes-20240828-smp-lib"></a>

**新しい特徴**
+ Mixtral モデルにおいて、P5 インスタンスで FP8 データ形式を使用した混合精度トレーニングがサポートされるようになりました。
  + サポート対象の Mixtral 構成は 8x7B および 8x22B です。詳細については[P5 インスタンスでの Transformer Engine を使用した FP8 混合精度トレーニング](model-parallel-core-features-v2-mixed-precision.md#model-parallel-core-features-v2-mixed-precision-fp8-training-on-p5)を参照してください。
+ 次のモデル構成で [コンテキスト並列処理](model-parallel-core-features-v2-context-parallelism.md) がサポートされるようになりました。
  + Llama-v2: 7B および 70B
  + Llama-v3: 8B および 70B
  + GPT-NeoX: 20B
+ チェックポイントの非同期保存に対応しました。詳細については[SMP を使用したチェックポイント](model-parallel-core-features-v2-checkpoints.md)を参照してください。
  + Amazon EBS またはファイルサーバーを使用せずに、S3 に直接チェックポイントを保存できるようになりました。

**バグ修正**
+ Llama のファインチューニング中に、事前トレーニング済みのモデルチェックポイントをロードしてテンソル並列処理を利用すると、予期しない高い初期損失が発生する問題が解決されました。

**Notes** (メモ)
+ Mixtral に対して FP8 混合精度でアクティベーションチェックポイントを使用するには、アテンション層とエキスパート層を個別にチェックポイントする必要があります。適切な設定例については、*Amazon SageMaker AI のサンプルリポジトリ*の[トレーニングスクリプト例](https://github.com/aws/amazon-sagemaker-examples/blob/main/training/distributed_training/pytorch/model_parallel_v2/shared-scripts/train_utils.py)を参照してください。

**既知の問題**
+ MoE 構成 ([`torch.sagemaker.moe.moe_config.MoEConfig`](distributed-model-parallel-v2-reference.md#model-parallel-v2-torch-sagemaker-reference-moe)) の均衡 (balanced) 負荷分散タイプは、現時点では、アクティベーションチェックポイントとの互換性がありません。
+ コンテキスト並列処理を使用すると、GPT-NeoX では、事前トレーニングとファインチューニングの両方でパフォーマンスが低下します。
+ P4 インスタンスの GPT-NeoX では、パラメータが遅延初期化されている変換済みモデルから Hugging Face トランスフォーマーモデルに重みを直接ロードすると、最初のステップで損失の不一致が生じます。

### SMP Docker コンテナ
<a name="model-parallel-release-notes-20240828-smp-docker"></a>

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker AI は自動的に SMP Docker コンテナを選択します。SMP v2 のこのリリースを使用するには、SageMaker Python SDK を v2.224.0 以降にアップグレードしてください。

**最新の更新内容**
+ FlashAttention ライブラリを v2.5.8 にアップグレードしました。
+ Transformer Engine ライブラリを v1.8 にアップグレードしました。
  + Transformer Engine を Conda 環境にインストールする場合は、ソースからビルドし、特定のアップストリーム修正 ([744624d ](https://github.com/NVIDIA/TransformerEngine/commit/744624d004f4514ffbaa90ac83e214311c86c607)、[27c6342](https://github.com/NVIDIA/TransformerEngine/commit/27c6342ea8ad88034bf04b587dd13cb6088d2474)、[7669bf3](https://github.com/NVIDIA/TransformerEngine/commit/7669bf3da68074517b134cd6acebd04b221fd545)) をチェリーピックする必要があります。

**コンテナの詳細**
+ PyTorch v2.3.1 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.<region>.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121
  ```

  サポートされているリージョンの詳細なリストについては、[AWS リージョン](distributed-data-parallel-support.md#distributed-data-parallel-availablity-zone) を参照してください。
+ インストール済みのパッケージ
  + SMP ライブラリ v2.5.0
  + SMDDP ライブラリ v2.3.0
  + CUDNN v8.9.7.29
  + FlashAttention v2.5.8
  + TransformerEngine v1.8
  + Megatron v0.7.0
  + Hugging Face Transformers v4.40.1
  + Hugging Face Datasets ライブラリ v2.19.0
  + EFA v1.32.0
  + NCCL v2.21.5

### SMP Conda チャネル
<a name="model-parallel-release-notes-20240828-smp-conda-channel"></a>

次の S3 バケットは、SMP サービスチームがホストする SMP ライブラリのパブリック Conda チャネルです。高度にカスタマイズ可能なコンピューティングリソース環境 (SageMaker HyperPod クラスターなど) に SMP v2 ライブラリをインストールする場合は、この Conda チャネルを使用して正しく SMP ライブラリをインストールしてください。
+ `https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/`

Conda チャネル全般の詳細については、*Conda のドキュメント*の「[Channels](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html)」を参照してください。

## SageMaker モデル並列処理ライブラリ v2.4.0
<a name="model-parallel-release-notes-20240620"></a>

*日付: 2024 年 6 月 20 日*

### SMP ライブラリの更新情報
<a name="model-parallel-release-notes-20240620-lib"></a>

**バグ修正**
+ SMP Transformer の使用中に、ラベルがフォワードパス (順伝播) で渡されない場合に不正なロジット形状が生成されるバグを修正しました。

**最新の更新内容**
+ PyTorch v2.3.1 のサポートが追加されました。
+ Python v3.11 のサポートが追加されました。
+ Hugging Face Transformers ライブラリ v4.40.1 のサポートが追加されました。

**非推奨**
+ Python v3.10 のサポートを終了しました。
+ Hugging Face Transformers ライブラリの v4.40.1 より前のバージョンのサポートを終了しました。

**その他の変更**
+ 異なるランクで重複排除されたテンソルを保存するかどうかを切り替えるためのパッチを追加しました。詳細については、PyTorch GitHub リポジトリの[ディスカッションスレッド](https://github.com/pytorch/pytorch/pull/126569)を参照してください。

**既知の問題**
+ テンソル並列処理を用いて Llama-3 70B をファインチューニングする間に、損失が急増し、その後、より高い損失値で再開する可能性があるという既知の問題があります。

### SMP Docker コンテナ
<a name="model-parallel-release-notes-20240620-container"></a>

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker AI は自動的に SMP Docker コンテナを選択します。SMP v2 のこのリリースを使用するには、SageMaker Python SDK を v2.224.0 以降にアップグレードしてください。

**最新の更新内容**
+ SMDDP ライブラリを v2.3.0 にアップグレードしました。
+ NCCL ライブラリを v2.21.5 にアップグレードしました。
+ EFA ソフトウェアを v1.32.0 にアップグレードしました。

**非推奨**
+ [Torch Distributed Experimental (torchdistX) ライブラリ](https://pytorch.org/torchdistx/latest/index.html)のインストールを終了しました。

**コンテナの詳細**
+ PyTorch v2.3.1 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121
  ```
+ インストール済みのパッケージ
  + SMP ライブラリ v2.4.0
  + SMDDP ライブラリ v2.3.0
  + CUDNN v8.9.7.29
  + FlashAttention v2.3.3
  + TransformerEngine v1.2.1
  + Hugging Face Transformers v4.40.1
  + Hugging Face Datasets ライブラリ v2.19.0
  + EFA v1.32.0
  + NCCL v2.21.5

### SMP Conda チャネル
<a name="model-parallel-release-notes-20240620-conda-channel"></a>

次の S3 バケットは、SMP サービスチームがホストする SMP ライブラリのパブリック Conda チャネルです。高度にカスタマイズ可能なコンピューティングリソース環境 (SageMaker HyperPod クラスターなど) に SMP v2 ライブラリをインストールする場合は、この Conda チャネルを使用して正しく SMP ライブラリをインストールしてください。
+ `https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/`

Conda チャネル全般の詳細については、*Conda のドキュメント*の「[Channels](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html)」を参照してください。

## SageMaker モデル並列処理ライブラリ v2.3.1
<a name="model-parallel-release-notes-20240509"></a>

*日付: 2024 年 5 月 9 日*

**バグ修正**
+ エキスパート並列処理で [`torch.sagemaker.moe.moe_config.MoEConfig`](distributed-model-parallel-v2-reference.md#model-parallel-v2-torch-sagemaker-reference-moe) に `moe_load_balancing=balanced` を使用した場合の `ImportError` を修正しました。
+ `load_state_dict_from_rank0` が有効な状態で [`torch.sagemaker.transform`](distributed-model-parallel-v2-reference.md#model-parallel-v2-torch-sagemaker-reference-transform) を呼び出すと `KeyError` が発生する、ファインチューニングの問題を修正しました。
+ 大規模な Mixture of Experts (MoE) モデル (Mixtral 8x22B など) をファインチューニングのためにロードするとメモリ不足 (OOM) エラーが発生していましたが、このエラーを修正しました。

**SMP Docker コンテナ**

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。このリリースでは、前述のバグ修正を次の SMP Docker イメージに組み込みます。
+ PyTorch v2.2.0 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
  ```

## SageMaker モデル並列処理ライブラリ v2.3.0
<a name="model-parallel-release-notes-20240409"></a>

*日付: 2024 年 4 月 11 日*

**新しい特徴**
+ 新しい主要機能として*エキスパート並列処理*が追加され、Mixture of Experts トランスフォーマーモデルに対応しました。詳細については[エキスパート並列処理](model-parallel-core-features-v2-expert-parallelism.md)を参照してください。

**SMP Docker コンテナ**

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker は自動的に SMP Docker コンテナを選択します。SMP v2 のこのリリースを使用するには、SageMaker Python SDK を v2.214.4 以降にアップグレードしてください。
+ PyTorch v2.2.0 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
  ```
  + この Docker コンテナにインストール済みのパッケージ
    + SMDDP ライブラリ v2.2.0
    + CUDNN v8.9.5.29
    + FlashAttention v2.3.3
    + TransformerEngine v1.2.1
    + Hugging Face Transformers v4.37.1
    + Hugging Face Datasets ライブラリ v2.16.1
    + Megatron-core 0.5.0
    + EFA v1.30.0
    + NCCL v2.19.4

## SageMaker モデル並列処理ライブラリ v2.2.0
<a name="model-parallel-release-notes-20240307"></a>

*日付: 2024 年 3 月 7 日*

**新機能**
+ Transformer Engine の統合により、以下の Hugging Face トランスフォーマーモデルが P5 インスタンスで [FP8 トレーニング](model-parallel-core-features-v2-mixed-precision.md#model-parallel-core-features-v2-mixed-precision-fp8-training-on-p5)に対応しました。
  + GPT-NeoX
  + Llama 2

**バグ修正**
+ テンソル並列処理トレーニング中に、`AllGather` 集合呼び出しの前にテンソルの連続性が保証されないバグを修正しました。

**最新の更新内容**
+ PyTorch v2.2.0 のサポートが追加されました。
+ SMDDP ライブラリを v2.2.0 にアップグレードしました。
+ FlashAttention ライブラリを v2.3.3 にアップグレードしました。
+ NCCL ライブラリを v2.19.4 にアップグレードしました。

**非推奨**
+ Transformer Engine の v1.2.0 より前のバージョンのサポートを終了しました。

**既知の問題**
+ SMP [アクティベーションオフロード](model-parallel-core-features-v2-pytorch-activation-offloading.md) 機能は、現在機能していません。代わりに、ネイティブの PyTorch アクティベーションオフロードを使用してください。

**その他の変更**
+ PyTorch GitHub リポジトリの [https://github.com/pytorch/pytorch/issues/117748](https://github.com/pytorch/pytorch/issues/117748) の問題スレッドで言及されているパフォーマンスの低下を修正するためのパッチを追加しました。

**SMP Docker コンテナ**

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker AI は自動的に SMP Docker コンテナを選択します。SMP v2 のこのリリースを使用するには、SageMaker Python SDK を v2.212.0 以降にアップグレードしてください。
+ PyTorch v2.2.0 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
  ```
  + P4d、P4de、P5 インスタンスで使用可能
  + この Docker コンテナにインストール済みのパッケージ
    + SMDDP ライブラリ v2.2.0
    + CUDNN v8.9.5.29
    + FlashAttention v2.3.3
    + TransformerEngine v1.2.1
    + Hugging Face Transformers v4.37.1
    + Hugging Face Datasets ライブラリ v2.16.1
    + EFA v1.30.0
    + NCCL v2.19.4

## SageMaker モデル並列処理ライブラリ v2.1.0
<a name="model-parallel-release-notes-20240206"></a>

*日付: 2024 年 2 月 6 日*

**最新の更新内容**
+ PyTorch v2.1.2 のサポートが追加されました。

**非推奨**
+ Hugging Face Transformers v4.31.0 のサポートを終了しました。

**既知の問題**
+ `attn_implementation=flash_attention_2` と FSDP を使用して Hugging Face Llama 2 モデルをファインチューニングすると、モデルが収束しない問題が検出されました。詳細については、*Hugging Face Transformers GitHub リポジトリ*の[問題チケット](https://github.com/huggingface/transformers/issues/28826)を参照してください。収束しない問題を回避するには、`attn_implementation=sdpa` を使用してください。または、`use_smp_implementation=True` を設定して、SMP トランスフォーマーモデルの実装を使用してください。

**SMP Docker コンテナ**

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker は自動的に SMP Docker コンテナを選択します。SMP v2 のこのリリースを使用するには、SageMaker Python SDK を v2.207.0 以降にアップグレードしてください。
+ PyTorch v2.1.2 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.1.2-gpu-py310-cu121
  ```
  + P4d、P4de、P5 インスタンスで使用可能
  + この Docker コンテナにインストール済みのパッケージ
    + SMDDP ライブラリ v2.1.0
    + CUDNN v8.9.5.29
    + FlashAttention v2.3.3
    + TransformerEngine v1.2.1
    + Hugging Face Transformers v4.37.1
    + Hugging Face Datasets ライブラリ v2.16.1
    + EFA v1.30.0

**SMP Conda チャネル**

次の S3 バケットは、SMP サービスチームがホストするパブリック Conda チャネルです。高度にカスタマイズ可能なコンピューティングリソース環境 (SageMaker HyperPod クラスターなど) に SMP v2 ライブラリをインストールする場合は、この Conda チャネルを使用して正しく SMP ライブラリをインストールしてください。
+ `https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/`

Conda チャネル全般の詳細については、*Conda のドキュメント*の「[Channels](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/channels.html)」を参照してください。

## SageMaker モデル並列処理ライブラリ v2.0.0
<a name="model-parallel-release-notes-20231219"></a>

*日付: 2023 年 12 月 19 日*

**新しい特徴**

SageMaker モデル並列処理 (SMP) ライブラリ v2.0.0 をリリースしました。新たに次の機能が提供されています。
+ 新しい `smdistributed.modelparallel.torch` パッケージ。SMP v1.x の以前の `torch.sagemaker` パッケージを全面的に刷新しました。
+ PyTorch 2.0.1 に対応しました。
+ PyTorch FSDP に対応しました。
+ [Transformer Engine](https://docs.nvidia.com/deeplearning/transformer-engine/index.html) ライブラリを統合し、テンソル並列処理を実装しました。
+ [SageMaker トレーニング](train-model.md)と [SageMaker HyperPod](sagemaker-hyperpod.md) の両方に対応しました。

**重要な変更**
+ SMP v2 は API を全面的に刷新し、`torch.sagemaker` パッケージを提供します。ほとんどの場合、`torch.sagemaker.init()` モジュールで初期化し、モデル並列処理の設定パラメータを渡すだけで済みます。この新しいパッケージを使用すれば、トレーニングスクリプトのコード変更を大幅に簡素化できます。SMP v2 を使用するようにトレーニングスクリプトを適応させる方法について詳しくは、「[SageMaker モデル並列処理ライブラリ v2 を使用する](model-parallel-use-api-v2.md)」を参照してください。
+ Hugging Face Transformer モデルのトレーニングにこれまで SMP v1 を使用していて、そのモデルを SMP v2 で再利用する場合は、「[SMP v1 から SMP v2 へのアップグレード](distributed-model-parallel-v2-reference.md#model-parallel-v2-upgrade-from-v1)」を参照してください。
+ PyTorch FSDP トレーニングでは、SMP v2 を使用する必要があります。

**既知の問題**
+ アクティベーションチェックポイントは、現在、FSDP で次のラッピングポリシーを使用する場合にのみ機能します。
  + `auto_wrap_policy = functools.partial(transformer_auto_wrap_policy, ...)`
+ [アクティベーションオフロード](model-parallel-core-features-v2-pytorch-activation-offloading.md) を使用するには、FSDP アクティベーションチェックポイントタイプが [REENTRANT](https://pytorch.org/docs/stable/checkpoint.html) である必要があります。
+ テンソル並列処理を有効にし、シャーディングデータ並列度を `1` に設定して実行する場合は、`backend = nccl` を使用する必要があります。このシナリオでは、`smddp` バックエンドオプションはサポートされていません。
+ テンソル並列処理を使用しない場合でも、SMP ライブラリで PyTorch を使用するには、[Transformer Engine](https://docs.nvidia.com/deeplearning/transformer-engine/index.html) が必要です。

**その他の変更**
+ このリリース以降、SageMaker モデル並列処理ライブラリのドキュメントは、この *Amazon SageMaker AI デベロッパーガイド*にすべて掲載されます。SMP v2 用のデベロッパーガイドの全文が *Amazon SageMaker AI デベロッパーガイド*に掲載されることを受けて、*SageMaker Python SDK ドキュメント*の [SMP v1.x 向け追加リファレンス](https://sagemaker.readthedocs.io/en/stable/api/training/distributed.html#the-sagemaker-distributed-model-parallel-library)は非推奨になりました。SMP v1.x 向けのドキュメントが引き続き必要な場合は、SMP v1.x 用のデベロッパーガイドを [(アーカイブ済み) SageMaker モデル並列処理ライブラリ v1.x](model-parallel.md) で入手できます。SMP Python ライブラリ v1.x のリファレンスは、[SageMaker Python SDK v2.199.0 のドキュメント](https://sagemaker.readthedocs.io/en/v2.199.0/api/training/smd_model_parallel_release_notes/smd_model_parallel_change_log.html)に記載されています。

**非推奨**
+ TensorFlow のサポートを終了しました。
+ SMP v2 では、パイプライン並列処理はサポートされていません。
+ DeepSpeed ライブラリのサポートは終了しました。代わりに、ネイティブの PyTorch FSDP を使用してください。

**SMP Docker コンテナ**

SMP ライブラリチームは、SageMaker PyTorch フレームワークコンテナに代わる Docker コンテナを配布しています。SageMaker Python SDK で PyTorch 推定器クラスを使用し、分散設定で SMP v2 を使用するように指定すると、SageMaker AI は自動的に SMP Docker コンテナを選択します。SMP v2 のこのリリースを使用するには、SageMaker Python SDK を v2.207.0 以降にアップグレードしてください。
+ PyTorch v2.0.1 および CUDA v12.1 に対応した SMP Docker コンテナ

  ```
  658645717510.dkr.ecr.us-west-2.amazonaws.com/smdistributed-modelparallel:2.0.1-gpu-py310-cu121
  ```