Saltar al contenido principal

Cómo afrontar los cambios de licencia de Anaconda: lo que necesitas saber

Entiende el impacto de los recientes cambios de licencia de Anaconda y qué significan para tu organización. Aprende a moverte por las nuevas condiciones y descubre pasos prácticos para mantener tus flujos de trabajo en ciencia de datos.
Thalia Barrera
Thalia Barrera

Crea tu cuenta gratuita

Practica y programa tu progreso.

Continuar con GoogleAl continuar, aceptas nuestra Términos de uso, nuestros Política de privacidad y que tus datos se almacenen en EE. UU.

Anaconda es una herramienta clave para los equipos de ciencia de datos, ya que ofrece una plataforma para gestionar entornos y paquetes. Sin embargo, los cambios recientes en sus condiciones de licencia han llevado a muchas empresas, especialmente a las preocupadas por los costes y el cumplimiento normativo, a replantearse su uso de la plataforma.

En este artículo te explico qué significan estos cambios para los equipos de datos, cómo evaluar si migrar es la mejor decisión (o incluso si es necesario) y te propongo pasos prácticos para pasar a alternativas.

Al terminar de leer, tendrás una idea mucho más clara de las actualizaciones de licencia y de cómo gestionarlas con éxito. ¡Vamos allá!

Entender los cambios de licencia de Anaconda

Los cambios de licencia de Anaconda en 2024 han generado inquietud, especialmente en sectores como el académico, el de investigación y el sin ánimo de lucro, que confiaban en que la plataforma estaba disponible sin coste.

Para complicar más las cosas, suele haber confusión sobre qué es gratis y qué no al usar conda, el gestor de paquetes, frente a los canales y distribuciones que proporciona Anaconda.

Si aún tienes dudas, no te preocupes; en esta sección te explico los cambios y, con suerte, aclararé si esto debería preocuparte.

Entonces, ¿qué ha cambiado?

El núcleo del cambio está en la definición de "uso organizativo" de Anaconda. Según los nuevos términos de licencia, cualquier organización con 200 o más empleados o contratistas debe adquirir una licencia de pago para usar el software de Anaconda.

Los términos de licencia aclaran, en particular, que el umbral de 200 empleados se aplica no solo a empresas con ánimo de lucro, sino también a organismos públicos y organizaciones sin ánimo de lucro.

Esto supone un cambio respecto a políticas anteriores que permitían a universidades, centros de investigación y otras entidades sin ánimo de lucro usar Anaconda sin coste (o al menos eso se entendía). Actualmente, estas organizaciones deben obtener licencias si superan el límite de 200 empleados.

Aunque los centros educativos siguen estando exentos, su uso debe limitarse a «cursos basados en plan de estudios». Anaconda se reserva el derecho de supervisar y garantizar que el software se utilice estrictamente con fines educativos.

Y esto no es todo. Conviene desglosar qué exactamente es gratuito y qué no dentro del ecosistema de Anaconda.

Conda: la herramienta libre y de código abierto

Para empezar, es importante aclarar que conda, el software de gestión de paquetes y entornos, sigue siendo libre y de código abierto. Cualquiera puede usar conda para crear, gestionar e instalar entornos sin preocupaciones de licencia. Siempre ha sido así y lo sigue siendo. 

Los paquetes compatibles con conda —los que instalas con conda desde canales de la comunidad como conda-forge— también son de uso gratuito.

Conda vs. Anaconda Distribution y el canal defaults

Aunque conda es gratis, el canal defaults —donde Anaconda aloja y selecciona determinados paquetes— tiene normas de licencia distintas. 

El canal defaults forma parte de Anaconda Distribution, un conjunto de paquetes de ciencia de datos e IA seleccionados, compilados y mantenidos por los ingenieros de Anaconda. Esta distribución, junto con el canal defaults, hace hincapié en la seguridad, la estabilidad y el cumplimiento normativo, algo importante para empresas que tratan datos sensibles o trabajan en sectores altamente regulados.

El canal defaults consta de tres canales distintos: pkg/main, pkgs/r y pkg/msys2, según la sección de preguntas frecuentes del repositorio de paquetes de Anaconda. Estos canales se configuran automáticamente en tu archivo de configuración .condarc al instalar Anaconda Distribution o Miniconda.

Las actualizaciones de los términos de servicio solo se aplican al canal defaults y a Anaconda Distribution. Según estos términos:

  • Las empresas con menos de 200 empleados pueden seguir usando Anaconda Distribution y el canal defaults sin coste.
  • Las empresas con 200 o más empleados deben adquirir una licencia de pago para acceder al canal defaults o usar Anaconda Distribution.
  • El alumnado y las instituciones educativas están exentos y pueden usar el software gratis siempre que sea para cursos basados en plan de estudios.

Imagen que muestra Anaconda Navigator, una interfaz de escritorio incluida en Anaconda Distribution

Anaconda Navigator, una GUI de escritorio incluida en Anaconda Distribution. Fuente de la imagen: Anaconda.

Para muchos, este cambio significa que lo que antes se consideraba gratuito ahora está sujeto a tasas de licencia según el número de empleados. Otros, que quizá solo usan conda, pueden quedarse más tranquilos. 

¿Y Miniconda?

Si buscas una alternativa ligera a Anaconda Distribution, Miniconda es una gran opción. Incluye únicamente el gestor de paquetes conda y Python, los paquetes de los que dependen ambos y un pequeño conjunto de paquetes útiles.

Miniconda te permite instalar y gestionar solo los paquetes que necesitas, por lo que es una opción más personalizable y flexible para quien no requiere todo el conjunto de paquetes de Anaconda. 

Importante: Miniconda es gratuito y no está sujeto a los términos de licencia de Anaconda siempre que evites usar el canal defaults y te ciñas a repositorios gestionados por la comunidad.

¿Por qué el canal defaults es de pago?

El canal defaults de Anaconda no es una simple colección de paquetes; lo seleccionan y securizan los ingenieros de Anaconda, lo que lo hace más estable y seguro que canales de comunidad como conda-forge. Esta capa adicional de seguridad es clave en sectores que requieren alta confianza en su software, como finanzas, salud y administración pública.

El curso Introduction to Data Security te enseña más sobre cómo mantener los datos a salvo. Es un recurso valioso, sobre todo si trabajas en los sectores mencionados.

Aunque los canales comunitarios como conda-forge ofrecen un gran abanico de paquetes, dependen de contribuciones de la comunidad y de prácticas de seguridad de mejor esfuerzo. Son excelentes para investigación, desarrollo y entornos no críticos. 

Imagen con una captura de la página principal de conda-forge

Fuente de la imagen: conda-forge

Aun así, para empresas que manejan datos sensibles, la seguridad y el mantenimiento añadidos que ofrece el canal defaults de Anaconda pueden justificar el coste.

En resumen:

  • Conda, el gestor de paquetes, es gratis, de código abierto y está disponible para cualquiera.
  • Los paquetes compatibles con conda de canales públicos como conda-forge también son gratuitos para todo el mundo.
  • El canal defaults y Anaconda Distribution son gratis si:
    • Tu organización tiene menos de 200 empleados, o
    • Tu organización cumple alguna exención (p. ej., alumnado o entidades educativas que usen el software en cursos basados en plan de estudios).
  • Las organizaciones con 200 o más empleados deben comprar licencias para usar el canal defaults y Anaconda Distribution, salvo que entren en una exención.

Ahora que hemos aclarado la situación, ¿sigues pensando en dejar Anaconda? Si es así, sigue leyendo.

Evaluar alejarse de Anaconda

Puedes plantearte dejar Anaconda por distintos motivos: por las licencias (y costes) explicados arriba o porque buscas una opción más ligera.

Si es tu caso, aquí tienes un marco para evaluar si la transición desde Anaconda es viable. 

El curso Data Science for Business puede ayudarte a entender mejor el flujo de trabajo de ciencia de datos desde una perspectiva estratégica, algo útil si eres mánager y debes tomar decisiones como esta.

Evaluar los costes de licencia

Los equipos de datos deben tener en cuenta las tasas de licencia al presupuestar software y herramientas. No obstante, estos costes pueden evitarse pasándose a canales gratuitos como conda-forge, que pueden ser adecuados para la mayoría de casos en los que no se necesita la seguridad y estabilidad estrictas del canal defaults de Anaconda.

  • A tener en cuenta: si tu empresa maneja datos sensibles o opera en un sector altamente regulado, quizá prefieras la seguridad del canal defaults de Anaconda, aunque tenga coste. Sin embargo, canales comunitarios como conda-forge ofrecen una alternativa sin coste para equipos que trabajen en proyectos menos sensibles.
  • Pregunta clave: ¿El tamaño, presupuesto y sector de tu empresa encajan con el modelo de licencia de Anaconda?
    • Si tu empresa tiene más de 200 empleados, compara el coste de las licencias de Anaconda con alternativas gratuitas como Miniforge o Mamba, que usan conda-forge.

