Disclaimer: This repository is under active development and is not yet suitable for public use. We are currently working on an alpha release and will remove this disclaimer at the time of release.
Engine
This is the source code repository for a framework for creating and running Seldonian algorithms.
Installation
To run this code as a developer, create a virtual environment. Then install the package locally, e.g.
python setup.py develop
or
pip install -e .
If you want to view the parse tree graphs using the built-in tools this library provides, install graphviz onto your system. The Seldonian library uses a Python API for graphviz, and the API requires that graphviz be installed system-wide. This should resolve mysterious error messages like "dot" not found. "dot" is a command line program included with graphviz for rendering the graphs from code.
Interface
This library is in its infancy, but a lite command line interface exists for parsing string expressions into parse trees. To use this interface, edit the file: interface.py. Modify constraint_str and delta to values of interest. Then run (make sure you have activated the seldo conda environment first) from the command line:
python interface.py
As a quick test, if you use the following variables:
constraint_str = 'abs((Mean_Error | [M]) - (Mean_Error | [F])) - 0.1'
delta = 0.05
The resulting diagram should match this one, although the actual intervals may be different due to the random seeding of the base variable intervals.
Testing
To run the unit tests, from the command line do:
pytest
This will automatically run all tests in tests/. Currently, there is only one test file in this folder, called test_parse_tree.py. Pytest will find that file and run all tests within that file.
To get more introspection into the tests see the Pytest documentation.
Versioning
The naming of versions of this software adheres to semantic versioning. Pre-release versions use a major version of "0", e.g. "0.0.1" is the very first pre-release version.
Metadata
Release files for test-engine 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| test-engine-0.0.3.tar.gz | 47.9 kB | Without provenance | Details for test-engine-0.0.3.tar.gz |
Release files / test-engine-0.0.3.tar.gz
| Download URL | test-engine-0.0.3.tar.gz |
|---|---|
| Size | 47.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f40120d550924b17dad6b240651a308d0c3321ab7740831efa2cc9a01c83b8ad
|
|
BLAKE2b-256 checksum How to use checksums |
4eb0a118d1eae69e0ed4b2ffc0637105b08267d14e92e20e39e308f92e936e4c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8
|
Security for test-engine 0.0.3
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.