SageMaker Studio에서 확장 프로그램을 설치(및 유지)하는 방법



SageMaker Studio를 사용해 왔다면 다른 최신 IDE에 있는 일부 기능을 놓쳤을 수 있습니다. 아시다시피 SageMaker Studio는 JupyterLab IDE 위에 구축되었습니다. 이를 확장하여 다른 SageMaker 리소스와 통합합니다. 그러나 여기에는 개발자 경험을 위한 기능이 포함되어 있지 않습니다.

필요한 기능으로 SageMaker Studio를 보강하기 위해 JupyterLab에 대한 확장을 설치할 수 있습니다. 다른 방법을 사용하여 그렇게 할 수 있습니다.

왼쪽 메뉴에 있는 Extension Manager 를 사용할 수 있습니다. 퍼즐 조각 아이콘이 있습니다. Extension Manager 내에서 이미 설치된 Extension을 확인할 수 있습니다. 검색창에 이름을 적으면 확장자 검색도 가능합니다. 설치하려는 확장 프로그램을 찾았으면 "설치"버튼을 클릭합니다. 필요한 확장을 모두 설치한 후 페이지를 새로 고쳐 JupyterLab을 다시 시작하십시오. 이제 사용할 수 있습니다.



확장을 설치하는 또 다른 방법은 Jupyter CLI 도구를 사용하는 것입니다. 이 방법을 사용하려면 미리 확장명을 알아야 합니다. Studio 내에서 터미널을 열고 다음 명령을 입력합니다.

conda activate studio


설치하려는 패키지가 NPM 패키지 레지스트리에 있는 경우 Jupyter CLI를 사용하여 설치할 수 있습니다.

jupyter labextension install [email protected]


pip 명령을 사용하여 pip 패키지 레지스트리에 있는 확장을 설치할 수도 있습니다.

pip install my-extension=1.2.3


마지막으로 다음 명령을 실행합니다.

restart-jupyter-lab


페이지를 새로 고칩니다.

SageMaker Studio에서 확장 프로그램 설치에 문제가 있습니다. JupyterServer가 종료될 때마다 설치된 모든 확장이 손실되고 깨끗한 상태에서 시작됩니다. 설치된 모든 확장을 유지하려면 수명 주기 구성을 생성해야 합니다. 이 수명 주기 구성은 시작 시 모든 확장을 설치합니다. 수명 주기 구성은 JupyterServer가 시작될 때 스크립트를 실행합니다. 스크립트의 내용은 다음과 같습니다.

source activate studio
jupyter labextension install extension-foo
pip install extension-bar
restart-jupyter-server


알 수 있듯이 이 스크립트에서는 source activate studio 대신 conda activate studio로 환경을 활성화합니다. 이는 수명 주기 구성에서 conda를 사용할 수 없기 때문입니다.

수명 주기 구성을 만드는 방법에는 여러 가지가 있습니다. 콘솔, Cloudformation 스택 또는 AWS CLI를 통해 이를 수행할 수 있습니다. CLI를 사용하여 다음을 수행할 수 있습니다.

aws sagemaker create-studio-lifecycle-config \
  --region <your-region> \
  --studio-lifecycle-config-name my-studio-lcc \
  --studio-lifecycle-config-content $LCC_CONTENT \
  --studio-lifecycle-config-app-type JupyterServer 


$LCC_CONTENT는 앞에서 설명한 스크립트의 내용이 포함된 문자열입니다. 그런 다음 SageMaker 도메인에서 사용자 프로필을 생성할 때 수명 주기 구성을 바인딩할 수 있습니다.

aws sagemaker create-user-profile --domain-id <DOMAIN-ID> \
  --user-profile-name <USER-PROFILE-NAME> \
  --region <REGION> \
  --user-settings '{ "JupyterServerAppSettings": { "LifecycleConfigArns": ["<LIFECYCLE-CONFIGURATION-ARN-LIST>"] } }'


이제부터 사용자가 SageMaker Studio 인스턴스를 시작하면 항상 확장이 설치됩니다. 처음부터 사용할 수 있습니다. 또한 인터페이스와 터미널에서 확장 프로그램을 계속 설치하고 제거할 수 있지만 이러한 변경 사항은 Studio 세션 동안만 지속됩니다.

좋은 웹페이지 즐겨찾기