Skip to main content
https://img.shields.io/pypi/pyversions/pystematic?style=for-the-badge https://img.shields.io/pypi/v/pystematic?style=for-the-badge https://img.shields.io/github/workflow/status/evalldor/pystematic/Test?style=for-the-badge https://readthedocs.org/projects/pystematic/badge/?style=for-the-badge

Pystematic is a lightweight framework that helps you to systematically setup and run reproducible computational experiments in python.

Main features:

  • Standardizes how experiments and associated parameters are defined.

  • Provides both CLI and programmatic interfaces for running your experiments.

  • Encourages reproducibility by isolating experiment outputs and providing tools for managing random seeds.

Quickstart

Installation

pystematic is available on pypi, and can be installed with your package manager of choice.

If using poetry:

$ poetry add pystematic

or with pip:

$ pip install pystematic

Defining and running experiments

Experiments and parameters are defined by decorating the main function of the experiment. The following example defines an experiment named hello_world with a single parameter name:

import pystematic as ps

@ps.parameter(
    name="name",
    help="The name to greet.",
)
@ps.experiment
def hello_world(params):
    print(f"Hello {params['name']}!")

You can run the experiment either by supplying a dict containing the values for the parameters:

hello_world.run({
    "name": "World",
})

or you can run the experiment from the command line by invoking the cli() method of the experiment:

if __name__ == "__main__":
    hello_world.cli()

Then from the terminal you simply run:

$ python path/to/file.py --name "World"

Documentation

Full documentation is available at https://pystematic.readthedocs.io.

Extensions

For running machine learning experiments in pytorch check out the pystematic-torch plugin.

Metadata

Release files for pystematic 1.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for pystematic 1.7.0
File Interpreter ABI Platform
pystematic-1.7.0-py3-none-any.whl Python 3 none any Details

Release files / pystematic-1.7.0-py3-none-any.whl

Download URL pystematic-1.7.0-py3-none-any.whl
Size 25.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b27952d1bf101eec4597e98a29cf5e26b0948eb6c5a97d2a0e7450eebda4a626
BLAKE2b-256 checksum
How to use checksums
55495c52603d1d5ded9130ccf2cb679a3eb404c19edae2ef559d09eba4bd6542
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.3 CPython/3.12.11 Linux/6.11.0-1015-azure

Release history Release notifications | RSS feed

This release

1.7.0 This release

1 release file

1.6.0

1 release file

1.5.2

1 release file

1.5.1

1 release file

1.5.0

1 release file

1.4.1

1 release file

1.4.0

1 release file

1.3.1

1 release file

1.3.0

1 release file

1.2.1

1 release file

1.2.0

1 release file

1.1.2

1 release file

1.1.1

1 release file

1.1.0

1 release file

1.0.0

1 release file

0.9.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page