Riesgos de seguridad y cumplimiento

Los equipos en sectores con medidas estrictas de seguridad y cumplimiento —como sanidad, finanzas o administración pública— pueden necesitar seguir usando el canal defaults de Anaconda para garantizar seguridad y mantenimiento. 

Aunque conda-forge y otros canales comunitarios son abiertos y gozan de confianza, no ofrecen el mismo nivel de supervisión de seguridad, por lo que pueden no ser adecuados en ciertos entornos regulatorios.

  • A tener en cuenta: evalúa tus requisitos de seguridad. Si tratas datos sensibles o regulados, continuar con el canal defaults con una licencia de pago puede ser necesario para asegurar el cumplimiento.
  • Pregunta clave: ¿Tu empresa maneja datos sensibles u opera en entornos regulados?
    • Si la seguridad y el cumplimiento normativo son prioritarios, puede ser necesario el acceso de pago al canal defaults de Anaconda para garantizar una gestión de paquetes segura y estable.

Estabilidad de flujos de trabajo y entornos

La estabilidad es clave para mantener flujos de trabajo fluidos en los equipos de datos. Anaconda Distribution y el canal defaults ofrecen un conjunto bien curado de paquetes, mantenidos y probados por los ingenieros de Anaconda para garantizar la estabilidad entre entornos. 

Cambiar a una alternativa como conda-forge puede introducir variabilidad, al estar mantenida por la comunidad, pero este intercambio es aceptable en muchos escenarios de I+D.

  • A tener en cuenta: los equipos que dependen de entornos consistentes y estables deben probar cuidadosamente los flujos de trabajo antes de salir del canal defaults. Para entornos de producción con requisitos estrictos de estabilidad, seguir con Anaconda Distribution puede ser la mejor opción.
  • Pregunta clave: ¿Migrar fuera de Anaconda provocará interrupciones significativas en tus flujos de trabajo?
    • Si tus entornos son complejos y dependen en gran medida de paquetes del canal defaults de Anaconda, evalúa con cuidado los riesgos de migración y prueba a fondo las alternativas antes de cambiar.

El curso Developing Machine Learning Models for Production puede ayudarte a entender mejor qué supone trabajar con modelos complejos de ciencia de datos en entornos de producción. 

Flexibilidad y evitar el bloqueo con un proveedor

Para equipos preocupados por el vendor lock-in, pasar del canal defaults y la Distribution de Anaconda a herramientas como Miniforge y Mamba (que usan por defecto conda-forge) aporta más flexibilidad. 

Al usar canales gestionados por la comunidad, los equipos ganan control sobre la gestión de paquetes y evitan los costes a largo plazo de las opciones comerciales de Anaconda.

  • A tener en cuenta: si la flexibilidad y la eficiencia de costes son prioritarias, cambiar a alternativas de código abierto como Miniforge y Mamba te ayudará a evitar el bloqueo con un proveedor manteniendo gran parte de la misma funcionalidad.
  • Pregunta clave: ¿Tu equipo necesita flexibilidad para personalizar entornos o evitar el bloqueo con un proveedor?
    • Si tu equipo valora la flexibilidad y poder gestionar entornos con libertad, cambiar a Miniforge o Mamba ofrece más opciones de personalización y evita los costes asociados a Anaconda Distribution.

Colaboración y apoyo al ecosistema open source

Muchas instituciones de investigación y universidades que contribuyen a la comunidad open source han usado tradicionalmente Anaconda Distribution. 

Los cambios de licencia afectan a la capacidad de estas instituciones para seguir usando la plataforma sin pagar por el acceso. Sin embargo, los canales comunitarios permiten que los equipos de datos sigan contribuyendo a proyectos open source sin barreras económicas.

  • A tener en cuenta: para equipos implicados en investigación académica o desarrollo open source, pasarse a conda-forge permitirá seguir usando paquetes compatibles con conda sin preocupaciones de licencia, a la vez que se apoya al ecosistema open source.
  • Pregunta clave: ¿Tu equipo participa en desarrollo open source o proyectos de investigación?
    • Si te centras en contribuciones open source o investigación académica, alejarte del canal defaults puede mantener tus flujos de trabajo sin coste y apoyar a la comunidad.

Migrar desde Anaconda: pasos prácticos

Así que has decidido migrar de Anaconda Distribution y del canal defaults. ¿Y ahora qué? Las migraciones de software pueden imponer respeto, y con razón. Incluso planificándolas bien, es de esperar cierto nivel de interrupción.

En esta sección, comento las consideraciones que debes tener al planificar tu migración y cómo puede ser en la práctica. La guía busca ayudarte a reducir al mínimo el impacto en tus flujos de trabajo de ciencia de datos.

1. Audita tus entornos actuales

Antes de hacer cambios, es esencial auditar tus entornos actuales para identificar todos los paquetes y dependencias que usas. El objetivo es facilitar la transición a nuevos canales, sobre todo si alguno de tus entornos depende ahora del canal defaults de Anaconda.

  • Exporta los detalles del entorno: usa conda env export para crear un archivo environment.yml con todos los paquetes y dependencias instalados en tu entorno actual:
conda env export > environment.yml
  • Revisa tus dependencias: comprueba el archivo environment.yml para detectar paquetes procedentes del canal defaults de Anaconda, ya que puede que tengas que sustituirlos por equivalentes de conda-forge.

2. Configura una alternativa, como Miniforge o Mamba

Hemos preparado una guía completa sobre alternativas a Anaconda para ayudarte a valorar las opciones. Te recomiendo dedicar un momento a compararlas y elegir la mejor según tus necesidades.

Aquí te explico cómo pasarte a Miniforge o Mamba, alternativas más ligeras que usan por defecto el canal conda-forge.

  • Miniforge: instalador mínimo que configura conda para usar por defecto el canal libre y de código abierto conda-forge.
  • Mamba: alternativa más rápida a conda, basada en el mismo sistema de gestión de paquetes pero con resolución de dependencias y creación de entornos más veloz.

Pasos para Miniforge:

  • Instala Miniforge:
curl -LO https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh
bash Miniforge3-Linux-x86_64.sh

Para instrucciones actualizadas y específicas de tu sistema operativo, consulta el repositorio de Miniforge.

  • Configura conda-forge como canal por defecto:
conda config --add channels conda-forge
conda config --set channel_priority strict

Pasos para Mamba:

  • Instala Mamba:
conda install mamba -n base -c conda-forge

Para una instalación desde cero, consulta la documentación de mamba.

3. Recrea tus entornos usando conda-forge

Una vez instalado Miniforge o Mamba (o cualquier otra alternativa), el siguiente paso es recrear tus entornos usando conda-forge como fuente principal de paquetes.

Conda-forge ofrece muchos paquetes, y en la mayoría de los casos hay equivalentes de los que antes estaban disponibles en el canal defaults de Anaconda.

  • Crea el entorno usando tu archivo environment.yml exportado:
    • Con Miniforge:
conda env create -f environment.yml
    • Con Mamba:
mamba env create -f environment.yml

4. Sustituye paquetes del canal defaults de Anaconda

Si tus entornos incluían paquetes del canal defaults de Anaconda, tendrás que reemplazarlos por equivalentes de conda-forge u otros canales comunitarios.

  • Identifica los paquetes del canal defaults: revisa tu archivo environment.yml para localizar dependencias procedentes de el canal defaults.
  • Instala sustitutos desde conda-forge:
conda install -c conda-forge <package_name>

Si algún paquete no está disponible en conda-forge, quizá tengas que buscar alternativas manualmente o instalarlo con pip.

  • Resuelve conflictos: si hay conflictos de versiones, ajusta las versiones en tu archivo environment.yml o resuélvelos manualmente durante la instalación.

5. Prueba tu nuevo entorno

Tras recrear los entornos con conda-forge u otras alternativas, es esencial probarlos para asegurarte de que todas las dependencias se han instalado correctamente y que tus flujos de trabajo siguen funcionando. Esto es especialmente importante si migras entornos de producción o flujos críticos.

  • Activa el nuevo entorno:
conda activate <environment_name>
  • Ejecuta los flujos de trabajo: prueba scripts, modelos o aplicaciones que dependan del entorno para confirmar que todo funciona como esperas.
  • Depura los problemas: si faltan paquetes o son incompatibles, busca alternativas o actualiza el entorno según sea necesario.

6. Actualiza los pipelines de CI/CD

Si tu equipo depende de integración y despliegue continuos (CI/CD) para automatizar flujos, tendrás que actualizar estos scripts para reflejar la nueva configuración del entorno.

  • Actualiza los scripts de CI/CD: sustituye comandos específicos de Anaconda por sus equivalentes en Miniforge o Mamba.
  • Recrea entornos en los pipelines de CI: asegúrate de que los pipelines usan conda-forge en lugar del canal defaults de Anaconda.
  • Prueba los pipelines de CI/CD: ejecuta pruebas completas de tus procesos de CI/CD para confirmar que todo funciona con fluidez con el nuevo entorno.

7. Documentación y formación del equipo

Migrar a un nuevo sistema de gestión de entornos requiere actualizar la documentación interna y asegurarte de que el equipo conoce la nueva configuración. 

Aunque Miniforge y Mamba funcionan de forma similar a conda, conviene comunicar los nuevos procesos para evitar confusiones.

  • Actualiza la documentación interna: incluye instrucciones para crear entornos, instalar paquetes y gestionar dependencias con conda-forge.
  • Organiza sesiones de formación: ofrece formación para que el equipo se familiarice con las nuevas herramientas y flujos.
  • Supervisa la adopción: asegúrate de que todo el equipo sigue los procesos actualizados, especialmente en entornos compartidos.

Conclusión

Los cambios de licencia de Anaconda han llevado a algunos equipos a explorar herramientas alternativas que ofrecen más flexibilidad y ahorro de costes. Aunque la plataforma sigue aportando valor a ciertas empresas y sectores, las alternativas open source permiten gestionar entornos sin costes añadidos ni complejidades de licencia.

Con una buena planificación, auditando tus configuraciones actuales y pasando a herramientas gratuitas impulsadas por la comunidad, tu equipo puede mantener flujos de trabajo eficaces sin interrupciones.

Si quieres ampliar tus conocimientos de ciencia de datos, no te pierdas estos cursos:

FAQs

¿Puedo seguir usando Anaconda si solo instalo Miniconda?

Sí. Miniconda es un instalador ligero que incluye solo conda, Python y algunos paquetes esenciales. Es gratuito y no requiere licencia siempre que no obtengas paquetes del repositorio por defecto de Anaconda incumpliendo los términos. Si configuras Miniconda para usar conda-forge u otros canales libres, podrás seguir gestionando entornos sin preocupaciones de licencia. Pero recuerda revisar siempre los términos actualizados.

¿Hay diferencias de rendimiento entre Anaconda y Miniforge/Mamba?

Sí. Mamba es conocido por ser más rápido que conda, especialmente al resolver dependencias en entornos grandes. Usa los mismos comandos que conda, así que la curva de aprendizaje es mínima. Miniforge también es más ligero que la distribución completa de Anaconda, aunque el rendimiento dependerá en gran medida del tamaño y la complejidad de los paquetes que instales.

¿Cómo sé si mi organización cumple la exención educativa?

La exención educativa de Anaconda se aplica solo a instituciones que usan el software en cursos basados en plan de estudios. El profesorado y el alumnado que lo usen para enseñar o aprender pueden usar la plataforma gratis. Aun así, los proyectos de investigación, el trabajo administrativo u otras actividades fuera del plan de estudios pueden requerir licencia. Es importante revisar detenidamente los términos de Anaconda o contactarles directamente para aclaraciones.

¿Cuál es el impacto a largo plazo de dejar Anaconda en mis proyectos de ciencia de datos?

Cambiar de Anaconda puede aumentar tu flexibilidad, permitiéndote integrar más herramientas open source y evitar el bloqueo con un proveedor. No obstante, algunas organizaciones pueden sufrir interrupciones iniciales, especialmente si sus flujos dependen mucho del ecosistema de Anaconda. A largo plazo, usar alternativas open source puede darte más control sobre tus herramientas y reducir costes, pero es importante planificar y probar a fondo antes de migrar.

¿Puedo mezclar paquetes de conda-forge con paquetes del canal por defecto de Anaconda?

Sí, puedes mezclar paquetes de conda-forge con paquetes del canal por defecto de Anaconda, pero debes tener presentes posibles cuestiones de licencia si tu organización supera el umbral de 200 empleados. Además, mezclar paquetes de distintos canales a veces provoca conflictos de dependencias, por lo que se recomienda mantener una única fuente principal, como conda-forge, para asegurar la compatibilidad y evitar problemas de licencia.

Thalia Barrera

Autor

Thalia Barrera

Thalia Barrera es Editora Senior de Ciencia de Datos en DataCamp, con un máster en Informática y más de una década de experiencia en ingeniería de software y datos. Thalia disfruta simplificando conceptos tecnológicos para ingenieros y científicos de datos a través de publicaciones en blogs, tutoriales y cursos en vídeo.

Temas

Relacionado

Python 2 vs 3

blog

Python 2 frente a 3: Todo lo que necesitas saber