FixML
A tool for providing context-aware evaluations using a checklist-based approach on the Machine Learning project code bases.
Documentations
- Guides and API documentations: https://fixml.readthedocs.org
- Reports and proposals: https://ubc-mds.github.io/fixml
Installation
pip install fixml
# For unix-like systems e.g. Linux, macOS
export OPENAI_API_KEY={your-openai-api-key}
# For windows systems
set OPENAI_API_KEY={your-openai-api-key}
For more detailed installation guide, visit the related page on ReadtheDocs.
Usage
CLI tool
FixML offers a CLI command to quick and easy way to evaluate existing tests and generate new ones.
Test Evaluator
Here is an example command to evaluate a local repo:
fixml evaluate /path/to/your/repo \
--export_report_to=./eval_report.html --verbose
Test Spec Generator
Here is an example command to evaluate a local repo
fixml generate test.py
Package
Alternatively, you can use the package to import all components necessary for running the evaluation/generation workflows listed above.
Consult our documentation on using the API for more information and example calls.
Development Build
Please refer to the related page in our documentation.
Rendering Documentations
Please refer to the related page in our documentation.
Contributing
Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.
License
fixml was created by John Shiu, Orix Au Yeung, Tony Shum, and Yingzi Jin as a
deliverable product during our capstone project of the UBC-MDS program in
collaboration with Dr. Tiffany Timbers and Dr. Simon Goring. It is licensed
under the terms of the MIT license for software code. Reports and instructional
materials are licensed under the terms of the CC-BY 4.0 license.
Citation
If you use fixml in your work, please cite:
@misc{mds2024fixml,
author = {John Shiu, Orix Au Yeung, Tony Shum, and Yingzi Jin},
title = {fixml: A Comprehensive Tool for Test Evaluation and Specification Generation},
howpublished = {\url{https://https://github.com/UBC-MDS/fixml}},
year = {2024}
}
Acknowledgements
We'd like to thank everyone who has contributed to the development of
the fixml package. This is a new project aimed at enhancing the robustness and
reproducibility of applied machine learning software. It is meant to be a
research tool and is currently hosting on GitHub as an open source project. We
welcome it to be read, revised, and supported by data scientists, machine
learning engineers, educators, practitioners, and hobbyists alike. Your
contributions and feedback are invaluable in making this package a reliable
resource for the community.
Special thanks to the University of British Columbia (UBC) and the University of Wisconsin-Madison for their support and resources. We extend our gratitude to Dr. Tiffany Timbers and Dr. Simon Goring for their guidance and expertise, which have been instrumental in the development of this project.
Metadata
Release files for fixml 0.1.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 | Provenance | |
|---|---|---|---|---|
| fixml-0.1.1.tar.gz | 83.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fixml-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 127.3 kB
Release files / fixml-0.1.1.tar.gz
| Download URL | fixml-0.1.1.tar.gz |
|---|---|
| Size | 83.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
feec82ef047de406468cb605a76d1fe8e882de04bb98134b3c6a6f8f6dfb7f05
|
|
BLAKE2b-256 checksum How to use checksums |
e91062b9537b89670a6adf63ef0bc84497214fc6ae71285702518aef5efacbda
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.12.4 Darwin/23.5.0
|
Release files / fixml-0.1.1-py3-none-any.whl
| Download URL | fixml-0.1.1-py3-none-any.whl |
|---|---|
| Size | 44.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
08d9c4e741cf0477c386ea9f231e0fd46bc2669d0651400eed5ef705bdb30dc3
|
|
BLAKE2b-256 checksum How to use checksums |
3cd868b85132ecd4a4cd81114d23edac709db7fcfe98e0d5480fe9f6e3925194
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.12.4 Darwin/23.5.0
|
Security for fixml 0.1.1
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.