JupyterLab Control de versiones - Amazon SageMaker

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

JupyterLab Control de versiones

importante

IAMLas políticas personalizadas que permiten a Amazon SageMaker Studio o Amazon SageMaker Studio Classic crear SageMaker recursos de Amazon también deben conceder permisos para añadir etiquetas a esos recursos. El permiso para añadir etiquetas a los recursos es obligatorio porque Studio y Studio Classic etiquetan automáticamente los recursos que crean. Si una IAM política permite a Studio y Studio Classic crear recursos, pero no permite el etiquetado, se pueden producir errores AccessDenied «» al intentar crear recursos. Para obtener más información, consulte Proporciona permisos para etiquetar SageMaker los recursos.

AWS Políticas gestionadas para Amazon SageMakerque otorgan permisos para crear SageMaker recursos ya incluyen permisos para añadir etiquetas al crear esos recursos.

importante

A partir del 30 de noviembre de 2023, la experiencia anterior de Amazon SageMaker Studio pasa a denominarse Amazon SageMaker Studio Classic. La siguiente sección es específica sobre el uso de la aplicación Studio Classic. Para obtener información sobre el uso de la experiencia de Studio actualizada, consulteAmazon SageMaker Studio.

La interfaz Amazon SageMaker Studio Classic se basa en JupyterLab, que es un entorno de desarrollo interactivo basado en la web para cuadernos, código y datos. Studio Classic solo admite el uso de JupyterLab 3.

Si creaste tu dominio y perfil de usuario AWS Management Console antes del 31/08/2022 o antes del 22/02/23, tu instancia de Studio Classic tendrá el AWS Command Line Interface valor predeterminado de 1. JupyterLab Después del 1 de julio de 2024, no podrás crear ninguna aplicación de Studio Classic que ejecute 1. JupyterLab

JupyterLab 3

JupyterLab 3 incluye las siguientes funciones que no están disponibles en las versiones anteriores. Para obtener más información sobre estas funciones, consulte ¡Se ha lanzado la JupyterLab versión 3.0! .

  • Depurador visual cuando se utilizan los kernels de Base Python 2.0 y Data Science 2.0.

  • Filtro de explorador de archivos

  • Tabla de contenido (TOC)

  • Compatibilidad con varios idiomas

  • Modo simple

  • Modo de interfaz única

Cambios importantes en JupyterLab 3

Tenga en cuenta lo siguiente cuando utilice JupyterLab 3:

  • Al configurar la JupyterLab versión mediante el AWS CLI, seleccione la imagen correspondiente a su región y JupyterLab versión en la lista de imágenes deDesde AWS CLI.

  • En JupyterLab 3, debe activar el entorno studio conda antes de instalar las extensiones. Para obtener más información, consulte Instalación JupyterLab y extensiones de Jupyter Server.

  • El depurador solo es compatible si se utilizan las siguientes imágenes:

    • Base Python 2.0

    • Data Science 2.0

    • Base Python 3.0

    • Data Science 3.0

Restringir JupyterLab la versión predeterminada mediante una clave IAM de condición de política

Puede usar las claves IAM de condición de la política para restringir la versión JupyterLab que pueden lanzar sus usuarios.

La siguiente política muestra cómo limitar la JupyterLab versión a nivel de dominio.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Block users from creating JupyterLab 3 apps at the domain level", "Effect": "Deny", "Action": [ "sagemaker:CreateDomain", "sagemaker:UpdateDomain" ], "Resource": "*", "Condition": { "ForAnyValue:StringLike": { "sagemaker:ImageArns": "*image/jupyter-server-3" } } } ] }

La siguiente política muestra cómo limitar la JupyterLab versión a nivel del perfil de usuario.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Block users from creating JupyterLab 3 apps at the user profile level", "Effect": "Deny", "Action": [ "sagemaker:CreateUserProfile", "sagemaker:UpdateUserProfile" ], "Resource": "*", "Condition": { "ForAnyValue:StringLike": { "sagemaker:ImageArns": "*image/jupyter-server-3" } } } ] }

La siguiente política muestra cómo limitar la JupyterLab versión a nivel de aplicación. La CreateApp solicitud debe incluir la imagen ARN para que se aplique esta política.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Block users from creating JupyterLab 3 apps at the application level", "Effect": "Deny", "Action": "sagemaker:CreateApp", "Resource": "*", "Condition": { "ForAnyValue:StringLike": { "sagemaker:ImageArns": "*image/jupyter-server-3" } } } ] }

Establecer una JupyterLab versión predeterminada

