Skip to main content

A verification pipeline for evaluating models and forecasts.

Project description

Docs latest Tests Docs codecov

Veriflow

A verification pipeline, that integrates the full verification process

  • 📥 Fetching data
  • 🧮 Computing scores
  • 📝 Writing results

Key features

  • ✅ Full control over the verification pipeline via configuration
  • ✅ Native integration with Delft-FEWS
  • ✅ Builds on Scores for computation of scores. This package has extensive functionality, and it's documentation is world-class.
  • ✅ Extensible with your own (private) datasources, scores and datasinks
  • ✅ Optimized internal datamodel for efficient computation

👥 Who Is This For?

This project is aimed at anyone who's interested in assessing model and forecast quality in an easy and reproducible way, like:

  • operational forecasters
  • model developers
  • researchers and data-scientists

This package is developed by people working in the real-time hydro- and meteorological forecasting domain, but the software is not limited to this scope.

Why this package?

Verification is an essential part of model development and forecasting. However, setting up a verification pipeline for any given use-case, may be time-consuming and technically complex. This package aims to lower the bar for verification, by saving users time and handling some of the technical challenges in verification. We aim to make verification process easier, by handling all steps of the pipeline with just one easy to read user-configuration. In addition to making verification more accessible, we hope to make the process more robust, transparent and fully reproducible so you can focus on what the results actually tell you.

Some of the technical challenges of verification include:

  • Computation of metrics can be complex
  • Data volumes can become larger than memory
  • Data transformations may be required before computation
  • Data may have to be ingested from various sources (like files or databases)
  • Data may have to be written to various data destinations (like files or databases)

Naturally, verification is nothing new and many custom approaches exist. Custom approaches may aim to handle each of the necessary steps in the verification pipeline for a given use-case. Some of the possible advantages of this software, compared to custom approaches include:

  • This software is versioned, tested and published, which improves reliability
  • This software is documented which offers transparency to users
  • This software runs on well documented configuration, ensuring ease of use when making instructions for a pipeline.
  • Any verification pipeline is fully-transferable to other users or systems, because it only relies on a single config file.
  • The pipeline returns standardized output, which can be directly inspected in any environment. When working in an interactive Python environment, results can be directly returned from the pipeline.
  • This software is flexible. As a developer, you can write your own plug-ins for datasources, scores and datasinks. In this way, you can tailor this framework to your own use-case.

Technical features

  • Builds on Xarray for handling multidimensional data.
  • Supports Zarr for cloud-friendly data storage
  • Supports Dask for parallel and lazy computation

Installation

Install from source:

git clone https://github.com/Deltares/veriflow.git
cd veriflow
pip install .

As a developer: see CONTRIBUTING.md

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

veriflow-0.0.1.tar.gz (57.4 kB view details)

Uploaded Source

Built Distribution

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

veriflow-0.0.1-py3-none-any.whl (62.8 kB view details)

Uploaded Python 3

File details

Details for the file veriflow-0.0.1.tar.gz.

File metadata

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

File hashes

Hashes for veriflow-0.0.1.tar.gz
Algorithm Hash digest
SHA256 ea821154de3d24b37420375461af67e389159f44fe5fc63056a2d2a0cb9ad3f3
MD5 e26271ce92cf474d212bb67e3aaeb951
BLAKE2b-256 1a5abddeea18ccbb9bcca6551b4beeab1b5aad070dce2228715d9ad13faeeb82

See more details on using hashes here.

Provenance

The following attestation bundles were made for veriflow-0.0.1.tar.gz:

Publisher: publish.yml on Deltares/veriflow

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

File details

Details for the file veriflow-0.0.1-py3-none-any.whl.

File metadata

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

File hashes

Hashes for veriflow-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 12210cb78ad26b758c077dbeda8959aa7d5f5ff07ba27b4a04c8413d9e554a59
MD5 c42b2470a4d90062ddf692c7e543129b
BLAKE2b-256 edb34b89802fcab296151fa562f14a22a4163556a15c871d7a2ebef5f2aa6be6

See more details on using hashes here.

Provenance

The following attestation bundles were made for veriflow-0.0.1-py3-none-any.whl:

Publisher: publish.yml on Deltares/veriflow

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