Experiment Tracker
A simple experiment tracker that supports wandb, trackio and local jsonl storage. Features include:
Features
- Multi-Backend Support: Compatible with
wandb,trackio, and localjsonlstorage. - Alert System: Send alerts via Lark, with email and other platforms to be added.
- Resume Functionality: Allows resuming experiments using project and name as unique identifiers.
- Simple API: Provides a straightforward API similar to
wandb, making it easy to integrate into existing workflows.
Usage
Add dependency to your project:
uv add expr_tracker
Simple usage example:
import expr_tracker as et
et.init(project="my_project", name="my_experiment", backends=["wandb", "jsonl"])
et.log({"accuracy": 0.95, "loss": 0.05})
et.alert("Experiment completed!", text="Your experiment has finished successfully.", subtitle="Experiment Status")
et.finish()
JSONL buffering
The jsonl backend adapts its buffering to how often you call log(), so that
high-frequency logging doesn't hammer the disk (helpful on network mounts such as
BlobFuse) while low-frequency logging still lands on disk immediately:
- If the gap since the previous
log()call is>= buffer_interval(default1.0s), the call is considered low-frequency and is written straight through. - Otherwise records are batched in memory and flushed once
buffer_size(default50) records accumulate. - A background timer flushes records that have been buffered for more than
max_buffer_seconds(default5.0s), so a burst that suddenly stops is never stranded in memory.finish()and theatexithook flush any remainder.
Set buffer_interval=None to disable the frequency check, or max_buffer_seconds=None
to disable the background timer. Tune them via backend_kwargs:
et.init(
project="my_project",
name="my_experiment",
backends=["jsonl"],
backend_kwargs={
"jsonl": {"buffer_size": 200, "buffer_interval": 0.5, "max_buffer_seconds": 10},
},
)
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 expr_tracker-0.1.7.tar.gz.
File metadata
- Download URL: expr_tracker-0.1.7.tar.gz
- Upload date:
- Size: 77.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
94464e52d04b04500b69cf8e6724de1fbfc6f73e2a89694ea2330917292a3619
|
|
| MD5 |
dbb52c0ce973d0a06d5dc8aa54ac207e
|
|
| BLAKE2b-256 |
c4cb2518161d4c7e5e8b308c972eae49a0b56e7809831b2d7b6ceaa07d63d298
|
Provenance
The following attestation bundles were made for expr_tracker-0.1.7.tar.gz:
Publisher:
release.yaml on HSPK/expr_tracker
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
expr_tracker-0.1.7.tar.gz -
Subject digest:
94464e52d04b04500b69cf8e6724de1fbfc6f73e2a89694ea2330917292a3619 - Sigstore transparency entry: 2328033528
- Sigstore integration time:
-
Permalink:
HSPK/expr_tracker@f34968d066cf59a9bf3ce5f88a0a2a9fce65f008 -
Branch / Tag:
refs/tags/v0.1.7 - Owner: https://github.com/HSPK
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@f34968d066cf59a9bf3ce5f88a0a2a9fce65f008 -
Trigger Event:
push
-
Statement type:
File details
Details for the file expr_tracker-0.1.7-py3-none-any.whl.
File metadata
- Download URL: expr_tracker-0.1.7-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1e5b991f2b9c6f49d7aafa5aecd743acaa1b5defab7d09b74a7d0ab9a556561
|
|
| MD5 |
81419a55e5576b36b3f8db066869384e
|
|
| BLAKE2b-256 |
53a3da1a83188f89f88268c79ee52bba3a5eb26095f88e25d26c0c9fd4d0347c
|
Provenance
The following attestation bundles were made for expr_tracker-0.1.7-py3-none-any.whl:
Publisher:
release.yaml on HSPK/expr_tracker
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
expr_tracker-0.1.7-py3-none-any.whl -
Subject digest:
a1e5b991f2b9c6f49d7aafa5aecd743acaa1b5defab7d09b74a7d0ab9a556561 - Sigstore transparency entry: 2328033560
- Sigstore integration time:
-
Permalink:
HSPK/expr_tracker@f34968d066cf59a9bf3ce5f88a0a2a9fce65f008 -
Branch / Tag:
refs/tags/v0.1.7 - Owner: https://github.com/HSPK
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@f34968d066cf59a9bf3ce5f88a0a2a9fce65f008 -
Trigger Event:
push
-
Statement type: