Repolode
m3dev

m3dev/gokart

Framework de Python basado en luigi para crear pipelines de machine learning con caché automático, reproducibilidad y gestión de dependencias.

Estrellas
342
Forks
63
Issues abiertos
33
Último commit
hace 5 días

¿Qué es?

Gokart es un framework de Python para crear pipelines de machine learning como cadenas de tareas. Está construido sobre luigi y se centra en la reproducibilidad: guarda juntos la salida de cada tarea, sus parámetros, las versiones de los módulos importados, la semilla aleatoria y los logs, todo asociado a un hash. El pipeline se vuelve a ejecutar automáticamente cuando cambian los parámetros de una tarea.

Las salidas de las tareas se pasan entre pasos como archivos intermedios, en lugar de mantenerse en memoria. Se pueden almacenar en un disco local, S3 o GCS, y la lectura y escritura de pandas DataFrame incluye la comprobación de columnas. Las semillas de numpy y random se fijan automáticamente, y las tareas se pueden bloquear con Redis al ejecutarlas en paralelo.

El proyecto está pensado para trabajos por lotes de ML y para el desarrollo en equipo. No es un sistema de seguimiento de experimentos ni ofrece visualización de tareas; los pipelines se escriben en Python, no en archivos de configuración.

Funciones clave

  • 01Guarda la salida de cada tarea, sus parámetros, las versiones de los módulos, la semilla y los logs asociados a un hash.
  • 02Vuelve a ejecutar el pipeline automáticamente cuando cambian los parámetros de una tarea.
  • 03Almacena resultados intermedios en un disco local, S3 o GCS.
  • 04Comprueba los tipos y las columnas de pandas DataFrame durante la lectura y escritura.
  • 05Fija automáticamente las semillas de numpy y random.
  • 06Bloquea las tareas paralelas mediante Redis.

Casos de uso

  • Crear pipelines reproducibles de entrenamiento y preprocesamiento de machine learning.
  • Compartir flujos de trabajo de ML por lotes entre un equipo, con resultados intermedios coherentes.
  • Ejecutar trabajos de datos de varios pasos que almacenan grandes resultados intermedios en S3 o GCS.

Inicio rápido

  1. 1

    Instala gokart con pip

    pip install gokart
  2. 2

    Instala la compatibilidad con S3 de forma opcional

    pip install gokart[s3]
  3. 3

    Ejecuta el ejemplo mínimo como un script de Python

Antes de usarlo

  • Se necesita Redis para bloquear tareas cuando se ejecutan en paralelo.
  • Según el README, gokart no es una herramienta de gestión de experimentos y no admite la visualización de tareas.

Temas

Preguntas frecuentes

¿Qué es gokart?
Framework de Python basado en luigi para crear pipelines de machine learning con caché automático, reproducibilidad y gestión de dependencias. Gokart es un framework de Python para crear pipelines de machine learning como cadenas de tareas. Está construido sobre luigi y se centra en la reproducibilidad: guarda juntos la salida de cada tarea, sus parámetros, las versiones de los módulos importados, la semilla aleatoria y los logs, todo asociado a un hash. El pipeline se vuelve a ejecutar automáticamente cuando cambian los parámetros de una tarea.
¿gokart es gratuito? ¿Qué licencia tiene?
gokart es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿gokart sigue mantenido?
Mantenimiento activo. El último commit de gokart fue el 1 nov 2026.
¿Para qué puedo usar gokart?
Crear pipelines reproducibles de entrenamiento y preprocesamiento de machine learning. Compartir flujos de trabajo de ML por lotes entre un equipo, con resultados intermedios coherentes. Ejecutar trabajos de datos de varios pasos que almacenan grandes resultados intermedios en S3 o GCS.
¿Cómo se instala gokart?
Instala gokart con pip: pip install gokart Instala la compatibilidad con S3 de forma opcional: pip install gokart[s3] Ejecuta el ejemplo mínimo como un script de Python
¿Dónde consigo gokart?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/m3dev/gokart

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados