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 [2021/04/12 22:53]
Francesco Beretta [Créer un nouvel environnement]
python:environnement_conda [2022/03/12 12:27]
Francesco Beretta [Métadonnées et update de Conda]
Ligne 4: Ligne 4:
  
  
-====== Métadonnées et update de Conda ======+====== Métadonnées et update de Conda /​ Mamba ​====== 
 + 
 +[[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​getting-started.html#​managing-environments|Documentation et tutoriel]] concernant l'​utilisation de Conda. 
 + 
 +[[https://​mamba.readthedocs.io/​en/​latest/​user_guide/​mamba.html|Documentation]] concernant l'​utilisation de Mamba. Mamba est une sorte de sur-couche logicielle exécute la plupart des commandes de Conda de manière plus performante. Dans la plupart des cas les appel conda / mamba sont interchangeables.
  
-[[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​getting-started.html#​managing-environments|Documentation et tutoriel]] concernant l'​utilisation de Conda 
  
  
Ligne 18: Ligne 21:
 <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.
  
-====== Créer un nouvel environnement ======+ 
 + 
 +====== Créer ​manuellement ​un nouvel environnement ======
  
 Documentation:​ [[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​tasks/​manage-environments.html|managing environments]] Documentation:​ [[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​tasks/​manage-environments.html|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 
 +
 +<​code>​ mamba env create --name py39_html_xml python=3.9 ipykernel requests lxml </​code>​
 +
 +Lister les librairies installées (seulement celles déclarées explicitement):​
 +<​code>​mamba env export ​ --name py39_html_xml --from-history</​code>​
  
  
-<​code>​ conda create --name atelier python=3.7 ipykernel pathlib plotly matplotlib scipy pandas xlrd seaborn statsmodels patsy </​code>​+Lister toutes les librairies et dépendances installées:​ 
 +<​code>​conda ​activate py39_html_xml</​code>​
  
-Lister ​les bibliothèques de fonctions installées:+On est ainsi positionné dans l'​environnement et on liste les librairies:
 <​code>​conda list</​code>​ <​code>​conda list</​code>​
  
-Vérifier si telle bibliothèque (ici BeautifulSoup) ​est installée:+<​code>​conda deactivate</​code>​  
 + 
 + 
 +Pour ajouter une librairire, par ex. la bibliothèque de visualisation:​ '​seaborn'​. 
 + 
 +Vérifier si elle est disponibles:
 <​code>​conda search seaborn</​code>​ <​code>​conda search seaborn</​code>​
 +
 +Vérifier la version disponible (et conseillée) sur ce site : [[https://​anaconda.org/​search|Anaconda search package]] — choisir généralement la plus utilisée.
  
  
-Si ce n'est pas le casd'​abord ​sauvegarder la configuration ​de l'​environnement:​ +Avant de procéder, sauvegarder la liste des librairies ​de l'​environnement:​ 
-<​code>​conda env export --name ​atelier ​> [exemple:​] ​/​Volumes/​MyDisk/​python_notebooks/​_environments/​atelier_20200507.yml</​code>​+<​code>​mamba 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/​atelier_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 : [[https://​anaconda.org/​anaconda/​seaborn | anaconda / packages / seaborn]] ​   * Vérifier ensuite les spécifications dans l'​entrepôt de bibliothèques : [[https://​anaconda.org/​anaconda/​seaborn | anaconda / packages / seaborn]] ​
Ligne 44: Ligne 68:
  
 Puis installer la nouvelle bibliothèque:​ Puis installer la nouvelle bibliothèque:​
-<​code>​conda install seaborn</​code>​+<​code>​mamba install seaborn</​code>​
  
-Pour supprimer un environnement: ​ 
-<​code>​ conda env remove --name ENVIRONMENT ​ --all</​code>​ 
  
 +====== Supprimer un environnement: ​ ======
 +<​code>​ conda env remove --name ENVIRONMENT </​code>​
  
  
-====== Créer un nouvel environnement '​atelier'​ et l'​ajouter aux kernels de Jupyter Lab ====== 
  
-En règle générale, on utilise un environnement Conda par projet. 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.+====== Créer un nouvel environnement '​shn-pyshs'​ à partir d'une liste de librairie et l'​ajouter aux kernels de Jupyter Lab ====== 
 + 
 +On présente ici la création d'un environnement Conda à partir d'une liste de librairies. 
 + 
 + 
 +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. ​ 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. ​
Ligne 67: Ligne 95:
 ===== Recette ===== ===== 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 **//​atelier//​** avec toutes ses librairies: 
-<​code>​conda create --name atelier python=3.7 matplotlib</​code>​ 
  
-L'activer+Créer d'abord le nouvel environnement **//​shn-pyshs//​** avec toutes ses librairies
-<​code>​conda activate atelier</​code>​+<​code>​mamba create --name shn-pyshs --file C:​\Users\your_name\Documents\espace_python\shn-pyshs\requirements.yml</​code>​
  
-Installer ​ipykernel (et toues les dépendances ipython)+ 
 +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 install ipykernel</​code>​
 +<​code>​conda deactivate</​code>​
 +
  
 Activer l'​ipykernel pour cet utilisateur Activer l'​ipykernel pour cet utilisateur
-<​code>​python -m ipykernel install --user --name ​atelier ​--display-name "Py 3.7 atelier"</​code>​+<​code>​python -m ipykernel install --user --name ​shn-pyshs ​--display-name "shn-pyshs"</​code>​
  
 Désactier l'​environnement:​ Désactier l'​environnement:​
Ligne 84: Ligne 115:
  
 Activer l'​environnement principal Jupyter Lab: Activer l'​environnement principal Jupyter Lab:
-<​code>​conda activate ​py37_gitlab</​code>​+<​code>​conda activate ​env_jupyterlab</​code>​
  
 Lister les kernels présents: Lister les kernels présents:
 <​code>​jupyter kernelspec list</​code>​ <​code>​jupyter kernelspec list</​code>​
-Si tout s'est bien passé, on y trouvera le kernel '//atelier//'+Si tout s'est bien passé, on y trouvera le kernel '//shn-pyshs//'
  
 Lancer JupyterLab: Lancer JupyterLab:
Ligne 94: Ligne 125:
  
 Dans l'​interface graphique, dans un carnet, choisir le kernel et environnement souhaité. 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. 1** On peut, dans une autre fenêtre de terminal, activer l'​environnement '//atelier//' et lui ajouter de nouvelles bibliothèques. Puis on redémarre le kernel et elles seront activables.+
  
  
python/environnement_conda.txt · Dernière modification: 2024/03/11 18:46 par Francesco Beretta