🚨 Active Supply Chain Attack:node-ipc Package Compromised.Learn More
Socket
Book a DemoSign in
Socket

tracelet

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tracelet

Tracelet is an automagic pytorch metric exporter

pipPyPI
Version
0.0.8
Maintainers
1

Tracelet

Tracelet Logo

Release Build License

Tracelet is a Python library for tracking machine learning experiments. It works with popular backends like MLflow, Weights & Biases, ClearML, and AIM, and can automatically detect hyperparameters from your code.

What it does

  • Tracks metrics, parameters, and artifacts across ML backends
  • Automatically captures hyperparameters without manual logging
  • Integrates with PyTorch, PyTorch Lightning, and TensorBoard
  • Handles models, checkpoints, images, and other ML artifacts
  • Monitors system resources during training

Installation

pip install tracelet

Install backend support as needed:

pip install tracelet[mlflow]     # For MLflow
pip install tracelet[wandb]      # For Weights & Biases
pip install tracelet[clearml]    # For ClearML
pip install tracelet[aim]        # For AIM
pip install tracelet[all]        # Everything

Usage

Basic Example

from tracelet import Experiment

# Start tracking
exp = Experiment(name="my_experiment", backend=["mlflow"])
exp.start()

# Train your model
for epoch in range(10):
    loss = train_model()
    exp.log_metric("loss", loss, epoch)

exp.stop()

Automatic Detection

from tracelet import Experiment

# Enable automagic to detect hyperparameters automatically
exp = Experiment(name="auto_experiment", backend=["wandb"], automagic=True)
exp.start()

# Define hyperparameters normally - they're captured automatically
learning_rate = 0.001
batch_size = 32

# Your training code here
for epoch in range(epochs):
    loss = train_model()
    # Metrics logged automatically if using TensorBoard

exp.stop()

PyTorch Lightning

from tracelet import Experiment
import pytorch_lightning as pl

# Add to existing Lightning code
exp = Experiment(name="lightning_model", backend=["clearml"], automagic=True)
exp.start()

# Your existing code - all self.log() calls tracked automatically
trainer = pl.Trainer(max_epochs=10)
trainer.fit(model, datamodule)

exp.stop()

Multiple Backends

# Log to multiple backends simultaneously
exp = Experiment(
    name="comparison",
    backend=["mlflow", "wandb", "clearml"]
)

Configuration

Set defaults with environment variables:

export TRACELET_PROJECT="my_project"
export TRACELET_BACKEND="mlflow"
export TRACELET_ENABLE_AUTOMAGIC="true"

Or programmatically:

from tracelet.settings import TraceletSettings

settings = TraceletSettings(
    project="my_project",
    backend=["mlflow"],
    enable_automagic=True,
    track_system=True
)

Examples

The examples/ directory contains runnable examples:

  • 01_manual_tracking/ - Basic usage examples
  • 02_automagic_tracking/ - Automatic hyperparameter detection
  • 03_backend_integrations/ - Backend-specific features
  • 05_lightning_automagic/ - PyTorch Lightning integration
cd examples
python 01_manual_tracking/01_basic_manual.py

Documentation

Development

git clone https://github.com/prassanna-ravishankar/tracelet.git
cd tracelet
uv sync
uv run pytest

License

Apache License 2.0 - see LICENSE file.

Support

Keywords

python

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts