翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
SageMaker モデル並列処理ライブラリのリリースノート
以下のリリースノートを参照して、SageMaker モデル並列処理 (SMP) ライブラリの最新の更新情報を確認してください。SMP ライブラリについてさらにご質問がある場合は、SMP サービスチーム (sm-model-parallel-feedback@amazon.com
) にお問い合わせください。
SageMaker モデル並列処理ライブラリ v2.7.0
日付: 2024 年 12 月 4 日
SMP ライブラリの更新情報
新しい特徴
-
SageMaker HyperPod レシピ のサポートが追加されました。
SMP Docker コンテナ
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 -
CUDA v12.1 を使用した PyTorch v2.4.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 チャネル
次の 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
SageMaker モデル並列処理ライブラリ v2.6.1
日付: 2024 年 10 月 31 日
SMP ライブラリの更新情報
バグ修正
-
SMP v2.6.0 で古いトレーニングスクリプトを使用する場合に発生する
ImportError
問題を修正しました。これにより、SMP v2.6.0 との下位互換性が修正されます。 -
DeprecationWarning
の を追加しましたtorch.sagemaker.distributed.fsdp.checkpoint
。このモジュールは 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 コンテナ
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 チャネル
次の 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
SageMaker モデル並列処理ライブラリ v2.6.0
日付: 2024 年 10 月 17 日
SMP ライブラリの更新情報
新しい特徴
-
次の LLM モデル構成がサポートされるようになりました。コンテキスト並列処理 および テンソル並列性 を使用できるようになりました。
-
次の Mixtral モデル構成で テンソル並列性 がサポートされるようになりました。
-
AllGather 集合通信を活用してキーと値のテンソルの完全なシーケンスを取得する、AllGather ベースのコンテキスト並列処理の実装がサポートされるようになりました。使用可能な実装は
p2p
とall_gather
です。p2p
実装では、アテンションの計算中にピアツーピアの送受信呼び出しを使用してキーと値 (KV) のテンソルを蓄積します。非同期的に実行され、通信と計算をオーバーラップさせることができます。一方のall_gather
実装は、KV テンソルの蓄積にAllGather
集合通信演算を使用します。これらのコンテキスト並列処理の実装を適用する方法については、「コンテキスト並列処理」を参照してください。 -
Rotary Position Embedding (RoPE) のシータ値を調整できるようになりました。
バグ修正
-
パラメータ遅延が有効になっている場合に、Rotary Position Embedding (RoPE) が事前トレーニング中に適切に初期化されないバグを修正しました。
既知の問題
-
Transformer Engine は現在、スライディングウィンドウのアテンションが有効になっている場合は、コンテキスト並列処理や FP8 をサポートしていません。そのため、Mistral トランスフォーマーの SMP バージョンは、スライディングウィンドウ設定が非 NULL 値に設定されている場合、コンテキスト並列処理や FP8 トレーニングをサポートしません。
SMP Docker コンテナ
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 チャネル
次の 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
SageMaker モデル並列処理ライブラリ v2.5.0
日付: 2024 年 8 月 28 日
SMP ライブラリの更新情報
新しい特徴
-
Mixtral モデルにおいて、P5 インスタンスで FP8 データ形式を使用した混合精度トレーニングがサポートされるようになりました。
-
サポート対象の Mixtral 構成は 8x7B および 8x22B です。詳細については、「P5 インスタンスでの Transformer Engine を使用した FP8 混合精度トレーニング」を参照してください。
-
-
次のモデル構成で コンテキスト並列処理 がサポートされるようになりました。
-
Llama-v2: 7B および 70B
-
Llama-v3: 8B および 70B
-
GPT-NeoX: 20B
-
-
チェックポイントの非同期保存に対応しました。詳細については、「SMP を使用したチェックポイント」を参照してください。
-
Amazon EBS またはファイルサーバーを使用せずに、S3 に直接チェックポイントを保存できるようになりました。
-
バグ修正
-
Llama のファインチューニング中に、事前トレーニング済みのモデルチェックポイントをロードしてテンソル並列処理を利用すると、予期しない高い初期損失が発生する問題が解決されました。
Notes (メモ)
-
Mixtral に対して FP8 混合精度でアクティベーションチェックポイントを使用するには、アテンション層とエキスパート層を個別にチェックポイントする必要があります。正しく設定する例については、Amazon SageMaker AI Examples リポジトリのトレーニングスクリプトの例
を参照してください。
既知の問題
-
MoE 構成 (torch.sagemaker.moe.moe_config.MoEConfig) の均衡 (balanced) 負荷分散タイプは、現時点では、アクティベーションチェックポイントとの互換性がありません。
-
コンテキスト並列処理を使用すると、GPT-NeoX では、事前トレーニングとファインチューニングの両方でパフォーマンスが低下します。
-
P4 インスタンスの GPT-NeoX では、パラメータが遅延初期化されている変換済みモデルから Hugging Face トランスフォーマーモデルに重みを直接ロードすると、最初のステップで損失の不一致が生じます。
SMP Docker コンテナ
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 にアップグレードしました。
コンテナの詳細
-
PyTorch v2.3.1 および CUDA v12.1 に対応した SMP Docker コンテナ
658645717510.dkr.ecr.
<region>
.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121サポートされているリージョンの詳細なリストについては、「AWS リージョン」を参照してください。
-
インストール済みのパッケージ
-
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 チャネル
次の 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
SageMaker モデル並列処理ライブラリ v2.4.0
日付: 2024 年 6 月 20 日
SMP ライブラリの更新情報
バグ修正
-
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 リポジトリのディスカッションスレッド
を参照してください。
既知の問題
-
テンソル並列処理を用いて Llama-3 70B をファインチューニングする間に、損失が急増し、その後、より高い損失値で再開する可能性があるという既知の問題があります。
SMP Docker コンテナ
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) ライブラリ
のインストールを終了しました。
コンテナの詳細
-
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 チャネル
次の 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
SageMaker モデル並列処理ライブラリ v2.3.1
日付: 2024 年 5 月 9 日
バグ修正
-
エキスパート並列処理で torch.sagemaker.moe.moe_config.MoEConfig に
moe_load_balancing=balanced
を使用した場合のImportError
を修正しました。 -
load_state_dict_from_rank0
が有効な状態で torch.sagemaker.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
日付: 2024 年 4 月 11 日
新しい特徴
-
新しい主要機能としてエキスパート並列処理が追加され、Mixture of Experts トランスフォーマーモデルに対応しました。詳細については、「エキスパート並列処理」を参照してください。
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
日付: 2024 年 3 月 7 日
新機能
-
Transformer Engine の統合により、以下の Hugging Face トランスフォーマーモデルが P5 インスタンスで FP8 トレーニングに対応しました。
-
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 アクティベーションオフロード 機能は、現在機能していません。代わりに、ネイティブの PyTorch アクティベーションオフロードを使用してください。
その他の変更
-
PyTorch GitHub リポジトリの 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
日付: 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 リポジトリの問題チケットを参照してください。収束しない問題を回避するには、 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
SageMaker モデル並列処理ライブラリ v2.0.0
日付: 2023 年 12 月 19 日
新しい特徴
SageMaker モデル並列処理 (SMP) ライブラリ v2.0.0 をリリースしました。新たに次の機能が提供されています。
-
新しい
smdistributed.modelparallel.torch
パッケージ。SMP v1.x の以前のtorch.sagemaker
パッケージを全面的に刷新しました。 -
PyTorch 2.0.1 に対応しました。
-
PyTorch FSDP に対応しました。
-
Transformer Engine
ライブラリを統合し、テンソル並列処理を実装しました。 -
SageMaker トレーニングと SageMaker HyperPod の両方に対応しました。
重要な変更
-
SMP v2 は API を全面的に刷新し、
torch.sagemaker
パッケージを提供します。ほとんどの場合、torch.sagemaker.init()
モジュールで初期化し、モデル並列処理の設定パラメータを渡すだけで済みます。この新しいパッケージを使用すれば、トレーニングスクリプトのコード変更を大幅に簡素化できます。SMP v2 を使用するようにトレーニングスクリプトを適応させる方法について詳しくは、「SageMaker モデル並列処理ライブラリ v2 を使用する」を参照してください。 -
Hugging Face Transformer モデルのトレーニングにこれまで SMP v1 を使用していて、そのモデルを SMP v2 で再利用する場合は、「SMP v1 から SMP v2 へのアップグレード」を参照してください。
-
PyTorch FSDP トレーニングでは、SMP v2 を使用する必要があります。
既知の問題
-
アクティベーションチェックポイントは、現在、FSDP で次のラッピングポリシーを使用する場合にのみ機能します。
-
auto_wrap_policy = functools.partial(transformer_auto_wrap_policy, ...)
-
-
アクティベーションオフロード を使用するには、FSDP アクティベーションチェックポイントタイプが REENTRANT
である必要があります。 -
テンソル並列処理を有効にし、シャーディングデータ並列度を
1
に設定して実行する場合は、backend = nccl
を使用する必要があります。このシナリオでは、smddp
バックエンドオプションはサポートされていません。 -
テンソル並列処理を使用しない場合でも、SMP ライブラリで PyTorch を使用するには、Transformer Engine
が必要です。
その他の変更
-
このリリース以降、SageMaker モデル並列処理ライブラリのドキュメントは、この Amazon SageMaker AI デベロッパーガイドで完全に入手できます。Amazon SageMaker AI デベロッパーガイド」の「SMP v2 の完全なデベロッパーガイド」を優先して、SageMaker Python SDK ドキュメントの「SMP v1.x の追加リファレンス
」は廃止されました。SMP v1.x 向けのドキュメントが引き続き必要な場合は、SMP v1.x 用のデベロッパーガイドを (アーカイブ済み) SageMaker モデル並列処理ライブラリ v1.x で入手できます。SMP Python ライブラリ v1.x のリファレンスは、SageMaker Python SDK v2.199.0 のドキュメント に記載されています。
非推奨
-
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