

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

# モデルをコンパイルする (Amazon SageMaker AI コンソール)
<a name="neo-job-compilation-console"></a>

Amazon SageMaker AI コンソールで Amazon SageMaker Neo コンパイルジョブを作成できます。

1. **Amazon SageMaker AI** コンソールで **[コンパイルジョブ]** を選択して、**[コンパイルジョブの作成]** を選択します。  
![コンパイルジョブを作成します。](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/8-create-compilation-job.png)

1. **[Create compilation job]** (コンパイルジョブの作成) ページで、**[Job name]** (ジョブ名) に名前を入力します。次に、[**IAM ロール**] を選択します。  
![[コンパイルジョブの作成] ページ。](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/9-create-compilation-job-config.png)

1. IAM ロールがない場合は、[**新しいロールを作成**] を選択してください。  
![IAM ロールの場所を作成します。](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/10a-create-iam-role.png)

1. [**IAM ロールを作成**] ページで、[**任意の S3 バケット**] を選択し、[**ロールを作成**] を選択します。  
![[IAM ロールを作成] ページ。](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/10-create-iam-role.png)

1. 

------
#### [ Non PyTorch Frameworks ]

   **[Input configuration]** (入力設定) セクションで、**[Location of model artifacts]** (モデルアーティファクトの場所) に、モデルアーティファクトが含まれる Amazon S3 バケットのパスを入力します。モデルアーティファクトは、圧縮された tarball ファイル形式 (`.tar.gz`) である必要があります。

   **[Data input configuration]** (データ入力設定) フィールドに、入力データの形状を指定する JSON 文字列を入力します。

   **[Machine learning framework]** (機械学習フレームワーク) では、フレームワークを選択します。

![[入力設定] ページ。](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/neo-create-compilation-job-input-config.png)


   入力データの形状に応じた JSON 文字列の例を見つけるには、「[Neo が想定する入力データの形状](https://docs.aws.amazon.com/sagemaker/latest/dg/neo-troubleshooting.html#neo-troubleshooting-errors-preventing)」を参照してください。

------
#### [ PyTorch Framework ]

   PyTorch モデルのコンパイルにも同様の手順を使います。ただし、PyTorch でトレーニング済みで、`ml_*` (`ml_inf` を除く) ターゲット向けにモデルをコンパイルしようとしている場合、オプションで、使った PyTorch のバージョンを指定できます。

![[Framework バージョン] を選択する場所を示す [入力設定] セクションの例。](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/compile_console_pytorch.png)


   入力データの形状に応じた JSON 文字列の例を見つけるには、「[Neo が想定する入力データの形状](https://docs.aws.amazon.com/sagemaker/latest/dg/neo-troubleshooting.html#neo-troubleshooting-errors-preventing)」を参照してください。

**注意事項**  
PyTorch バージョン 2.0 以降を使用してモデルを保存した場合、**データ入力設定フィールド**はオプションです。SageMaker Neo は PyTorch で作成したモデル定義ファイルから入力設定を取得します。定義ファイルの作成方法の詳細については、「Saving Models for SageMaker AI Neo」の「[PyTorch](neo-compilation-preparing-model.md#how-to-save-pytorch)」セクションを参照してください。**
PyTorch フレームワークを使って `ml_*` インスタンスをコンパイルする場合は、**[Output Configuration]** (出力設定) の **[Compiler options]** (コンパイラオプション) フィールドを使って、モデルの入力の正しいデータ型 (`dtype`) を指定します。デフォルトでは `"float32"` に設定されています。

![[出力設定] セクションの例。](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/neo_compilation_console_pytorch_compiler_options.png)


**警告**  
 `.pth` ファイルへの Amazon S3 バケット URI パスを指定すると、コンパイル開始後にエラー (`ClientError: InputConfiguration: Unable to untar input model.Please confirm the model is a tar.gz file`) が発生します。

------

1.  **[Output configuration]** (出力設定) セクションに移動します。モデルをデプロイする場所を選択します。**[Target device]** (ターゲットデバイス) または **[Target platform]** (ターゲットプラットフォーム) にモデルをデプロイできます。ターゲットデバイスには、クラウドやエッジデバイスがあります。ターゲットプラットフォームは、モデルを実行する特定の OS、アーキテクチャ、アクセラレーターを参照します。

    **[S3 Output location]** (S3 出力場所) には、モデルを保存する S3 バケットへのパスを入力します。必要に応じて、JSON 形式のコンパイラオプションを**[Compiler options]** (コンパイラオプション) セクションに追加できます。  
![[出力設定] ページ。](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/neo-console-output-config.png)

1. 開始時にコンパイルジョブのステータスを確認してください。次のスクリーンショットに示すとおり、このジョブステータスは、**[Compilation jobs]** (コンパイルジョブ) ページの上部にあります。**[Status]** (状態) 列でもジョブのステータスを確認できます。  
![コンパイルジョブのステータス](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/12-run-model-compilation.png)

1. 完了時にコンパイルジョブのステータスを確認してください。次のスクリーンショットに示すように、**[Status]** (状態) 列でステータスを確認できます。  
![コンパイルジョブのステータス](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/neo/12a-completed-model-compilation.png)