Revenir à Installer et configurer son environnement Python

Métadonnées et update de Conda

Documentation et tutoriel concernant l'utilisation de Conda

conda --version
conda info
conda info --envs
conda env list

conda update conda

On peut alternativement installer les environnements avec Mamba, ce que nous ferons ici. On exécute donc préalablement :

mamba update mamba

La plupart des commandes de Mamba sont équivalentes à celles de Conda, la performance de gestion d'environnements supérieure.

Créer manuellement un nouvel environnement

Documentation: managing environments

Lorsqu'on souhaite créer un nouvel environnement Conda on peut procéder en listant les librairies à installer dans la commande de création ou en convoquant un texte qui contient la liste des librairies. Voici un exemple de la première méthode qui ajoute des librairies permettant de traiter des documents HTML et XML Le nouvel environnement est

mamba env create --name py39_html_xml python=3.9 ipykernel requests lxml

Lister les librairies installées (seulement celles déclarées explicitement):

mamba env export --name py39_html_xml --from-history

Lister toutes les librairies et dépendances installées:

conda activate py39_html_xml

On est ainsi positionné dans l'environnement et on liste les librairies:

conda list

conda deactivate

Pour ajouter une librairire, par ex. la bibliothèque de visualisation: 'seaborn'.

Vérifier si elle est disponibles:

conda search seaborn

Vérifier la version disponible (et conseillée) sur ce site : Anaconda search package — choisir généralement la plus utilisée.

Avant de procéder, sauvegarder la liste des librairies de l'environnement:

mamba env export --name py39_analyse --from-history > [exemple:] C:\Users\your_name\Documents\espace_python\environments\py39_analyse_20220228.yml

En cas de pépin lors de l'installation du nouveau paquet, on peut restaurer (c'est-à-dire recréer) l'environnement dans l'état précis où il était lors de la sauvegarde:

mamba env create --file [exemple:] C:\Users\your_name\Documents\espace_python\environments\py39_analyse_20220228.yml

Vérifier ensuite les spécifications dans l'entrepôt de bibliothèques : anaconda / packages / seaborn

Si le paquet n'existe pas pour Conda, on peut recourir à PIP, depuis Conda, mais voici les précautions à prendre.

Puis installer la nouvelle bibliothèque:

mamba install seaborn

Supprimer un environnement:

conda env remove --name ENVIRONMENT

Créer un nouvel environnement 'shn-pyshs' et l'ajouter aux kernels de Jupyter Lab

En règle générale, on utilise un environnement Conda par projet ou dépôt de code. Ceci permet de garantir une stabilité du code et d'éviter que des ajouts de paquets ou des mises à jour produisent des effets non souhaités. Généralement les dépôts de code indiquent la liste des paquets à installer.

Aussi, il est fortement déconseillé de travailler et d'ajouter des paquets ou librairies à l'environnement base de Conda: il faut créer toujours de nouveaux environnements de travail.

Ceux-ci peuvent devenir assez volumineux si on y ajoute tout type de bibliothèque de fonctions. Il est donc opportun de regrouper les bibliothèques, par exemple, par projet ou par thématiques: NLP, graphes, visualisations, machine learning, etc.

Dans un notebook Jupyter on pourra ensuite choisir entre les différents environnements moyennant qu'on suive les instructions indiquées ci-dessous.

Cf. ce billet de blog

Recette

D'abord cloner le dépôt de code shn-pyshs dans le dossier de travail Python.

Créer d'abord le nouvel environnement shn-pyshs avec toutes ses librairies:

mamba create --name shn-pyshs --file C:\Users\your_name\Documents\espace_python\shn-pyshs\requirements.yml

ATTENTION : seulement si non installé, installer ipykernel (et toues les dépendances ipython)

conda activate shn-pyshs

conda install ipykernel

conda deactivate

Activer l'ipykernel pour cet utilisateur

python -m ipykernel install --user --name shn-pyshs --display-name "shn-pyshs"

Désactier l'environnement:

conda deactivate

Activer l'environnement principal Jupyter Lab:

conda activate env_jupyterlab

Lister les kernels présents:

jupyter kernelspec list

Si tout s'est bien passé, on y trouvera le kernel 'shn-pyshs'

Lancer JupyterLab:

jupyter lab

Dans l'interface graphique, dans un carnet, choisir le kernel et environnement souhaité. N.B. 1 On peut, dans une autre fenêtre de terminal, activer l'environnement 'shn-pyshs' et lui ajouter de nouvelles bibliothèques. Puis on redémarre le kernel et elles seront activables.

N.B. 2 Eviter d'ajouter des bibliothèques à l'environnement de base de JupyterLab où a été installé jupyterlab-github pour préserver cet environnement de toute corruption

Pour supprimer un kernel

jupyter kernelspec uninstall KERNELNAME