Skip to main content

MLflow plugin: automatic PRML manifest hash tagging for runs. Pre-registered ML evaluation claims.

Project description

mlflow-falsify — automatic PRML manifest hash tagging for MLflow runs

Drop a PRML manifest in your repo. Every MLflow run gets cryptographically bound to it. No workflow changes.

Install

pip install mlflow-falsify

The plugin is discovered automatically through MLflow's mlflow.run_context_provider entry point.

Usage

import mlflow

# .prml.yaml exists in CWD or any parent directory — that's all you need.
with mlflow.start_run():
    mlflow.log_metric("accuracy", 0.873)
    # The run now carries prml.manifest_hash and friends as tags.

What gets tagged

When a .prml.yaml or prml.yaml is found in the current directory or any ancestor, every run is tagged with:

  • prml.manifest_hash — SHA-256 of the canonical manifest bytes (PRML v0.1 §3)
  • prml.manifest_path — relative path to the discovered manifest
  • prml.version — manifest schema version (e.g. prml/0.1)
  • prml.metric — the pre-registered metric (e.g. accuracy)
  • prml.comparator — one of >=, >, ==, <=, <
  • prml.threshold — the numeric threshold, as a string
  • prml.dataset_id — the pre-registered dataset identifier

Missing or malformed fields are silently skipped. The provider never raises into your run.

Why this matters

  • EU AI Act Article 12 evidence layer. Every logged run carries a tamper-evident pointer to the claim it was meant to test.
  • Eval reproducibility by default. The hash freezes metric, threshold, dataset, and seed before the experiment runs.
  • Audit trails for free. Reviewers can recompute the manifest hash from the YAML and compare it against your tracked runs.
  • No workflow change. Existing MLflow code is untouched — the plugin attaches via entry points.

Links

License

MIT. Copyright 2026 Studio 11 / Cüneyt Öztürk.

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

mlflow_falsify-0.1.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

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

mlflow_falsify-0.1.0-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file mlflow_falsify-0.1.0.tar.gz.

File metadata

  • Download URL: mlflow_falsify-0.1.0.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for mlflow_falsify-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b5c210ce524e4c37fbfdd416c1307182444730df2e6e48c7c23a8e741e323794
MD5 eee58548b7cdd3445539112fa0d51c54
BLAKE2b-256 995d943d9689090e843f05c29c920236637b10cc50f47b1d24be711674d1b75d

See more details on using hashes here.

File details

Details for the file mlflow_falsify-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mlflow_falsify-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for mlflow_falsify-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b741bcce29062b363249ca52189c8d860ff4e9d3edeedca173c4b82e12a75c41
MD5 bfae16f5440a75942fe7186c7bb9d9d3
BLAKE2b-256 9f444a2334e80ae1776c73c79e0a8240adf2a95662b1e51c8aa5d24619b8f978

See more details on using hashes here.

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