Use DJL notebook with SageMaker studio¶
Amazon SageMaker Studio provides a single, web-based visual interface where you can perform all ML development steps, improving data science team productivity by up to 10x. SageMaker Studio gives you complete access, control, and visibility into each step required to build, train, and deploy models. DJL offers a rich functionalities to integrate with SageMaker services that allows you to do all kinds of training/inference and deployment works.
Setup¶
Build/Pull docker image¶
In this folder, you can find a Dockerfile that allows you to build an image that can work along with SageMaker Studio. You can use the following command to build the docker image:
docker build . -t sagemaker-djl
We also offers a prebuilt image for it:
docker pull deepjavalibrary/sagemaker:cpu
Push to ECR repo¶
Once you have the docker image, you can push it to your AWS Account's ECR repository. The best way to get the exact instruction is to use AWS Console and follow the instruction in ECR push.
Here are some sample steps:
Login:
aws ecr get-login-password --region <REGION> | docker login --username AWS --password-stdin <Account ID>.dkr.ecr.<REGION>.amazonaws.com
Tag the image:
docker tag deepjavalibrary/sagemaker:cpu <Account ID>.dkr.ecr.<REGION>.amazonaws.com/sagemaker:cpu
Push the image:
docker push <Account ID>.dkr.ecr.<REGION>.amazonaws.com/sagemaker:cpu
Add the image to SageMaker Studio¶
Once you have done the previous two steps, you can just use SageMaker Studio console to "Attach Image" to add the custom image from the ECR. Since the image itself is pre-built with all default SageMaker settings, all you needs to do is to add a Java kernel from it. Type in the name "java" and display Name "Java" and you are good to go.
Here is a sample, assume I have a ECR repo called djl-sm.
Start with SM Studio¶
After the setup, you can just launch with the custom image. Choose the Java kernel and start with a Java notebook.