Skip to content
Trackio: a biblioteca leve de rastreamento de experimentos da Hugging Face
Source: huggingface.co

Trackio: a biblioteca leve de rastreamento de experimentos da Hugging Face

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

TL;DR

  • Trackio é uma biblioteca de rastreamento de experimentos em Python, open-source e gratuita, com um painel Gradio local.
  • Pode sincronizar o painel com Hugging Face Spaces para compartilhamento via URL, com opções privadas ou públicas.
  • Foi projetado como uma substituição simples para wandb, com compatibilidade de API para wandb.init, wandb.log e wandb.finish.
  • Oferece métricas de uso de energia (via nvidia-smi) para apoiar a transparência e comparações.
  • Os dados registrados no Spaces vivem em um banco de dados SQLite efêmero, que o Trackio converte para Parquet e faz backup para um Hugging Face Dataset a cada 5 minutos.

Contexto e antecedente

Trackio é uma biblioteca Python de código aberto que permite rastrear métricas e visualizar em um painel Gradio local. Você também pode sincronizar esse painel com o Hugging Face Spaces, o que permite compartilhar o painel com outros usuários apenas fornecendo uma URL. Como o Spaces pode ser privado ou público, você pode compartilhar o painel publicamente ou apenas entre os membros da sua organização no Hugging Face — tudo gratuitamente. O Trackio foi desenvolvido para ser uma substituição rápida de bibliotecas de rastreamento de experimentos como o wandb; a API é compatível com wandb.init, wandb.log e wandb.finish, permitindo simplesmente importar o Trackio como wandb no seu código. A equipe científica da Hugging Face já utiliza o Trackio em projetos de pesquisa, destacando vantagens como compartilhamento fácil, padronização e transparência, acessibilidade aos dados e flexibilidade para experimentação rápida. Uma capacidade importante é a coleta direta de métricas de consumo de energia da GPU via nvidia-smi, o que ajuda a contextualizar o consumo de energia em cartas de modelos. O objetivo mais amplo é oferecer uma ferramenta leve, de código aberto, que se encaixe nos fluxos de pesquisa sem exigir infraestrutura cara ou complexa. Para equipes e pesquisadores que buscam reprodutibilidade e comunicação verificável, o Trackio oferece um caminho viável dentro do ecossistema Hugging Face, com integração nativa a bibliotecas HF como transformers e accelerate.

O que há de novo

O Trackio apresenta um fluxo de rastreamento de experimentos leve e local com várias capacidades centrais:

  • Painel Gradio local para visualização interativa de métricas e hiperparâmetros.
  • Sincronização opcional com Hugging Face Spaces, permitindo compartilhar via URL e incorporar em blogs ou documentações com iframes.
  • API de substituição direta para wandb, com compatibilidade com wandb.init, wandb.log e wandb.finish.
  • Armazenamento SQLite efêmero no Spaces, com conversão automática para Parquet e backups diários para um Hugging Face Dataset a cada 5 minutos.
  • Integração nativa com bibliotecas Hugging Face como transformers e accelerate; sem configuração extra para Trainer ou Accelerate.
  • Reconhecimento de que Trackio é leve e atualmente está em beta, com algumas características ausentes (gestão de artefatos e visualizações mais complexas).
RecursoDescrição
Open-source e gratuitoSim; Trackio é open-source e gratuito
Painel localPainel Gradio no computador local
Sincronização com SpacesPainéis podem ser sincronizados com Hugging Face Spaces para compartilhar
Compatibilidade de APISubstituição direta para wandb; compatível com wandb.init, wandb.log e wandb.finish; importe como wandb
Armazenamento de dadosSQLite efêmero no Spaces; convertido para Parquet e back-ups para um Dataset a cada 5 minutos
Métricas de energiaMonitora uso de energia da GPU via nvidia-smi
IntegraçõesFunciona com transformers e accelerate; suporta Trainer e Accelerate
StatusBeta; gerenciamento de artefatos e visualizações avançadas ainda não disponíveis
CompartilhamentoCompartilhe via URL ou incorpore com iframe; Spaces pode ser privado ou público

Por que isso importa (impacto para desenvolvedores/empresas)

Para desenvolvedores e equipes, Trackio promete facilitar o compartilhamento de progresso e resultados de treinamentos. A capacidade de incorporar gráficos diretamente em posts de blog e documentação usando iframes reduz a barreira para comunicar descobertas sem exigir que colaboradores criem contas ou dashboards. A métrica de uso de energia oferece transparência sobre o consumo de recursos, o que ganha importância em relatórios de modelos e IA responsável. Ao exportar dados registrados para Parquet em um Hugging Face Dataset e fazer backups periódicos, Trackio também apoia reprodutibilidade e análises subsequentes além do painel ao vivo. A integração com o ecossistema Hugging Face — incluindo compatibilidade nativa com transformers e accelerate — significa que desenvolvedores podem fazer log de métricas com configuração mínima, mantendo um fluxo de trabalho leve para experimentação rápida e compartilhamento entre equipes.

