Prometheus metrics collectors for Keras
Project description
Gangplank
Export Keras Metrics to Prometheus
Prometheus is a monitoring system that pulls metrics from applications and infrastructure. Gangplank is a Python package for exposing Keras model metrics to Prometheus. Metrics can be exported from training, evaluation and inference tasks. Training and testing metrics are exported using the Prometheus Pushgateway. Inference metrics are exposed by instrumenting a proxy of a Keras model.
What Metrics are exported?
Training Metrics
During training, the following metrics are exported:
- The number of completed training epochs
- The time spent training
- The number of model weights (both trainable and non-trainable)
- The model's loss
- All metrics configured for the model (e.g. accuracy for a classification model or mean absolute error for a regression model)
- (Optionally) A histogram of the model's trainable weights at the end of the training run
Testing (Evaluation) Metrics
For testing (i.e. evaluation), the following metrics are exported:
- The time spent testing
- The model's loss
- All metrics configured for the model (accuracy, mean absolute error, etc.)
- (Optionally) A histogram of the model's trainable weights
Prediction (Inference) Metrics
A deployed model can expose the following metrics:
- The total number of model predictions
- The time spent doing inference
Installing Gangplank
Gangplank can be installed from PyPI
pip install gangplank
The installation will also install Keras. Keras needs a tensor arithmetic backend like TensorFlow, JAX or PyTorch. You can install a backend at the same time as installing Gangplank by running one of the following
pip install gangplank[tensorflow]
pip install gangplank[jax]
pip install gangplank[torch]
Note: Running, e.g., pip install gangplank[jax] will install a CPU-only version of JAX. If you want, say, CUDA support you should install JAX separately
pip install gangplank
pip install jax[cuda12]
Similar comments apply to TensorFlow and PyTorch.
Examples
Examples of using Gangplank can be found here.
Acknowledgement
The example code uses a model from "Deep Learning with Python, Second Edition". Gangplank was inspired by the same book's coverage of callbacks and TensorBoard.
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 gangplank-0.3.1.tar.gz.
File metadata
- Download URL: gangplank-0.3.1.tar.gz
- Upload date:
- Size: 7.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
10ee90348ee1c4f906ff02536d5476bd72f2993c5a2ab23f67420c522e283060
|
|
| MD5 |
39fa403cf8954a4fd11f866cbaef777b
|
|
| BLAKE2b-256 |
633d5e8d9fc7c1b974788179e06a4403662cba0ba2384dcd3df94a852623ae3a
|
Provenance
The following attestation bundles were made for gangplank-0.3.1.tar.gz:
Publisher:
publish-to-pypi.yml on hammingweight/gangplank
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gangplank-0.3.1.tar.gz -
Subject digest:
10ee90348ee1c4f906ff02536d5476bd72f2993c5a2ab23f67420c522e283060 - Sigstore transparency entry: 232347191
- Sigstore integration time:
-
Permalink:
hammingweight/gangplank@cc4c44d88d2306803927daa759465560a9d08757 -
Branch / Tag:
refs/tags/0.3.1 - Owner: https://github.com/hammingweight
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-to-pypi.yml@cc4c44d88d2306803927daa759465560a9d08757 -
Trigger Event:
push
-
Statement type:
File details
Details for the file gangplank-0.3.1-py3-none-any.whl.
File metadata
- Download URL: gangplank-0.3.1-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
56fa990576bf390771e4ca915921b0631ff970dca59995363505fc5bc92726df
|
|
| MD5 |
d0f1d980d02274189c1befe87943e12e
|
|
| BLAKE2b-256 |
52fd065914b4ef686c1cc34c8f5f11aa48280691385482ed10c8cdc9820da8ae
|
Provenance
The following attestation bundles were made for gangplank-0.3.1-py3-none-any.whl:
Publisher:
publish-to-pypi.yml on hammingweight/gangplank
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gangplank-0.3.1-py3-none-any.whl -
Subject digest:
56fa990576bf390771e4ca915921b0631ff970dca59995363505fc5bc92726df - Sigstore transparency entry: 232347193
- Sigstore integration time:
-
Permalink:
hammingweight/gangplank@cc4c44d88d2306803927daa759465560a9d08757 -
Branch / Tag:
refs/tags/0.3.1 - Owner: https://github.com/hammingweight
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-to-pypi.yml@cc4c44d88d2306803927daa759465560a9d08757 -
Trigger Event:
push
-
Statement type: