Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
python:anaconda [2022/02/19 16:14] Francesco Beretta [Ajout du canal conda-forge et installation de Mamba] |
python:anaconda [2024/02/23 01:38] (Version actuelle) Francesco Beretta [Gestion des environnements virtuels] |
||
---|---|---|---|
Ligne 16: | Ligne 16: | ||
Cf. [[https://docs.python.org/fr/3/tutorial/venv.html|Environnements virtuels et paquets]]. | Cf. [[https://docs.python.org/fr/3/tutorial/venv.html|Environnements virtuels et paquets]]. | ||
- | Plusieurs outils de gestion d'environnements virtuels existent, construits autour de PIP (cf. documentation officielle de Python). Comme nous pratiquons ici une approche orientée analyse de données (et non développement web ou développement d'applications), nous avons privilégié le gestionnaire de paquets Conda (cf. ci-dessous), ainsi qu'un édrivé plus performant appelé [[https://mamba.readthedocs.io/en/latest/index.html|Mamba]]. | + | Plusieurs outils de gestion d'environnements virtuels existent, construits autour de PIP (cf. documentation officielle de Python). Comme nous pratiquons ici une approche orientée analyse de données (et non développement web ou développement d'applications), nous avons privilégié le gestionnaire de paquets Conda (cf. ci-dessous). |
Ces deux gestionnaires d'environnements permettent d'installer des paquets d'autres langages informatiques, tel R, node.js ou java. Il est donc particulièrement intéressant et fléxible pour notre but. | Ces deux gestionnaires d'environnements permettent d'installer des paquets d'autres langages informatiques, tel R, node.js ou java. Il est donc particulièrement intéressant et fléxible pour notre but. | ||
Ligne 24: | Ligne 24: | ||
* [[https://www.anaconda.com/what-is-anaconda/|Ce qu'est Anaconda]] – [[https://docs.conda.io/projects/conda/en/latest/index.html|ce qu'est Conda]] | * [[https://www.anaconda.com/what-is-anaconda/|Ce qu'est Anaconda]] – [[https://docs.conda.io/projects/conda/en/latest/index.html|ce qu'est Conda]] | ||
- | * Installer [[https://docs.conda.io/en/latest/miniconda.html|Miniconda]]. Dans le cadre de ce tutoriel, la version de python de référence est la **3.9**. | + | * **Installer [[https://docs.conda.io/en/latest/miniconda.html|Miniconda]].** Dans le cadre de ce tutoriel, la version de python de référence est la **3.9**. |
* Quelle différence entre Anaconda et Miniconda ? [[https://www.anaconda.com/download/|Anaconda]] apporte, en plus du gestionnaire d'environnements Python //conda//, une interface graphique complète et différents logiciels. L'environnement risque d'être un peu lourd – pour des petits projets **Miniconda** est préférable. Il n'est pas recommandé, dans le cadre de cet atelier, de créer un environnement avec le logiciel Anaconda, car cela pose problème par la suite. | * Quelle différence entre Anaconda et Miniconda ? [[https://www.anaconda.com/download/|Anaconda]] apporte, en plus du gestionnaire d'environnements Python //conda//, une interface graphique complète et différents logiciels. L'environnement risque d'être un peu lourd – pour des petits projets **Miniconda** est préférable. Il n'est pas recommandé, dans le cadre de cet atelier, de créer un environnement avec le logiciel Anaconda, car cela pose problème par la suite. | ||
* [[https://zestedesavoir.com/tutoriels/1448/installer-un-environnement-de-developpement-python-avec-conda|Tutoriel en français]] concernant l'utilisation de //conda//. | * [[https://zestedesavoir.com/tutoriels/1448/installer-un-environnement-de-developpement-python-avec-conda|Tutoriel en français]] concernant l'utilisation de //conda//. | ||
Ligne 101: | Ligne 101: | ||
* Si l'ordre est inversé, effectuer: <code>conda config --set channel_priority strict</code>, puis vérifier l'ordre des canaux avec <code>conda config --show channels</code> 'conda-forge' doit être en premier. | * Si l'ordre est inversé, effectuer: <code>conda config --set channel_priority strict</code>, puis vérifier l'ordre des canaux avec <code>conda config --show channels</code> 'conda-forge' doit être en premier. | ||
- | * Installation de Mamba dans l'environnement de base de Conda: <code>conda install mamba -n base</code> | + | |
- | * Une mise à jour de beaucoup de paquets est effectuée | + | |
- | * Test de l'installation de Mamba: | + | |
- | * <code>mamba info</code> | + | |
- | * <code>conda list</code>, cf. le paquet mamba. | + | |
- | * Cf. la [[https://mamba.readthedocs.io/en/latest/user_guide/mamba.html|documentation de Mamba]] | + | |
===== Installation et activation de JupyterLab ===== | ===== Installation et activation de JupyterLab ===== | ||
- | * Avant toute nouvelle installation: <code>mamba update mamba</code> | + | Afin de disposer d'une installation propre de Jupyterlab on va créer un environnement //Conda// qui lui est dédié et dans lequel on n'installera pas d'autres librairies. Afin d'effectuer des analyses de données ou autres traitements, on crééera ensuite des environnements //Conda// appropriés qu'on activera dans Jupyterlab. |
- | * Créer ensuite un environnement contenant Jupyter Lab: <code>mamba create --name <envname> python=<version></code>. | + | |
- | * Pour **MacOS** exécuter: <code>mamba create --name env_jupyterlab requests</code> | + | |
- | * Pour **Windows** la même chose sauf si système à 32-bit. | + | * Avant toute nouvelle installation: <code>conda update conda</code> |
- | * Pour 32 bits exécuter: <code>mamba create --name env_jupyterlab jupyterlab pywin32 requests</code> | + | * Créer ensuite un environnement contenant Jupyter Lab. Voici la syntaxe à utiliser, on l'appliquera selon les exemples ci-dessous : <code>conda create --name <envname> python=<version></code>. |
+ | * Pour **MacOS** et **Windows 64 bits** exécuter: <code>conda create --name env_jupyterlab python=3.11 jupyterlab</code> | ||
+ | * Pour Windows **si système à 32-bit**: | ||
+ | * Si système à 32 bits exécuter: <code>conda create --name env_jupyterlab python=3.11 jupyterlab pywin32</code> | ||
* Lorsque l'exécutable demande : installer Y/n répondre Y = yes | * Lorsque l'exécutable demande : installer Y/n répondre Y = yes | ||
+ | * Lister les environnemnents disponibles: <code>conda env list</code> | ||
+ | |||
+ | * Pour effecer un environnement et ses paquets, exécuter: | ||
+ | <code>conda remove --name myenv --all</code> | ||
+ | |||
* Activer le nouvel environnement : <code>conda activate env_jupyterlab</code> | * Activer le nouvel environnement : <code>conda activate env_jupyterlab</code> | ||
* Pour désactiver l'environnement et revenir à l'environnement 'base: <code>conda deactivate</code> | * Pour désactiver l'environnement et revenir à l'environnement 'base: <code>conda deactivate</code> | ||
- | * Déplacer la position du Terminal vers le dossier dans lequel on mettra les notebooks (et les sous-dossiers des projets Github):<code>cd /root/folder/python_notebooks/</code> Syntaxe Windows:<code>cd ???? /root/folder/python_notebooks/</code> | + | * Déplacer la position du Terminal vers le dossier dans lequel on mettra les notebooks (et les sous-dossiers des projets Github):<code>cd /root/folder/dossier_python/</code> Syntaxe Windows:<code>cd C:\Users\My_Name\Documents\dossier_python</code> |
* Démarrer Juypter Lab : <code>jupyter lab</code> | * Démarrer Juypter Lab : <code>jupyter lab</code> | ||
* Pour **arrêter Jupyter Lab**: taper dans le Terminal ou Prompt où il est actif **alt-C** pour Windows ou **ctrl-C** pour Mac. | * Pour **arrêter Jupyter Lab**: taper dans le Terminal ou Prompt où il est actif **alt-C** pour Windows ou **ctrl-C** pour Mac. | ||
+ | * En cas de problèmes avec l'antivirus (surréaction et annonce de virus [[https://justuto.com/idp-generic-virus/|voir cette page]]) | ||
* Si on veut ajouter des nouveau paquets à l'environnement, **arrêter Jupyter Lab** , puis ajouter les paquets à l'environnement actif, dans ce cas //py37_gitlab// puis relancer le Lab. | * Si on veut ajouter des nouveau paquets à l'environnement, **arrêter Jupyter Lab** , puis ajouter les paquets à l'environnement actif, dans ce cas //py37_gitlab// puis relancer le Lab. | ||
- | * ATTENTION: mieux vaut toutefois garder l'environnement 'env_jupyterlab' uniquement pour JupyterLab et ses extentions. Pour l'analyse de données, créer des environnements dédiés qui seront activés dans jupyterlab. | + | * ATTENTION: mieux vaut toutefois garder l'environnement 'env_jupyterlab' uniquement pour JupyterLab et ses extentions. |
- | * Pour utiliser différents environnements, dédiés à différents projets ou technologies (NLP, etc.) voir les [[python:environnement_conda&#creer_un_nouvel_environnement_atelier_et_l_ajouter_aux_kernels_de_jupyter_lab|instructions sur cette page]] | + | * Pour l'analyse de données, créer des environnements dédiés à différents projets ou technologies (NLP, etc.) qui seront activés dans jupyterlab. **voir les [[python:environnement_conda&#creer_un_nouvel_environnement_atelier_et_l_ajouter_aux_kernels_de_jupyter_lab|instructions sur cette page]]** |
Ligne 135: | Ligne 139: | ||
- | L'installation de ce qui suit n'est pas nécessaire (éviter pour les utilisateurs·trices non expérimenté·e·s). | + | ATTENTION : l'installation de ce qui suit __n'est pas nécessaire__ (à éviter pour les utilisateurs·trices non expérimenté·e·s). |
\\ | \\ | ||
Ligne 218: | Ligne 222: | ||
Voir les [[python:bugs_connus_conda|Problèmes / Bugs]] connus concernant l'installation de Miniconda, JupyterLab et ses plugins | Voir les [[python:bugs_connus_conda|Problèmes / Bugs]] connus concernant l'installation de Miniconda, JupyterLab et ses plugins | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Installation de Mamba ====== | ||
+ | |||
+ | [février 2024] NB: Mamba a évolué, ne plus installer avec cette méthode — cf. la doc. | ||
+ | |||
+ | Gardé ici pour mémoire mais à revoir: | ||
+ | |||
+ | * Installation de Mamba dans l'environnement de base de Conda: <code>conda install mamba -n base</code> | ||
+ | * Une mise à jour de beaucoup de paquets est effectuée | ||
+ | * Test de l'installation de Mamba: | ||
+ | * <code>mamba info</code> | ||
+ | * <code>conda list</code>, cf. le paquet mamba. | ||
+ | * Cf. la [[https://mamba.readthedocs.io/en/latest/user_guide/mamba.html|documentation de Mamba]] |