En las siguientes secciones se muestra cómo configurar una JupyterLab versión predeterminada para Studio Classic mediante la consola o el AWS CLI. 

Desde la consola de

Puede seleccionar la JupyterLab versión predeterminada para usarla a nivel de dominio o perfil de usuario durante la creación del recurso. Para configurar la JupyterLab versión predeterminada mediante la consola, consulteDescripción general SageMaker del dominio de Amazon

Desde AWS CLI

Puede seleccionar la JupyterLab versión predeterminada para utilizarla a nivel de dominio o perfil de usuario mediante el AWS CLI. 

Para establecer la JupyterLab versión predeterminada mediante el AWS CLI, debe incluir ARN la JupyterLab versión predeterminada deseada como parte de un AWS CLI comando. Esto ARN varía según la versión y la región del SageMaker dominio. 

En la siguiente tabla se muestran ARNs las JupyterLab versiones disponibles para cada región:

Región JL3
us-east-1 arn:aws:sagemaker:us-east-1:081325390199:image/jupyter-server-3
us-east-2 arn:aws:sagemaker:us-east-2:429704687514:image/jupyter-server-3
us-west-1 arn:aws:sagemaker:us-west-1:742091327244:image/jupyter-server-3
us-west-2 arn:aws:sagemaker:us-west-2:236514542706:image/jupyter-server-3
af-south-1 arn:aws:sagemaker:af-south-1:559312083959:image/jupyter-server-3
ap-east-1 arn:aws:sagemaker:ap-east-1:493642496378:image/jupyter-server-3
ap-south-1 arn:aws:sagemaker:ap-south-1:394103062818:image/jupyter-server-3
ap-northeast-2 arn:aws:sagemaker:ap-northeast-2:806072073708:image/jupyter-server-3
ap-southeast-1 arn:aws:sagemaker:ap-southeast-1:492261229750:image/jupyter-server-3
ap-southeast-2 arn:aws:sagemaker:ap-southeast-2:452832661640:image/jupyter-server-3
ap-northeast-1 arn:aws:sagemaker:ap-northeast-1:102112518831:image/jupyter-server-3
ca-central-1 arn:aws:sagemaker:ca-central-1:310906938811:image/jupyter-server-3
eu-central-1 arn:aws:sagemaker:eu-central-1:936697816551:image/jupyter-server-3
eu-west-1 arn:aws:sagemaker:eu-west-1:470317259841:image/jupyter-server-3
eu-west-2 arn:aws:sagemaker:eu-west-2:712779665605:image/jupyter-server-3
eu-west-3 arn:aws:sagemaker:eu-west-3:615547856133:image/jupyter-server-3
eu-north-1 arn:aws:sagemaker:eu-north-1:243637512696:image/jupyter-server-3
eu-south-1 arn:aws:sagemaker:eu-south-1:592751261982:image/jupyter-server-3
eu-south-2 arn:aws:sagemaker:eu-south-2:127363102723:image/jupyter-server-3
sa-east-1 arn:aws:sagemaker:sa-east-1:782484402741:image/jupyter-server-3
cn-north-1 arn:aws-cn:sagemaker:cn-north-1:390048526115:image/jupyter-server-3
cn-northwest-1 arn:aws-cn:sagemaker:cn-northwest-1:390780980154:image/jupyter-server-3

Cree o actualice un dominio

Puede establecer una JupyterServer versión predeterminada a nivel de dominio invocando CreateDomaino UpdateDomainpasando el UserSettings.JupyterServerAppSettings.DefaultResourceSpec.SageMakerImageArn campo.

A continuación, se muestra cómo crear un dominio con JupyterLab 3 como valor predeterminado mediante: AWS CLI

aws --region <REGION> \ sagemaker create-domain \ --domain-name <NEW_DOMAIN_NAME> \ --auth-mode <AUTHENTICATION_MODE> \ --subnet-ids <SUBNET-IDS> \ --vpc-id <VPC-ID> \ --default-user-settings '{   "JupyterServerAppSettings": {     "DefaultResourceSpec": {       "SageMakerImageArn": "arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:image/jupyter-server-3",       "InstanceType": "system"     }   } }'

A continuación, se muestra cómo actualizar un dominio para que utilice JupyterLab 3 como predeterminado mediante AWS CLI:

aws --region <REGION> \ sagemaker update-domain \ --domain-id <YOUR_DOMAIN_ID> \ --default-user-settings '{ "JupyterServerAppSettings": { "DefaultResourceSpec": { "SageMakerImageArn": "arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:image/jupyter-server-3", "InstanceType": "system" } } }'

