Skip to main content

FixML

Python 3.12.0+ GitHub Release PyPI - Version GitHub Activity Project Status: Active – The project has reached a stable, usable state and is being actively developed. Documentation Status CI status check License: MIT License: CC BY 4.0

A tool for providing context-aware evaluations using a checklist-based approach on the Machine Learning project code bases.

Documentations

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)

Source distribution for fixml 0.1.1
File Size Uploaded Provenance
fixml-0.1.1.tar.gz 83.0 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for fixml 0.1.1
File Interpreter ABI Platform
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.

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