PhEval - Phenotypic Inference Evaluation Framework
PhEval (Phenotypic Inference Evaluation Framework) is a modular, reproducible benchmarking framework for evaluating phenotype-driven prioritisation tools, such as gene, variant, and disease prioritisation algorithms.
It is designed to support fair comparison across tools, tool versions, datasets, and knowledge updates, addressing a long-standing gap in standardised evaluation for phenotype-based methods.
📖 Full documentation: https://monarch-initiative.github.io/pheval/
Why PhEval?
Evaluating phenotype-driven prioritisation tools is challenging because performance depends on many moving parts, including:
- Phenotype representations and noise
- Ontology structure and versioning
- Gene and disease mappings
- Tool-specific scoring and ranking strategies
- Input cohorts and simulation approaches
PhEval provides a framework that makes these factors explicit, controlled, and comparable.
Key features:
- Standardised outputs across tools
- Reproducible benchmarking with recorded metadata
- Plugin-based architecture for extensibility
- Separation of execution and evaluation
- Support for gene, variant, and disease prioritisation
Installation
PhEval requires Python 3.10 or later.
Install from PyPI:
pip install pheval
This installs:
- The core pheval CLI (for running tools via plugins)
pheval-utils(for data preparation, benchmarking, and analysis)
Verify installation:
pheval --help
pheval-utils --help
How PhEval is used
PhEval workflows typically consist of three phases:
- Prepare data Prepare and manipulate phenopackets and related inputs (e.g. VCFs).
- Run tools
Execute phenotype-driven prioritisation tools via plugin-provided runners using:
pheval run --runner <runner_name> ...
- Benchmark and analyse Compare results across runs using standardised metrics and plots.
Each phase is documented in detail in the user documentation.
Plugins and runners
PhEval itself is tool-agnostic.
Support for specific tools is provided via plugins, which implement runners responsible for:
- Preparing tool inputs
- Executing the tool
- Converting raw outputs into PhEval standardised results
A list of available plugins is maintained in the documentation:
Plugins: https://monarch-initiative.github.io/pheval/plugins/
Each plugin repository contains tool-specific installation instructions and examples.
Documentation
The PhEval documentation is organised by audience and task:
- Getting started: installation and first steps
- Using PhEval: running tools, plugins, and workflows
- Utilities: data preparation, phenopacket manipulation, simulations
- Benchmarking: executing benchmarks, metrics, and plots
- Developer documentation: plugin development and API reference
Start here: https://monarch-initiative.github.io/pheval/
Contributions
Contributions are welcome across:
- Code
- Documentation
- Testing
- Plugins and integrations
Citation
If you use PhEval in your research, please cite the following publication:
Bridges, Y., Souza, V. d., Cortes, K. G., et al.
Towards a standard benchmark for phenotype-driven variant and gene prioritisation algorithms: PhEval – Phenotypic Inference Evaluation Framework.
BMC Bioinformatics 26, 87 (2025).
https://doi.org/10.1186/s12859-025-06105-4
Metadata
Release files for pheval 0.7.14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pheval-0.7.14.tar.gz | 5.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pheval-0.7.14-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.1 MB
Release files / pheval-0.7.14.tar.gz
| Download URL | pheval-0.7.14.tar.gz |
|---|---|
| Size | 5.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
00623e80b2c53ed07c17f6a74b7216221f726450640083861795fa015c0f5cf6
|
|
BLAKE2b-256 checksum How to use checksums |
781656a38684854befe3dfc72c1622b6bb7f7f3e5af84454ba1b85809d74d4e8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Release files / pheval-0.7.14-py3-none-any.whl
| Download URL | pheval-0.7.14-py3-none-any.whl |
|---|---|
| Size | 5.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
30fbe6da0c73210eb9c0c265b51e8ba8e2e31f2b1fe677e196660401ea87c383
|
|
BLAKE2b-256 checksum How to use checksums |
1d9a891d08caa43511263b44ff34c05bab70c0c1b464d980540de93699ad9843
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|