Siga los ejemplos que muestran cómo añadir bibliotecas personalizadas a través de conda
o pip
al crear una plantilla de entorno, utilizando las plantillas proporcionadas para Python y R.
mamba
en lugar de conda
en los ejemplos siguientes. Recuerde seleccionar el recuadro de selección para instalar desde mamba
si añade canales o paquetes desde mamba
a la plantilla de entorno existente.Existen ejemplos para:
- Adición de paquetes de
conda
- Adición de paquetes de
pip
- Combinación de paquetes
conda
ypip
- Adición de paquetes complejo con dependencias internas
- Adición de paquetes de
conda
para cuadernos R - Definir variables de entorno
Consejos y sugerencias:
Adición de paquetes de conda
Para obtener las últimas versiones de - pandas-profiling:
dependencies:
- pandas-profiling
Esto equivale a ejecutar conda install pandas-profiling
en un cuaderno.
Adición de paquetes de pip
También puede personalizar un entorno utilizando pip
si un paquete determinado no está disponible en canales conda
:
dependencies:
- pip:
- ibm_watsonx_ai
Esto equivale a ejecutar pip install ibm_watsonx_ai
en un cuaderno.
La personalización hará más que instalar el paquete pip
especificado. El comportamiento predeterminado de conda
es buscar también una nueva versión de pip
y luego instalarla. La comprobación de todas las dependencias implícitas en conda
suele tardar varios minutos y también gigabytes de memoria. La siguiente personalización abreviará la instalación de pip
:
channels:
- empty
- nodefaults
dependencies:
- pip:
- ibm_watsonx_ai
El conda
canal empty
no proporciona ningún paquete. No hay ningún paquete pip
en particular. conda
no intentará instalar pip
y, en su lugar, utilizará la versión ya preinstalada. Tenga en cuenta que la palabra clave nodefaults
en la lista de canales necesita al menos otro canal en la lista. De lo contrario, conda
ignorará silenciosamente la palabra clave y utilizará los canales predeterminados.
Combinación de paquetes conda
y pip
Puede listar varios paquetes con un paquete por línea. Una única personalización puede tener paquetes conda
y paquetes pip
.
dependencies:
- pandas-profiling
- scikit-learn=0.20
- pip:
- ibm_watsonx_ai
- sklearn-pandas==1.8.0
Tenga en cuenta que la notación de plantilla necesaria tiene en cuenta los espacios iniciales. Cada elemento de la lista de paquetes de conda
debe tener dos espacios iniciales. Cada elemento de la lista de paquetes de pip
debe tener cuatro espacios iniciales. La versión de un paquete conda
debe especificarse utilizando un único símbolo de igual (=
), mientras que la versión de un paquete pip
debe añadirse utilizando dos símbolos de igual (==
).
Adición de paquetes complejo con dependencias internas
Cuando añade muchos paquetes o un paquete complejo con muchas dependencias internas, la instalación de conda
puede tardar mucho tiempo o incluso puede detenerse sin devolver ningún mensaje de error. Para evitarlo:
- Especifique las versiones de los paquetes que desea añadir. Esto reduce el espacio de búsqueda de
conda
para resolver dependencias. - Aumente el tamaño de memoria del entorno.
- Utilice un canal específico en lugar de los canales
conda
predeterminados definidos en el archivo.condarc
. Esto evita ejecutar búsquedas largas a través de canales grandes.
Ejemplo de una personalización que no utiliza los canales conda
predeterminados:
# get latest version of the prophet package from the conda-forge channel
channels:
- conda-forge
- nodefaults
dependencies:
- prophet
Esta personalización corresponde al siguiente mandato de un cuaderno:
!conda install -c conda-forge --override-channels prophet -y
Adición de paquetes de conda
para cuadernos R
El ejemplo siguiente muestra cómo crear una personalización que añada paquetes conda
para utilizarlos en un cuaderno R:
channels:
- defaults
dependencies:
- r-plotly
Esta personalización corresponde al siguiente mandato de un cuaderno:
print(system("conda install r-plotly", intern=TRUE))
Los nombres de los paquetes R en conda
generalmente empiezan con el prefijo r-
. Si sólo utiliza plotly
en la personalización, la instalación se realizará correctamente, pero el paquete Python se instalará en lugar del paquete R. Si, a continuación, intenta utilizar el paquete en el código R como en library(plotly)
, esto devolvería un error.
Definir variables de entorno
Puede establecer variables de entorno en el entorno añadiendo una sección variables
a la plantilla de personalización de software tal como se muestra en el ejemplo siguiente:
variables:
my_var: my_value
HTTP_PROXY: https://myproxy:3128
HTTPS_PROXY: https://myproxy:3128
NO_PROXY: cluster.local
El ejemplo también muestra que puede utilizar la sección variables
para establecer un servidor proxy para un entorno.
Limitación: no puede alterar temporalmente las variables de entorno existentes, por ejemplo LD_LIBRARY_PATH
, utilizando este enfoque.
Prácticas recomendadas
Para evitar problemas con paquetes que faltan y dependencias en conflicto, empiece instalando manualmente los paquetes que necesita a través de un cuaderno en un entorno de prueba. De esta manera puede comprobar de forma interactiva si los paquetes se pueden instalar sin errores. Después de verificar que los paquetes se han instalado correctamente, cree una personalización para el entorno de desarrollo o producción y añada los paquetes a la plantilla de personalización.
Tema principal: Personalización de entornos