Manage your experiments exactly as you like
Project description
ExpMan: Experiment Manager
expman is a lightweight, functional research experiment management library.
Features
-
Functional Core: Pure functions for reliable data management
-
Universal Tracking: Metrics (Parquet), Config (YAML), Models (PyTorch), Plots (PD/Matplotlib)
-
Modern Web Dashboard:
- Run Comparison: Overlay metrics from multiple runs on interactive Plotly charts.
- Artifact Browser: Browse and preview all experiment files including auto-generated model architecture graphs.
Installation
- Basic Installation (Lightweight, no Torch/Graphviz):
pip install ra-expman
- Full Installation (With PyTorch support for model saving & architecture graphs) (you can also choose to install torch, torchview and graphviz separately using the basic installation):
pip install "ra-expman[torch]"
Development
To develop expman (with frontend watch and backend reload):
expman dev
Quick Start
-
Run an Experiment:
from expman import Experiment import matplotlib.pyplot as plt import torch import torchvision # Initialize exp = Experiment("my_experiment") exp.log_params({"lr": 0.001, "model": "resnet18"}) # Training Loop for i in range(100): exp.log_metrics({"loss": 0.5 - i*0.001, "accuracy": i*0.01}, step=i) # Save Artifacts & Auto-Generate Model Graph # Saving is non-blocking (runs in background thread) model = torchvision.models.resnet18() exp.save_model(model, "final.pt", input_size=(1, 3, 224, 224))
For a complete example, check examples/test_run.py.
-
Launch Dashboard:
expman serve ./experiments
-
Interactive Analysis: Load a run directly into a Python REPL with metrics and config pre-loaded:
expman load experiments/my_experiment/runs/run_001
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ra_expman-0.2.7.tar.gz.
File metadata
- Download URL: ra_expman-0.2.7.tar.gz
- Upload date:
- Size: 1.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90f30844c408f208baae0b23797a37179fa9ad3fd1b75462752d20bbafc68d9d
|
|
| MD5 |
475d724893f1dd62f6d9f3558b48f0ea
|
|
| BLAKE2b-256 |
8b46bd41f0d9453b316f61602e38f9632feb25406b5cc4bc625121b88f38e441
|
File details
Details for the file ra_expman-0.2.7-py3-none-any.whl.
File metadata
- Download URL: ra_expman-0.2.7-py3-none-any.whl
- Upload date:
- Size: 1.6 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8209911e68090597769541ffab71c738410453b12f3ad550653d1ab79eb588ad
|
|
| MD5 |
2d261e788235cf24a01f0639cae1e090
|
|
| BLAKE2b-256 |
59f39e058e925e3de0706d5452d594fb579933c6b2b5aee6e2ade4e7ba87dfa5
|