Pipestat is a Python package for managing pipeline results. It provides a standard API for reporting, storing, and retrieving outputs from any computational pipeline. Results are validated against a JSON Schema and stored in either a YAML file or a PostgreSQL database. A pipeline author defines outputs in a schema, then uses pipestat to report results as the pipeline runs. Downstream tools retrieve those results through the same API.
See Pipestat documentation for complete details.
Quick Start
import pipestat
psm = pipestat.PipestatManager(
schema_path="output_schema.yaml",
results_file_path="results.yaml",
record_identifier="sample1",
)
psm.report(values={"accuracy": 0.95, "processing_time": 12.3})
psm.report(values={"output_file": {"path": "results/output.csv", "title": "Output CSV"}})
Schema
Pipestat requires a schema that defines the results your pipeline reports. Here is a minimal example:
pipeline_name: my_pipeline
samples:
accuracy:
type: number
description: "Model accuracy score"
processing_time:
type: number
description: "Processing time in seconds"
output_file:
type: object
object_type: file
properties:
path: {type: string}
title: {type: string}
required: ["path", "title"]
Every result needs type and description. See sample_output_schema_generic.yaml in this repo for a fuller example with both sample and project result types.
Generating a schema from existing results
If you already have a pipestat results file, you can auto-generate a schema:
pipestat infer-schema -f results.yaml -o schema.yaml
This inspects your results and produces a schema with the correct types. See pipestat infer-schema --help for options.
Developer tests
Optional Dependencies
Note: to run the pytest suite locally, you will need to install the related requirements:
cd pipestat
pip install -r requirements/requirements-test.txt
Database Backend Configuration for Tests
Many of the tests require a postgres database to be set up otherwise many of the tests will skip.
We recommend using docker:
docker run --rm -it --name pipestat_test_db \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=pipestat-password \
-e POSTGRES_DB=pipestat-test \
-p 5432:5432 \
postgres
Metadata
Release files for pipestat 0.13.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pipestat-0.13.1.tar.gz | 139.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pipestat-0.13.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 244.6 kB
Release files / pipestat-0.13.1.tar.gz
| Download URL | pipestat-0.13.1.tar.gz |
|---|---|
| Size | 139.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
87cf69404511e434e8e9a20abdfd9c8123ad6d2f7818a182a29db772a8d78d47
|
|
BLAKE2b-256 checksum How to use checksums |
b80bf3fadd34b2b341a695052de36f4fc15255d9580579f46f198d8fa06e9855
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 6, 2026.
Transparency logRelease files / pipestat-0.13.1-py3-none-any.whl
| Download URL | pipestat-0.13.1-py3-none-any.whl |
|---|---|
| Size | 104.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b51b97d1a68b1f0f553a785fc66574ddbe162e24b57e13c36190f7fe4b5c6153
|
|
BLAKE2b-256 checksum How to use checksums |
6ecb500e0283bbe51c4fa63433238496c6f77bc3eec75ffc998a3aae7ac67503
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 6, 2026.
Transparency log