Detalhes técnicos ou Implementação

Trackio é uma biblioteca Python de código aberto que permite rastrear quaisquer métricas e visualizá-las usando um painel Gradio local. Você também pode sincronizar esse painel com Hugging Face Spaces, o que permite compartilhar o painel com outros usuários apenas fornecendo uma URL. Como o Spaces pode ser privado ou público, isso facilita compartilhar painéis publicamente ou apenas entre membros da organização Hugging Face — sem custos. Trackio foi desenhado para ser uma substituição rápida de bibliotecas de rastreamento de experimentos, com API compatível com wandb.init, wandb.log e wandb.finish, permitindo simplesmente importar Trackio como wandb no seu código. O foco é ser leve, fácil de usar e integrado ao ecossistema HF.

Instalação

  • Você pode instalar o Trackio usando o pip. O projeto privilegia uma configuração simples, sem exigir infraestrutura complexa.

Começando e painéis

  • Após registrar seus experiments, você pode lançar o painel para visualizar seus resultados. Também é possível executá-lo a partir do Python e, se desejar, especificar um nome de projeto para organizar os experiments.

Sincronização com Spaces

  • Para sincronizar o painel local com Hugging Face Spaces, basta passar um space_id ao iniciar (init). Se você hospedar no Spaces, pode compartilhar a URL ou incorporar em qualquer lugar usando iframe; o Spaces pode ser privado ou público.

Armazenamento de dados e backups no Spaces

  • Quando sincronizado com Spaces, os dados são gravados em um banco de dados SQLite efêmero no Spaces. Esse banco é redefinido se o Space for reiniciado, então o Trackio converte o SQLite para Parquet e faz backup para um Hugging Face Dataset a cada 5 minutos, garantindo que você possa visualizar métricas registradas a qualquer momento.
  • Dica: você pode definir o nome do dataset passando um dataset_id para trackio.init().

Integrações com bibliotecas HF

  • Trackio se integra nativamente com bibliotecas Hugging Face como transformers e accelerate; para logar métricas, não é necessária configuração extra. Com transformers.Trainer e com Accelerate, é possível começar a rastrear logo de cara.

Status e roadmap

  • Trackio é propositalmente leve e ainda está em beta. Algumas funções comuns em outras ferramentas de tracking, como gerenciamento de artefatos e visualizações mais avançadas, não estão disponíveis no momento. O projeto convida a comunidade a enviar feedback e solicitações de recursos via página de issues no GitHub.

Principais aprendizados

  • Trackio oferece uma solução de rastreamento leve, com integração a Spaces para compartilhamento.
  • Fornece uma substituição direta para wandb com compatibilidade de API, facilitando a adoção.
  • Métricas de energia e exportação para Parquet em Hugging Face Datasets melhoram transparência e reprodutibilidade.
  • O foco é leve, integrado ao ecossistema HF e adequado para experimentação rápida, com recursos em desenvolvimento.
  • Painéis podem ser compartilhados via URL ou incorporados com iframe, sem necessidade de contas adicionais.

FAQ

  • O que é o Trackio e para quem ele é?

    Trackio é uma biblioteca de código aberto para rastrear métricas e visualizar em um painel Gradio local, com sincronização opcional para Hugging Face Spaces. Destina-se a pesquisadores e desenvolvedores que desejam uma solução acessível, compartilhável e leve para rastrear experimentos.

  • Como Trackio se relaciona ao wandb?

    Trackio funciona como uma substituição simples para wandb, com API compatível com wandb.init, wandb.log e wandb.finish; você pode importar como wandb e migrar gradualmente.

  • O que acontece com os dados quando uso Spaces?

    Os dados logados no Spaces ficam em um banco de dados SQLite efêmero, que é convertido para Parquet e backupado para um Hugging Face Dataset a cada 5 minutos.

  • Posso compartilhar dashboards publicamente?

    Sim. Dashboards podem ser compartilhados por URL e incorporados com iframe; o Spaces pode ser privado ou público.

  • Qual é o estado atual e o que falta?

    Trackio está em beta e é propositalmente leve; gerenciamento de artefatos e visualizações mais avançadas ainda não estão disponíveis, e a comunidade é convidada a sugerir recursos via issues.

Referências

More news