Suivez les exemples qui montrent comment ajouter des bibliothèques personnalisées via conda
ou pip
lorsque vous créez un modèle d'environnement, en utilisant les modèles fournis pour Python et R.
mamba
à la place de conda
dans les exemples suivants. N'oubliez pas de cocher la case d'installation à partir de mamba
si vous ajoutez des canaux ou des packages à partir de mamba
au modèle d'environnement existant.Il existe des exemples pour :
- Ajout de packages
conda
- Ajout de packages
pip
- Combinaison de packages
conda
etpip
- Ajout de packages complexes comportant des dépendances internes
- Ajout de packages
conda
pour les blocs-notes R - Paramétrage des variables d'environnement
Conseils et astuces :
Ajout de packages conda
Pour obtenir les dernières version de pandas-profiling :
dependencies:
- pandas-profiling
Cela équivaut à exécuter conda install pandas-profiling
dans un bloc-notes.
Ajout de packages pip
Vous pouvez également personnaliser un environnement à l'aide de pip
si un package particulier n'est pas disponible dans les canaux conda
:
dependencies:
- pip:
- ibm_watsonx_ai
Cela équivaut à exécuter pip install ibm_watsonx_ai
dans un bloc-notes.
La personnalisation fera en fait plus que simplement installer le module pip
spécifié. Le comportement par défaut de conda
consiste également à rechercher une nouvelle version de pip
, puis à l'installer. La vérification de toutes les dépendances implicites dans conda
prend souvent plusieurs minutes et des gigaoctets de mémoire. La personnalisation suivante raccourcira l'installation de pip
:
channels:
- empty
- nodefaults
dependencies:
- pip:
- ibm_watsonx_ai
Le conda
canal empty
ne fournit aucun package. Il n'existe pas de package pip
en particulier. conda
n'essaiera pas d'installer pip
et utilisera la version déjà préinstallée à la place. Notez que le mot clé nodefaults
dans la liste des canaux a besoin d'au moins un autre canal dans la liste. Sinon, conda
ignore le mot clé en mode silencieux et utilise les canaux par défaut.
Combinaison de packages conda
et pip
Vous pouvez répertorier plusieurs packages avec un package par ligne. Une personnalisation unique peut comporter à la fois des packages conda
et des packages pip
.
dependencies:
- pandas-profiling
- scikit-learn=0.20
- pip:
- ibm_watsonx_ai
- sklearn-pandas==1.8.0
Notez que la notation de modèle requise est sensible aux espaces à gauche. Chaque élément de la liste des packages conda
doit comporter deux espaces de début. Chaque élément de la liste des packages pip
doit comporter quatre espaces de début. La version d'un package conda
doit être spécifiée à l'aide d'un symbole égal unique (=
), tandis que la version d'un package pip
doit être ajoutée à l'aide de deux symboles égaux (==
).
Ajout de packages complexes comportant des dépendances internes
Lorsque vous ajoutez de nombreux packages ou un package complexe avec de nombreuses dépendances internes, l'installation de conda
peut prendre du temps ou même s'arrêter sans renvoyer de messages d'erreur. Pour éviter cela, procédez comme suit :
- Indiquez les versions des packages que vous souhaitez ajouter. Cela réduit l'espace de recherche pour
conda
afin de résoudre les dépendances. - Augmentez la taille de mémoire de l'environnement.
- Utilisez un canal spécifique à la place des canaux
conda
par défaut définis dans le fichier.condarc
. Cela évite d'exécuter de longues recherches sur des canaux de grande taille.
Exemple de personnalisation qui n'utilise pas les canaux conda
par défaut:
# get latest version of the prophet package from the conda-forge channel
channels:
- conda-forge
- nodefaults
dependencies:
- prophet
Cette personnalisation correspond à la commande suivante dans un bloc-notes :
!conda install -c conda-forge --override-channels prophet -y
Ajout de packages conda
pour les blocs-notes R
L'exemple suivant montre comment créer une personnalisation qui ajoute des packages conda
à utiliser dans un bloc-notes R:
channels:
- defaults
dependencies:
- r-plotly
Cette personnalisation correspond à la commande suivante dans un bloc-notes :
print(system("conda install r-plotly", intern=TRUE))
Les noms des packs R dans conda
commencent généralement par le préfixe r-
. Si vous utilisez uniquement plotly
dans votre personnalisation, l'installation aboutit mais le package Python est installé à la place du package R. Si vous essayez ensuite d'utiliser le package dans votre code R comme dans library(plotly)
, une erreur est renvoyée.
Paramétrage des variables d'environnement
Vous pouvez définir des variables d'environnement dans votre environnement en ajoutant une section variables
au modèle de personnalisation de logiciel, comme illustré dans l'exemple suivant:
variables:
my_var: my_value
HTTP_PROXY: https://myproxy:3128
HTTPS_PROXY: https://myproxy:3128
NO_PROXY: cluster.local
L'exemple montre également que vous pouvez utiliser la section variables
pour définir un serveur proxy pour un environnement.
Limitation: vous ne pouvez pas remplacer des variables d'environnement existantes, par exemple LD_LIBRARY_PATH
, à l'aide de cette approche.
Meilleures pratiques
Pour éviter les problèmes liés aux packages manquants et aux dépendances en conflit, commencez par installer manuellement les packages dont vous avez besoin via un bloc-notes dans un environnement de test. Ainsi, vous pouvez vérifier de manière interactive si les packages peuvent être installés sans erreurs. Après avoir vérifié que les packages sont correctement installés, créez une personnalisation pour votre environnement de développement ou de production et ajoutez les packages au modèle de personnalisation.
Rubrique parent : Personnalisation des environnements