Skip to content
Trackio: la biblioteca ligera de seguimiento de experimentos de Hugging Face
Source: huggingface.co

Trackio: la biblioteca ligera de seguimiento de experimentos de Hugging Face

Sources: https://huggingface.co/blog/trackio, Hugging Face Blog

TL;DR

  • Trackio es una biblioteca de seguimiento de experimentos en Python de código abierto y gratuita, con un panel Gradio local.
  • Puede sincronizar el tablero con Hugging Face Spaces para compartir mediante una URL, con opciones privadas o públicas.
  • Está diseñada como un reemplazo rápido de wandb, con compatibilidad de API para wandb.init, wandb.log y wandb.finish.
  • Ofrece métricas de uso de energía (a través de nvidia-smi) para apoyar la transparencia y las comparaciones.
  • Los datos registrados en Spaces se almacenan en una base de datos SQLite efímera, que Trackio convierte a Parquet y respalda en un Hugging Face Dataset cada 5 minutos.

Contexto y antecedentes

Trackio es una biblioteca de Python de código abierto que te permite rastrear métricas y visualizarlas mediante un panel Gradio local. También puedes sincronizar este panel con Hugging Face Spaces, lo que te permite compartirlo fácilmente usando una URL. Como Spaces puede ser privado o público, puedes compartir el panel públicamente o solo entre los miembros de tu organización en Hugging Face, todo de forma gratuita. Trackio está diseñado para ser un reemplazo directo de bibliotecas de seguimiento de experimentos como wandb; la API es compatible con wandb.init, wandb.log y wandb.finish, así que puedes importar Trackio como wandb en tu código. El equipo científico de Hugging Face ya está usando Trackio en proyectos de investigación, destacando ventajas como facilidad de compartir, estandarización y transparencia, accesibilidad a los datos y flexibilidad para la experimentación rápida. Una capacidad notable es la recopilación directa de métricas de uso de energía de la GPU mediante nvidia-smi, lo que facilita contextualizar y comparar el consumo de energía para las fichas de modelos. El objetivo es proporcionar una solución ligera y de código abierto que encaje sin problemas en los flujos de trabajo de investigación, manteniendo compatibilidad con transformers y accelerate.

¿Qué hay de nuevo?

Trackio ofrece un flujo de trabajo de seguimiento de experimentos ligero y local con varias capacidades centrales:

  • Un tablero Gradio local para visualizar métricas y hiperparámetros de manera interactiva.
  • Sincronización opcional con Hugging Face Spaces, que permite compartir mediante URL e insertar gráficos en blogs o documentación mediante iframes.
  • API de reemplazo directo para wandb, compatible con wandb.init, wandb.log y wandb.finish.
  • Almacenamiento SQLite efímero en Spaces, con conversión automática a Parquet y copias de seguridad en un Hugging Face Dataset cada 5 minutos.
  • Integración nativa con bibliotecas de Hugging Face como transformers y accelerate; sin configuración extra para Trainer o Accelerate.
  • Trackio es deliberadamente ligero y actualmente está en beta; algunas características, como la gestión de artefactos o visualizaciones complejas, no están disponibles todavía. El proyecto invita a la comunidad a proponer mejoras a través de issues en GitHub.
FunciónDescripción
Código abierto y gratuitoSí; Trackio es open-source y gratuito
Panel localPanel Gradio local
Sincronización SpacesPaneles sincronizables con Hugging Face Spaces para compartir
Compatibilidad de APIReemplazo directo de wandb; compatible con wandb.init, wandb.log y wandb.finish; importar como wandb
Almacenamiento de datosSQLite efímero en Spaces; convertido a Parquet y copias de seguridad a un Dataset cada 5 minutos
Métricas de energíaMide el uso de energía de la GPU vía nvidia-smi
IntegracionesFunciona con transformers y accelerate; soporta Trainer y Accelerate
EstadoBeta; gestión de artefactos y visualizaciones avanzadas no disponibles por el momento
CompartirCompartir mediante URL o incrustar con iframe; Spaces puede ser privado o público

Por qué importa (impacto para desarrolladores/empresas)

Para desarrolladores y equipos, Trackio facilita el compartir el progreso y los resultados del entrenamiento. La capacidad de incrustar gráficos directamente en publicaciones de blogs y documentación mediante iframes reduce las barreras para comunicar hallazgos sin que los colaboradores necesiten crear cuentas o configurar dashboards. La métrica de energía promueve la transparencia sobre el uso de recursos, relevante para informes de modelos y IA responsable. Al exportar datos registrados a Parquet en un Hugging Face Dataset y hacer copias de seguridad periódicas, Trackio también apoya la reproducibilidad y el análisis posterior más allá del tablero en vivo. La integración con el ecosistema de Hugging Face —incluido transformers y accelerate— significa que los desarrolladores pueden registrar métricas con configuración mínima y adoptar un flujo de trabajo liviano para experimentación rápida y compartir entre equipos.

Detalles técnicos o Implementación

Trackio es una biblioteca Python de código abierto que permite rastrear cualquier métrica y visualizarla usando un tablero Gradio local. También puedes sincronizar este tablero con Hugging Face Spaces, lo que permite compartirlo fácilmente con otros usuarios mediante una URL. Dado que Spaces puede ser privado o público, esto facilita compartir un tablero públicamente o solo entre los miembros de la organización Hugging Face, sin coste alguno.

Instalación

  • Puedes instalar Trackio usando pip. El proyecto enfatiza una configuración simple sin depender de infraestructuras complejas.

Inicio y tableros

  • Después de registrar tus experiments, puedes lanzar el tablero para visualizar tus resultados. También puedes ejecutarlo desde Python y, si lo prefieres, especificar un nombre de proyecto para organizar los experiments.

Sincronización con Spaces

  • Para sincronizar el tablero local con Hugging Face Spaces, basta con pasar un space_id a init. Si albergas en Spaces, puedes compartir la URL o incrustarla mediante iframe; Spaces puede ser privado o público.

Almacenamiento y copias de seguridad en Spaces

  • Cuando sincronizas con Spaces, los datos se registran en una base de datos SQLite efímera. Esta base se reinicia si el Space se reinicia, por lo que Trackio convierte los datos SQLite a Parquet y los respalda en un Hugging Face Dataset cada 5 minutos, asegurando que puedas visualizar las métricas registradas en cualquier momento.
  • Consejo: puedes establecer el nombre del dataset pasando dataset_id a trackio.init().

Integraciones HF y uso

  • Trackio se integra de forma nativa con bibliotecas de Hugging Face como transformers y accelerate; para registrar métricas no se requiere configuración adicional. Con transformers.Trainer y con Accelerate, basta conectar Trackio y empezar a rastrear.

Estado y plan de trabajo

  • Trackio es deliberadamente ligero y está en versión beta. Algunas características encontradas en otras herramientas de seguimiento (gestión de artefactos, visualizaciones más avanzadas) aún no están disponibles. El proyecto invita a la comunidad a proponer mejoras a través de issues en GitHub.

Conclusiones clave

  • Trackio ofrece una solución de seguimiento ligera con integración a Spaces para compartir.
  • Proporciona un reemplazo directo de wandb con compatibilidad de API, facilitando la adopción.
  • Métricas de energía y exportación a Parquet en Hugging Face Datasets mejoran la transparencia y la reproducibilidad.
  • El marco es ligero, integrado en el ecosistema HF y adecuado para experimentación rápida, con características en desarrollo.

FAQ

  • ¿Qué es Trackio y para quién es?

    Trackio es una biblioteca de código abierto para rastrear métricas y visualizarlas mediante un tablero Gradio local, con sincronización opcional a Hugging Face Spaces.

  • ¿Cómo se compara Trackio con wandb?

    Trackio funciona como un reemplazo directo de wandb, con API compatible (init, log, finish) y una instalación ligera.

  • ¿Qué sucede con los datos cuando uso Spaces?

    Los datos quedan en una base de datos SQLite efímera en Spaces, que se convierte a Parquet y se respalda en un Hugging Face Dataset cada 5 minutos.

  • ¿Puedo compartir dashboards públicamente?

    Sí. Los dashboards pueden compartirse mediante URL o incrustarse con iframe; Spaces puede ser privado o público.

  • ¿Cuál es el estado actual y qué falta por hacer?

    Trackio está en beta y es deliberadamente ligero; la gestión de artefactos y visualizaciones avanzadas no están disponibles todavía. Se invita a la comunidad a proponer mejoras a través de los issues de GitHub.

Referencias

More news