

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

# ランタイム環境をカスタマイズする
<a name="train-remote-decorator-customize"></a>

ランタイム環境をカスタマイズすると、任意のローカル統合開発環境 (IDE)、SageMaker ノートブック、または SageMaker Studio Classic ノートブックを使用して機械学習コードを記述できます。SageMaker AI は、関数とその依存関係を SageMaker トレーニングジョブとしてパッケージ化し、送信するのに役立ちます。これにより、SageMaker トレーニングサーバーの容量にアクセスしてトレーニングジョブを実行できます。

リモートデコレータと関数を呼び出す `RemoteExecutor` メソッドの両方により、ユーザーはランタイム環境を定義してカスタマイズできます。`requirements.txt` ファイルまたは conda 環境 YAML ファイルのいずれかを使用できます。

conda 環境 YAML ファイルと `requirements.txt` ファイルの両方を使用してランタイム環境をカスタマイズするには、以下のコード例を参照してください。

```
# specify a conda environment inside a yaml file
@remote(instance_type="ml.m5.large",
        image_uri = "my_base_python:latest", 
        dependencies = "./environment.yml")
def matrix_multiply(a, b):
    return np.matmul(a, b)

# use a requirements.txt file to import dependencies
@remote(instance_type="ml.m5.large",
        image_uri = "my_base_python:latest", 
        dependencies = './requirements.txt')
def matrix_multiply(a, b):
    return np.matmul(a, b)
```

または、`dependencies` を `auto_capture` に設定して、アクティブな conda 環境にインストールされた依存関係を SageMaker Python SDK によってキャプチャできます。`auto_capture` が確実に動作するためには、以下が必要です。
+ アクティブな conda 環境が必要です。依存関係の競合の可能性を減らすため、リモートジョブに `base` conda 環境を使用しないことをお勧めします。`base` conda 環境を使用しないことで、リモートジョブでの環境設定も迅速化されます。
+ パラメータ `--extra-index-url` 値の値で pip を使用して依存関係をインストールしないでください。
+ conda でインストールされたパッケージと、ローカル開発環境に pip でインストールされたパッケージとの間に依存関係の競合がないこと。
+ ローカル開発環境には、Linux と互換性のないオペレーティングシステム固有の依存関係が含まれていていないこと。

`auto_capture` が機能しない場合は、このセクションの最初のコーディング例で説明したように、依存関係を requirement.txt または conda environment.yaml ファイルとして渡すことをお勧めします。