翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ライフサイクル設定のベストプラクティス
以下は、ライフサイクル設定の使用に関するベストプラクティスです。
重要
ライフサイクル設定スクリプトに機密情報を保存することはお勧めしません。
-
ライフサイクル設定は、
root
ユーザーとして実行されます。スクリプトが/home/ec2-user/SageMaker
ディレクトリ内で何らかの変更を行う場合 (たとえば、pip
を使用してパッケージをインストールする場合) は、ec2-user
ユーザーとしてsudo -u ec2-user
コマンドを実行します。これは、Amazon SageMaker の実行ユーザーと同じユーザーです。 -
SageMaker ノートブックインスタンスは、
conda
環境を使って、Jupyter ノートブック用に異なるカーネルを実装します。1 つ以上のノートブックカーネルで使用可能なパッケージをインストールするには、インストールするパッケージのカーネルを含む conda 環境をアクティブにするconda
環境コマンドで、パッケージをインストールするためのコマンドを囲みます。たとえば、
python3
環境にのみパッケージをインストールする場合は、次のコードを使用します。#!/bin/bash sudo -u ec2-user -i <<EOF # This will affect only the Jupyter kernel called "conda_python3". source activate python3 # Replace
myPackage
with the name of the package you want to install. pip installmyPackage
# You can also perform "conda install" here as well. source deactivate EOFノートブックインスタンス内のすべての conda 環境にパッケージをインストールする場合は、次のコードを使用します。
#!/bin/bash sudo -u ec2-user -i <<EOF # Note that "base" is special environment name, include it there as well. for env in base /home/ec2-user/anaconda3/envs/*; do source /home/ec2-user/anaconda3/bin/activate $(basename "$env") # Installing packages in the Jupyter system environment can affect stability of your SageMaker # Notebook Instance. You can remove this check if you'd like to install Jupyter extensions, etc. if [ $env = 'JupyterSystemEnv' ]; then continue fi # Replace
myPackage
with the name of the package you want to install. pip install --upgrade --quietmyPackage
# You can also perform "conda install" here as well. source /home/ec2-user/anaconda3/bin/deactivate done EOF -
すべての conda 環境は、デフォルトの環境フォルダ (/home/user/anaconda3/envs) に保存する必要があります。
重要
スクリプトを作成または変更するときは、ノートブックの作成時にコンソールで使用できるテキストエディタなど、Unix スタイルの改行を提供するテキストエディタを使用することをお勧めします。Linux 以外のオペレーティングシステムからテキストをコピーすると、互換性のない改行が含まれ、予期しないエラーが発生する可能性があります。