¿Cómo conectar la computadora portátil SageMaker desde VS Code?

¿Cómo conectar la computadora portátil SageMaker desde VS Code?

Estoy usando SageMaker para probar enfoques de ML. Me gustaría refactorizar mis scripts de SageMaker hacia un código más listo para producción. Por lo tanto, me gustaría usar VS Code para refactorizar el código y ejecutarlo en la instancia de SageMaker como antes. VS Code Python te permite definir:

Python: especifique el URI del servidor Jupyter

SageMaker le proporciona AuthorizedUrl ejecutando

aws sagemaker crear-URL-de-instancia-de-notebook-presignada --nombre-de-instancia-de-notebook su-nombre-de-instancia

AuthorizedUrl funciona cuando lo abro en un navegador de incógnito. ¿Por qué no funciona con VS Code? VS Code solicita contraseña. Probé varios enfoques sin ayuda:

  1. contraseña vacía ya que está vacía en jupyter_notebook_config.py de SageMaker
  2. token como contraseña [1]
  3. Configuré una contraseña "contraseña del cuaderno de jupyter" y reinicié jupyter "sudo initctl restart jupyter-server --no-wait". La nueva contraseña parecía ser efectiva. Le di una contraseña recién creada a VS Code con los mismos malos resultados.

VS Code me da este error:

No se pudo conectar a la computadora portátil Jupyter remota. Compruebe que la configuración del URI de Jupyter Server tenga especificado un servidor en ejecución válido... Error: No se pudo conectar al servidor protegido con contraseña. Compruebe que la contraseña sea correcta.

Entonces, ¿cómo puedo ejecutar códigos en VS Code en SageMaker? ¿Quizás haya una manera mejor que la que estoy intentando?

Gracias

[1]https://jupyter-notebook.readthedocs.io/en/stable/security.html

Respuesta1

Según tengo entendido, desea conectar su jupyter-lab/notebooks de Sagemaker Studio Lab en VS Code. También quiero usar VS Code para mi proyecto y los pasos a continuación funcionaron para mí.

  1. (studiolab) studio-lab-user@default:~$ conda install -y -c conda-forge code-server
  2. (studiolab) studio-lab-user@default:~$ code-server --auth none
  3. Copie la URL de su laboratorio de estudio y péguela en una nueva pestaña. La URL se ve asíhttps://xxxxxxxxxxx.studio.us-east-2.sagemaker.aws/studiolab/default/jupyter/lab/
  4. Reemplace lalaboratorioconproxy/8080. La URL se conviertehttps://xxxxxxxxxxxx.studio.us-east-2.sagemaker.aws/studiolab/default/jupyter/proxy/8080/
  5. Espere unos minutos (alrededor de ~3 minutos) para que se cargue. Boom VS Code en tu StudioLab.

Esta es mi primera contribución a stackexchange, vota a favor si te ayuda.

información relacionada