Creación o actualización del perfil de usuario

Puede establecer una JupyterServer versión predeterminada a nivel de perfil de usuario invocando CreateUserProfileo UpdateUserProfilepasando el UserSettings.JupyterServerAppSettings.DefaultResourceSpec.SageMakerImageArn campo.

A continuación se muestra cómo crear un perfil de usuario con JupyterLab 3 como valor predeterminado en un dominio existente, mediante: AWS CLI

aws --region <REGION> \ sagemaker create-user-profile \ --domain-id <YOUR_DOMAIN_ID> \ --user-profile-name <NEW_USERPROFILE_NAME> \ --query UserProfileArn --output text \ --user-settings '{   "JupyterServerAppSettings": {     "DefaultResourceSpec": {       "SageMakerImageArn": "arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:image/jupyter-server-3",       "InstanceType": "system"     }   } }'

A continuación, se muestra cómo actualizar un perfil de usuario para usar JupyterLab 3 como predeterminado, mediante AWS CLI:

aws --region <REGION> \ sagemaker update-user-profile \ --domain-id <YOUR_DOMAIN_ID> \ --user-profile-name <EXISTING_USERPROFILE_NAME> \ --user-settings '{ "JupyterServerAppSettings": { "DefaultResourceSpec": { "SageMakerImageArn": "arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:image/jupyter-server-3", "InstanceType": "system" } } }'

Vea y actualice la JupyterLab versión de una aplicación desde la consola

A continuación, se muestra cómo ver y actualizar la JupyterLab versión de una aplicación.

  1. Navegue a la página de SageMaker dominios.

  2. Seleccione un dominio para ver sus perfiles de usuario.

  3. Seleccione un usuario para ver sus aplicaciones.

  4. Para ver la JupyterLab versión de una aplicación, selecciona el nombre de la aplicación.

  5. Para actualizar la JupyterLab versión, seleccione Acción.

  6. En el menú desplegable, selecciona Cambiar JupyterLab versión.

  7. En la página de configuración de Studio Classic, selecciona la JupyterLab versión en el menú desplegable.

  8. Una vez que la JupyterLab versión del perfil de usuario se haya actualizado correctamente, reinicie la JupyterServer aplicación para que los cambios de versión se hagan efectivos. Para obtener más información sobre el reinicio de una JupyterServer aplicación, consulte. Cierre y actualice SageMaker Studio Classic

Instalación JupyterLab y extensiones de Jupyter Server

En JupyterLab 3, debe activar el entorno studio conda antes de instalar las extensiones. El método para ello varía si se instalan las extensiones desde Studio Classic o si se utiliza un script de configuración del ciclo de vida.

Instalación de la extensión desde Studio Classic

Para instalar extensiones desde Studio Classic, debe activar el studio entorno antes de instalar las extensiones.

# Before installing extensions conda activate studio # Install your extensions pip install <JUPYTER_EXTENSION> # After installing extensions conda deactivate

Instalación de extensiones mediante un script de configuración del ciclo de vida

Si va a instalar JupyterLab extensiones de Jupyter Server en el script de configuración de su ciclo de vida, debe modificar el script para que funcione con JupyterLab 3. En las siguientes secciones se muestra el código necesario para los scripts de configuración del ciclo de vida nuevos y existentes.

Script de configuración del ciclo de vida existente

Si va a reutilizar un script de configuración del ciclo de vida existente que debe funcionar con ambas versiones de JupyterLab, utilice el siguiente código en el script:

# Before installing extension export AWS_SAGEMAKER_JUPYTERSERVER_IMAGE="${AWS_SAGEMAKER_JUPYTERSERVER_IMAGE:-'jupyter-server'}" if [ "$AWS_SAGEMAKER_JUPYTERSERVER_IMAGE" = "jupyter-server-3" ] ; then eval "$(conda shell.bash hook)" conda activate studio fi; # Install your extensions pip install <JUPYTER_EXTENSION> # After installing extension if [ "$AWS_SAGEMAKER_JUPYTERSERVER_IMAGE" = "jupyter-server-3" ]; then conda deactivate fi;

Nuevo script de configuración del ciclo de vida

Si está escribiendo un nuevo script de configuración del ciclo de vida que solo usa JupyterLab 3, puede usar el siguiente código en el script:

# Before installing extension eval "$(conda shell.bash hook)" conda activate studio # Install your extensions pip install <JUPYTER_EXTENSION> conda deactivate