Skip to main content

The Judge/Scoring engine for XRTM.

Project description

xrtm-eval

License Python PyPI

The Judge for XRTM.

xrtm-eval is the rigorous scoring engine used to grade forecast results. It operates independently of the inference engine to ensure objective evaluation.

Part of the XRTM Ecosystem

Layer 4: xrtm-train    → (imports all)
Layer 3: xrtm-forecast → (imports eval, data)
Layer 2: xrtm-eval     → (imports data) ← YOU ARE HERE
Layer 1: xrtm-data     → (zero dependencies)

xrtm-eval provides scoring metrics AND trust primitives used by the forecast engine.

Installation

pip install xrtm-eval

Core Primitives

1. Brier Score Breakdown

We do not use simple accuracy. We use the Brier Score, decomposed into its three component terms:

  • Reliability: How well do the predicted probabilities match observed frequencies?
  • Resolution: How well does the forecast distinguish between events that happen and those that don't?
  • Uncertainty: The inherent difficulty of the problem.
from xrtm.eval import BrierScoreEvaluator

evaluator = BrierScoreEvaluator()
score = evaluator.score(prediction=0.7, ground_truth=1)
# score = (0.7 - 1.0)^2 = 0.09

2. Expected Calibration Error (ECE)

Use the ExpectedCalibrationErrorEvaluator to measure the gap between forecast probability and realized accuracy across bin buckets.

Project Structure

src/xrtm/eval/
├── core/            # Interfaces & Schemas
│   ├── eval/            # Evaluator protocol, EvaluationResult
│   └── schemas/         # ForecastResolution
├── kit/             # Composable evaluator implementations
│   └── eval/metrics.py  # BrierScoreEvaluator, ECE
└── providers/       # External evaluation services (future)

Development

Prerequisites:

# Install dependencies
uv sync

# Run tests
uv run pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xrtm_eval-0.3.0.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xrtm_eval-0.3.0-py3-none-any.whl (19.1 kB view details)

Uploaded Python 3

File details

Details for the file xrtm_eval-0.3.0.tar.gz.

File metadata

  • Download URL: xrtm_eval-0.3.0.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for xrtm_eval-0.3.0.tar.gz
Algorithm Hash digest
SHA256 077acb19765cee5a88b9cddb5ec32ce4a726a34551fee58c6d54fcc51217d7b7
MD5 23461b27fe55ffc87e2bc054b3574885
BLAKE2b-256 908d50424aec7e0a4349f90d0162e12f21b19b76356b60e87089a1e1efcb012f

See more details on using hashes here.

Provenance

The following attestation bundles were made for xrtm_eval-0.3.0.tar.gz:

Publisher: publish.yml on xrtm-org/eval

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xrtm_eval-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: xrtm_eval-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 19.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for xrtm_eval-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8c504d3b45fcddab929141e808052d552929af9818a394c9be40ce01cc9f8e09
MD5 6beedaf2d93748b02ac37a085846c303
BLAKE2b-256 3c6acedb8334e407b124b3ccc5c876b190ed8092797b60db3ca1b3da9a56520e

See more details on using hashes here.

Provenance

The following attestation bundles were made for xrtm_eval-0.3.0-py3-none-any.whl:

Publisher: publish.yml on xrtm-org/eval

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page