Outils pour utilisateurs

Outils du site


python:environnement_conda

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
python:environnement_conda [2020/05/13 21:11]
Francesco Beretta
python:environnement_conda [2022/02/28 10:29]
Francesco Beretta [Recette]
Ligne 13: Ligne 13:
 conda info conda info
 conda info --envs conda info --envs
 +conda env list
 </​code>​ </​code>​
  
 <code >conda update conda</​code>​ <code >conda update conda</​code>​
 +
 +On peut alternativement installer les environnements avec Mamba, ce que nous ferons ici.
 +On exécute donc préalablement :
 +<code >mamba update mamba</​code>​
 +
 +La plupart des commandes de Mamba sont équivalentes à celles de Conda, la performance de gestion d'​environnements supérieure.
  
  
Ligne 24: Ligne 31:
  
  
-<​code> ​conda create --name ​atelier ​python=3.7 jupyterlab=1.2.7 jupyterlab-git ​</​code>​+<​code> ​mamba create --name ​py39_analyse ​python=3.9 ipykernel pathlib plotly matplotlib scipy pandas xlrd statsmodels patsy </​code>​
  
 Lister les bibliothèques de fonctions installées:​ Lister les bibliothèques de fonctions installées:​
-<​code>​conda list</​code>​+<​code>​mamba env list</​code>​
  
-Vérifier si telle bibliothèque (ici BeautifulSoup) ​est installée+<​code>​mamba activate py39_analyse</​code>​ 
-<​code>​conda search ​beautifulsoup4</​code>​+ 
 +Manque la bibliothèque de visualisation:​ '​seaborn'​. 
 + 
 +Vérifier si elle est disponibles
 +<​code>​conda search ​seaborn</​code>​ 
 + 
 +Vérifier la version disponible (et conseillée) sur ce site : [[https://​anaconda.org/​search|Anaconda search package]]
  
  
 Si ce n'est pas le cas, d'​abord sauvegarder la configuration de l'​environnement:​ Si ce n'est pas le cas, d'​abord sauvegarder la configuration de l'​environnement:​
-<​code>​conda env export --name ​py37_gitlab ​> [exemple:​] ​/​Volumes/​MyDisk/​python_notebooks/​_environments/​py37_gitlab_20200507.yml</​code>​+<​code>​conda env export --name ​py39_analyse --from-history ​> [exemple:​] ​C:​\Users\your_name\Documents\espace_python\environments\py39_analyse_20220228.yml</​code>​
  
 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: 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:
-<​code>​conda env create --file [exemple:​] ​/​Volumes/​MyDisk/​python_notebooks/​_environments/​py37_gitlab_20200507.yml</​code>​+<​code>​mamba env create --file [exemple:​] ​C:​\Users\your_name\Documents\espace_python\environments\py39_analyse_20220228.yml</​code>​
  
- Vérifier ensuite les spécifications dans l'​entrepôt de bibliothèques : +  ​* Vérifier ensuite les spécifications dans l'​entrepôt de bibliothèques : [[https://​anaconda.org/​anaconda/​seaborn ​| anaconda / packages / seaborn]]  
-[[https://​anaconda.org/​anaconda/​beautifulsoup4 ​| anaconda / packages / beautifulsoup4]]  +  ​Si le paquet n'​existe pas pour Conda, on peut recourir à PIP, depuis Conda, mais voici les **[[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​tasks/​manage-environments.html#​using-pip-in-an-environment|précautions à prendre]]**.
- Si le paquet n'​existe pas pour Conda, on peut recourir à PIP, depuis Conda, mais voici les [[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​tasks/​manage-environments.html#​using-pip-in-an-environment|précautions à prendre]].+
  
 Puis installer la nouvelle bibliothèque:​ Puis installer la nouvelle bibliothèque:​
-<​code>​conda install ​beautifulsoup4</​code>​+<​code>​conda install ​seaborn</​code>​ 
 + 
 +Pour supprimer un environnement:​  
 +<​code>​ conda env remove --name ENVIRONMENT ​ --all</​code>​ 
 + 
 + 
 + 
 +====== 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 [[https://​medium.com/​@ace139/​enable-multiple-kernels-in-jupyter-notebooks-6098c738fe72|billet de blog]] 
 + 
 + 
 + 
 +===== Recette ===== 
 + 
 +D'​abord cloner le [[https://​github.com/​Sciences-historiques-numeriques/​shn-pyshs|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:​ 
 +<​code>>​mamba env create -name shn-pyshs --file C:​\Users\your_name\Documents\espace_python\shn-pyshs\requirements.yml</​code>​ 
 + 
 + 
 +ATTENTION : seulement si non installé, installer ipykernel (et toues les dépendances ipython) 
 +<​code>​conda activate shn-pyshs</​code>​ 
 +<​code>​conda install ipykernel</​code>​ 
 +<​code>​conda deactivate</​code>​ 
 + 
 + 
 +Activer l'​ipykernel pour cet utilisateur 
 +<​code>​python -m ipykernel install --user --name shn-pyshs --display-name "​shn-pyshs"</​code>​ 
 + 
 +Désactier l'​environnement:​ 
 +<​code>​conda deactivate</​code>​ 
 + 
 +Activer l'​environnement principal Jupyter Lab: 
 +<​code>​conda activate env_jupyterlab</​code>​ 
 + 
 +Lister les kernels présents:​ 
 +<​code>​jupyter kernelspec list</​code>​ 
 +Si tout s'est bien passé, on y trouvera le kernel '//​shn-pyshs//'​ 
 + 
 +Lancer JupyterLab:​ 
 +<​code>​jupyter lab</​code>​ 
 + 
 +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
 +<​code>​jupyter kernelspec uninstall KERNELNAME</​code>​
  
python/environnement_conda.txt · Dernière modification: 2024/03/11 18:46 par Francesco Beretta