Skip to main content

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

Metadata

Release files for tracelet 0.0.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tracelet 0.0.9
File Size Uploaded
tracelet-0.0.9.tar.gz 9.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for tracelet 0.0.9
File Interpreter ABI Platform
tracelet-0.0.9-py3-none-any.whl Python 3 none any Details

Total release size: 13.1 kB

Release files / tracelet-0.0.9.tar.gz

Download URL tracelet-0.0.9.tar.gz
Size 9.4 kB
Tags Source
SHA-256 checksum
How to use checksums
0191d5896eb2a65b77467ec41a9b35ebe32a25bbfd96c7d3834c5dcd9da0e7eb
BLAKE2b-256 checksum
How to use checksums
b4c5578f2ccf04730fe7e5aa8f6f4e061e51693ca935296df6d61a5579cd6362
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release files / tracelet-0.0.9-py3-none-any.whl

Download URL tracelet-0.0.9-py3-none-any.whl
Size 3.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8e0bcea3c3033df3dae7ab174a6675cf21f1d9213e6566ad728a2c50c563d2fc
BLAKE2b-256 checksum
How to use checksums
6fb7efe5be09f6d94f23124f6f0cabe2ed3a8a8dab759aa4133e67767882d5d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.0.9 This release

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page