Evalmetry
A research toolkit for measuring and analyzing model behavior.
Evalmetry evaluates Hugging Face language models with lm-eval and collects internal signals from the same forward passes used for scoring.
Features
- Benchmark scores with per-layer logit lens and layer similarity.
- Optional attention, hidden states, custom hooks and module statistics.
- Custom benchmarks, LLM judge scoring and modified-model adapters.
- Resumable runs, saved-data readers and comparison reports.
Model evaluation supports one process on one CUDA GPU. CPU execution is for test fixtures and verification tools. Reports and saved-data readers do not require a GPU.
Evidence and research example
Read the 1.1.0 verification report and the prediction-depth research showcase. Generation parity is established at the same actual batch size; generation is not batch-invariant.
Install
Install from PyPI in your Python environment:
pip install evalmetry
Evalmetry requires Python >=3.10. Use a compatible CUDA build of PyTorch. The Python import and CLI are both evalmetry.
To install this release explicitly, use pip install evalmetry==1.1.0.
For development, clone this repository and run python -m pip install -e ..
Quick start
Use run to evaluate eight documents and save the default signals:
evalmetry run --model-args pretrained=Qwen/Qwen3-0.6B,dtype=bfloat16,device=cuda \
--tasks arc_easy --num-fewshot 0 --limit 8 --batch-size 1 \
--output results/quickstart
Use report to generate a report from that run:
evalmetry report results/quickstart --output report/quickstart
The first run downloads the model and dataset if needed. Reusing a run directory resumes its recorded configuration; use a different directory for a different experiment.
Other commands: collect-research-data adds optional tensors to a completed run, debug reads a saved module trace, and module-stats reads saved statistics. Traces and statistics must be enabled during collection. Use evalmetry <command> --help for options.
Reading results
Evaluation results, manifests and collected signals are written under the selected output directory. Read saved signals with evalmetry.load_signals(run_dir); evalmetry.describe_schema() describes the columns.
License
Evalmetry is released under the MIT License.
This project is built on top of EleutherAI's lm-evaluation-harness.
Metadata
Release files for evalmetry 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| evalmetry-1.1.0.tar.gz | 180.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| evalmetry-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 368.1 kB
Release files / evalmetry-1.1.0.tar.gz
| Download URL | evalmetry-1.1.0.tar.gz |
|---|---|
| Size | 180.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e6e9aab5e137ddc33792b9eb8d82b064e2631a13873dab9c1cbcffaea5f46183
|
|
BLAKE2b-256 checksum How to use checksums |
7653994b48cf216aa57afad70257e6b393ad865a39f1cb0a2f9ef5459afe7956
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|
Release files / evalmetry-1.1.0-py3-none-any.whl
| Download URL | evalmetry-1.1.0-py3-none-any.whl |
|---|---|
| Size | 187.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d1af6bebb15e0631f21b39368a6e1af4a4694140c133ea2368c2fe5c660a1ed4
|
|
BLAKE2b-256 checksum How to use checksums |
17d96f52a8d774bd0def7a7464a88d50020291495538871dbab6c661aee86bfb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|