Entornos virtuales con Anaconda y pip
¿Qué son los entornos virtuales?
Instalación de Anaconda
Conda: creación de entornos virtuales desde terminal
Conda: eliminar entornos virtuales y paquetes
Conda: actualización, clonación y exportación de entornos
Manejo de entornos virtuales desde Anaconda Navigator
Quiz: Entornos virtuales con Anaconda y pip
Uso de Jupyter Notebook y JupyterLab
Jupyter Notebooks desde Anaconda
Comandos mágicos de Jupyter Notebooks
Control de versiones en Notebooks
JupyterLab
Configuración de Notebooks en Visual Studio Code
Navegación de Notebooks en Visual Studio Code
Quiz: Uso de Jupyter Notebook y JupyterLab
Proyectos con Cookiecutter
conda-forge
Proyectos de Data Science y Machine Learning con Cookiecutter
Crear plantillas de proyecto personalizadas
Implementar hooks
Quiz: Proyectos con Cookiecutter
Estructura de entorno en proyectos
Múltiples entornos en un proyecto de Data Science
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Transformar la manera en que gestionas proyectos de Machine Learning es posible con el uso de plantillas personalizadas. Cookie Cutter es una herramienta potente que te ayuda a establecer una estructura coherente y eficiente en tus proyectos. Este proceso no solo agiliza la creación, sino que también mejora la colaboración en equipo, facilitando la estandarización y enfoque organizativo, incluso en equipos grandes o dispersos.
Organizar adecuadamente los directorios y archivos es clave en un proyecto de Machine Learning. El gráfico que revisamos mostró cómo deberías estructurar tus carpetas y archivos para maximizar eficiencia:
Esta estructura no sólo permite acceder rápidamente a cada parte del proyecto, sino también sustenta una metodología clara y repetible para equipos de data science.
Una vez que tengas clara la estructura, el siguiente paso es crear cada uno de los archivos mediante Cookie Cutter en Visual Studio Code:
Configurar archivo cookiecutter.json
: Este archivo contiene todas las variables que recibirás del usuario, esenciales para personalizar cada proyecto. Ejemplos de variables incluyen el nombre del proyecto, autor y versión de Python.
Configurar cada archivo necesario: Utiliza la sintaxis de Jinja para implementar plantillas donde puedas personalizar datos:
README.md
: Utilizar Jinja para establecer variables que se llenarán automáticamente.requirements.txt
y environment.yml
: Detallan el entorno virtual y dependencias requeridas.Implementar las licencias con alternativas disponibles:
Utiliza la sentencia if
de Jinja para definir qué información mostrar según la opción de licencia elegida (MIT, GPL, Apache).
{% if cookiecutter.license == 'MIT' %}
MIT License
Copiryght (c) {{ cookiecutter.author_name }}
{% elif cookiecutter.license == 'GPL' %}
GPL License
Copiryght (c) {{ cookiecutter.author_name }}
{% elif cookiecutter.license == 'Apache' %}
Apache License
Copiryght (c) {{ cookiecutter.author_name }}
{% endif %}
Antes de utilizar la plantilla personalizada, es fundamental verificar que cada archivo contenga correctamente las variables y sintaxis. Un error común podría ser no cerrar correctamente las sentencias Jinja, lo que podría interrumpir tu flujo de trabajo.
environment.yml
y requirements.txt
para asegurar que las bibliotecas y sus versiones se gestionan correctamente.Para llevar tu plantilla al siguiente nivel:
Ejecuta Cookie Cutter en tu terminal. Esto permitirá crear nuevos proyectos según la estructura especificada:
cookiecutter mymltemplate
Completa la información solicitada:
Verifica en VS Code: Una vez completado, revisa la estructura del proyecto generado para asegurar que todos los archivos y carpetas son correctos.
Esta metodología asegura que notificaciones futuras sean gestionadas de manera eficiente, manteniendo un estándar alto en la calidad de tus entregables.
¡Atrévete a personalizar y explorar nuevas formas de optimizar tus proyectos! Con la flexibilidad que ofrece Cookie Cutter, puedes adaptar cada plantilla a las necesidades específicas de tu equipo, mejorando así la productividad y asegurando consistencia en cada relato de trabajo.
¿Listo para tomar el siguiente desafío? ¡Intenta subir tu plantilla personalizada a GitHub y compártela con nuestros comentadores! Esto no sólo te ayudará a mantener un control de versiones, sino también a mostrar tus habilidades a una comunidad más amplia.
Aportes 2
Preguntas 2
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?