Trackio: Бесплатный и открытый трекер экспериментов, преобразующий рабочие процессы машинного обучения
Trackio — бесплатная и открытая библиотека Python, которая упрощает отслеживание экспериментов в машинном обучении благодаря локальному хранению, интеграции с Hugging Face и удобному онлайн-дашборду.
Что такое Trackio?
Trackio — это открытая библиотека на Python, созданная для упрощения отслеживания экспериментов в рабочих процессах машинного обучения. Разработанная Hugging Face и Gradio, она служит заменой популярным инструментам, таким как wandb, поддерживая основные API-вызовы вроде wandb.init, wandb.log и wandb.finish. Это позволяет пользователям переключаться или запускать существующие скрипты с минимальными или без изменений — достаточно импортировать Trackio как wandb.
Основные возможности
- Локальное хранение по умолчанию: Эксперименты запускаются и сохраняются локально, что обеспечивает конфиденциальность и быстрый доступ. Обмен данными — опционален.
- Бесплатно и с открытым исходным кодом: Нет лицензионных сборов и ограничений по функциям. Все возможности, включая совместную работу и онлайн-дашборды, доступны бесплатно.
- Легковесный и расширяемый: Код занимает менее 1000 строк Python, что облегчает аудит, модификацию и расширение.
- Интеграция с экосистемой Hugging Face: Поддержка Transformers, Sentence Transformers и Accelerate «из коробки» для быстрой настройки отслеживания метрик.
- Переносимость данных: Данные экспериментов хранятся в доступных форматах, что позволяет легко экспортировать и интегрировать их в собственные аналитические системы или пайплайны.
Удобное отслеживание экспериментов: локально и совместно
Trackio предлагает гибкие варианты дашбордов. Исследователи могут следить за экспериментами локально через дашборд на базе Gradio с помощью команд:
trackio showИли в Python:
import trackio
trackio.show()Для совместного использования дашбордов онлайн можно синхронизировать логи с Hugging Face Spaces, мгновенно делясь ими или встраивая через URL. Пространства поддерживают приватные и публичные настройки без сложной аутентификации. Trackio автоматически сохраняет данные каждые 5 минут в Hugging Face Datasets в формате Parquet, чтобы избежать потери данных.
Простая интеграция с ML-процессами
Интеграция предельно проста, особенно для пользователей экосистемы Hugging Face. Например, с Accelerate достаточно указать Trackio в качестве логгера:
from accelerate import Accelerator
accelerator = Accelerator(log_with="trackio")
accelerator.init_trackers("my-experiment")
...
accelerator.log({"training_loss": loss}, step=step)Такой подход позволяет сразу начать отслеживать и делиться экспериментами без дополнительной настройки.
Прозрачность, устойчивость и свобода данных
Trackio поддерживает отслеживание продвинутых метрик, таких как энергопотребление GPU (через nvidia-smi), что способствует экологической ответственности и воспроизводимости. В отличие от закрытых платформ, все данные хранятся в открытых форматах, а дашборды создаются с использованием открытых инструментов, таких как Gradio и Hugging Face Datasets, что облегчает анализ и совместное использование.
Как начать
Установите Trackio через pip:
pip install trackio
# или
uv pip install trackioЗатем в своем коде замените импорт на Trackio:
import trackio as wandbTrackio дает возможность исследователям и командам использовать бесплатный, прозрачный и локальный трекер экспериментов, полностью интегрированный с экосистемой Hugging Face и созданный для современных исследований в области машинного обучения.
Для дополнительных ресурсов посетите GitHub страницу и следите за обновлениями в Twitter и сообществах.
Switch Language
Read this article in English