Goal: Demonstrate extending a Python related conda environment in to Juypter kernel.
General Process
The general process involves updating the conda environment to include kernel related packages, and then configuring the kernel spec to allow it to be picked up by the Jupyter service.
Activate you Python Conda Environment.
Conda install the
ipykernel
package.Deactivate your Conda environment.
Copy the created
kernelspec
into your home.local/share/jupyter/kernels/
folder.Update the kernel.json.
The process creates a kernel for an individual user from the previously created shared Conda environment.
Each individual from the shared space will need to follow this process to create their own kernel.
If anyone updated the packages within this shared Conda environment, then the update will effect everyone. Be warned.
Install the ipykernel
package
[salexan5@mblog1 ~]$ module load miniconda3/24.3.0 [salexan5@mblog1 ~]$ conda activate /cluster/medbow/project/arcc/software/tensorflow/2.16 (/cluster/medbow/project/arcc/software/tensorflow/2.16) [salexan5@mblog1 ~]$ export PYTHONUSERBASE=$CONDA_PREFIX (/cluster/medbow/project/arcc/software/tensorflow/2.16) [salexan5@mblog1 ~]$ conda install ipykernel ... (/cluster/medbow/project/arcc/software/tensorflow/2.16) [salexan5@mblog1 ~]$ conda deactivate
Created kernel related folder
Installing the ipykernel package will create a kernel spec related folder that we can use.
This can be found under the Conda environment location, under: share/jupyter/kernels/
named python3
[salexan5@mblog1 ~]$ ls /project/arcc/software/tensorflow/2.16/share/jupyter/kernels/python3/ [salexan5@mblog1 ~]$ cd /project/arcc/software/tensorflow/2.16 [salexan5@mblog1 2.16]$ cd share/jupyter/kernels/ [salexan5@mblog1 kernels]$ ls python3 [salexan5@mblog1 kernels]$ ls python3 kernel.json logo-32x32.png logo-64x64.png logo-svg.svg
Rename the folder to something more appropriate:
[salexan5@mblog1 kernels]$ mv python3 TF2.16
Configure Your Jupyter Environment
If you haven’t used the Jupyter service, then you might not have, and thus will need to create the following folders:
.local/share/jupyter/kernels/
Copy the created TF2.16
folder into your home:
[salexan5@mblog1 kernels]$ cp -r TF2.16/ ~/.local/share/jupyter/kernels/
Update the kernel.json
file to:
give this kernel a unique display name.
[salexan5@mblog1 kernels]$ ~/.local/share/jupyter/kernels/TF2.16/ [salexan5@mblog1 tf2.16]$ cat kernel.json { "argv": [ "/cluster/medbow/project/arcc/software/tensorflow/2.16/bin/python", "-m", "ipykernel_launcher", "-f", "{connection_file}" ], "display_name": "TF2.16 (local)", "language": "python", "metadata": { "debugger": true } }
Start Jupyter
From OnDemand start a Jupyter session.
Notice how the newly configured kernel is now available.
Within a Notebook
Within a cell try:
import tensorflow as tf; print("TensorFlow Version: " + str( tf.__version__))
TensorFlow Version: 2.16.1
Prev | Workshop Home | Next |
Add label