Trackio: biblioteca ligera y de código abierto para seguimiento de experimentos de Hugging Face
Sources: https://huggingface.co/blog/trackio, Hugging Face Blog
Visión general
Trackio es una biblioteca de Python de código abierto que permite rastrear cualquier métrica y visualizarla usando un panel Gradio local. También puedes sincronizar este tablero con Hugging Face Spaces, lo que permite compartir el panel con otros usuarios simplemente compartiendo una URL. Dado que Spaces puede ser privado o público, puedes compartir públicamente o solo dentro de los miembros de tu organización Hugging Face, todo de forma gratuita. Trackio se presenta como un reemplazo de bajo peso para las herramientas de seguimiento de experimentos como wandb, con una API compatible con wandb.init, wandb.log y wandb.finish, para que puedas importar trackio como wandb en tu código. En Hugging Face, Trackio se posiciona como una solución abierta, ligera y centrada en la rapidez de experimentación, el compartir y la transparencia. El objetivo es ayudar a los investigadores a registrar métricas, parámetros e hiperparámetros durante el entrenamiento y visualizarlos después para entender mejor el progreso. El proyecto enfatiza la accesibilidad, la portabilidad de datos y la integración sencilla con herramientas de HF comunes.
Características clave
- Panel Gradio local para visualizar métricas e hiperparámetros.
- Sincronización del panel local con Hugging Face Spaces para compartir fácilmente mediante una URL.
- Código abierto y gratuito.
- Reemplazo ligero para wandb; API compatible con wandb.init, wandb.log y wandb.finish (importar como wandb).
- Compartición fácil de gráficos en blogs y documentación mediante iframes; compartir sin necesidad de cuentas.
- Gestión transparente de datos: registrar y compartir métricas como el uso de energía de la GPU vía nvidia-smi para seguir impactos ambientales.
- Accesibilidad de datos: extraer y analizar los datos grabados sin bloqueo propietario.
- Diseño liviano para experimentar características nuevas de manera rápida.
- Base de datos SQLite efímera en Spaces; Trackio la convierte a Parquet y la respalda en un Hugging Face Dataset cada 5 minutos.
- Nombrado opcional del dataset: pasa dataset_id a trackio.init() para nombrar el conjunto de datos.
- Integración nativa con bibliotecas de Hugging Face como transformers y accelerate; registrar métricas con configuración mínima. Con transformers.Trainer o accelerate, no hace falta configuración adicional.
- Estado: beta y ligero; algunas funciones presentes en otras herramientas (gestión de artefactos, visualizaciones avanzadas) aún no están disponibles.
- Llamado a la comunidad: se aceptan issues para características y comentarios.
Casos de uso comunes
- Registrar métricas, hiperparámetros y estados intermedios durante el entrenamiento.
- Visualizar el progreso localmente y compartirlo a través de Spaces mediante una URL o integrarlo en documentos.
- Comparar varias ejecuciones lado a lado y hacer que las métricas sean accesibles mediante enlaces.
- Cuantificar el consumo de energía, por ejemplo, energía de la GPU, para discutir el impacto ambiental de los modelos.
- Experimentar con nuevas características de registro con poca sobrecarga.
- Integrarse sin problemas con flujos de trabajo de Hugging Face (Transformers, Accelerate) con configuración mínima.
Instalación y configuración
Instala Trackio con pip:
pip install trackio
Usando Trackio como reemplazo de wandb en Python:
import trackio as wandb
wandb.init(project="mi-proyecto")
wandb.log({"epoch": 1, "loss": 0.25})
wandb.finish()
Para sincronizar tu panel local con Hugging Face Spaces, pasa space_id en init:
import trackio as wandb
wandb.init(space_id="SPACE_ID", project="mi-proyecto")
wandb.log({"accuracy": 0.92})
Iniciar el panel puede hacerse desde la terminal o desde Python. El artículo señala comandos directos para iniciar el panel local y vincularlo a Spaces, permitiendo compartirlo públicamente o profesionalmente dependiendo de la configuración de Spaces. Con Spaces, los datos registrados se guardan en una base de datos SQLite efímera en Spaces, que Trackio convierte a Parquet y respalda en un Hugging Face Dataset cada 5 minutos.
Inicio rápido (ejemplo mínimo ejecutable)
Un ejemplo mínimo que registra algunas métricas durante una ejecución corta:
import trackio as wandb
wandb.init(project="inicio-rapido")
for epoch in range(3):
loss = 0.3 * (epoch + 1)
wandb.log({"epoch": epoch + 1, "loss": loss})
wandb.finish()
Si quieres publicar el tablero en Spaces:
import trackio as wandb
wandb.init(space_id="SPACE_ID", project="inicio-rapido")
wandb.log({"accuracy": 0.88})
Nota: el artículo enfatiza una experiencia de reemplazo para usuarios ya familiarizados con wandb, para que puedas escribir código de forma similar y obtener la visualización local y el compartir vía Spaces.
Pros y contras
Pros:
- Panel local y opción de compartir a través de Spaces.
- Gratuito, de código abierto y fácil de adoptar; sin barreras para compartir resultados.
- Diseño ligero apto para experimentar rápidamente y iterar características.
- Métricas de energía de la GPU (vía nvidia-smi) para apoyar informes de impacto ambiental.
- Integración nativa con herramientas de Hugging Face (Transformers, Accelerate) con mínima configuración.
- Portabilidad de datos: extracción para análisar datos grabados.
- Copias de seguridad en Spaces hacia conjuntos de datos Parquet para acceso a largo plazo. Contras:
- Actualmente en versión beta; la gestión de artefactos y algunas visualizaciones avanzadas no están disponibles.
- Algunas funciones dependen de la disponibilidad y configuración de Spaces ( Spaces públicos/privados).
- Por ser una herramienta relativamente nueva, el ecosistema en torno a Trackio (plugins, integraciones de terceros) aún está en desarrollo.
Alternativas (comparaciones rápidas)
| Herramienta | Notas |
|---|---|
| Trackio | Open-source, gratuito; tablero Gradio local; sincronización con Spaces; reemplazo ligero de wandb; beta; métricas de energía y portabilidad de datos; gestión de artefactos aún no disponible. |
| Otras herramientas | No detalladas en profundidad en este artículo; Trackio se posiciona como una alternativa ligera y transparente enfocada en visualización local y compartir mediante Spaces. |
Precio o Licencia
Trackio se describe como abierto y gratuito en el post del blog de Hugging Face, posicionándose como una opción sin costo para el seguimiento de experimentos. El artículo invita a la participación de la comunidad y a abrir issues para comentarios y solicitudes de características, acorde con proyectos de código abierto.
Referencias
More resources
Haz ZeroGPU Spaces más rápido con la compilación ahead-of-time (AoT) de PyTorch
Descubre cómo la compilación AoT de PyTorch acelera ZeroGPU Spaces exportando un modelo compilado y recargándolo al instante, con cuantización FP8, formas dinámicas e integración con Spaces GPU.
Generar imágenes con Claude y Hugging Face: herramientas, instalación y ejemplos
Aprende a conectar Claude a Hugging Face Spaces mediante MCP Server para generar imágenes con Krea y Qwen-Image, aprovechar créditos gratuitos y explorar el directorio de apps de IA.
Nemotron Nano 2 9B: Modelo de razonamiento abierto con 6x de rendimiento para Edge y Empresa
Nemotron Nano 2 9B abierto ofrece precisión líder y hasta 6x de rendimiento gracias a una arquitectura híbrida Transformer–Mamba y un presupuesto de pensamiento configurable.
De cero a GPU: Guía para construir y escalar kernels CUDA listos para producción
Guía práctica para desarrollar, compilar para múltiples arquitecturas y desplegar kernels CUDA con Hugging Face Kernel Builder. Aprende a crear un flujo robusto desde desarrollo local hasta distribución en Hub.
De cero al GPU: Guía para construir y escalar kernels CUDA listos para producción
Una guía práctica sobre kernel-builder de Hugging Face para desarrollar, compilar y desplegar kernels CUDA listos para producción, con builds reproducibles, soporte multi-arquitectura y distribución en Hub.
MCP para la Investigación: Conectar IA a Herramientas de Investigación
Explica el Model Context Protocol (MCP) para la descubrimiento de investigación y cómo la IA puede orquestar herramientas a través del lenguaje natural en arXiv, GitHub y Hugging Face.