Releases: onnx/turnkeyml
Releases · onnx/turnkeyml
v3.0.7
What's Changed
- Update setup.py to use new email address by @jeremyfowers in #216
- Don't run code at init time! by @jeremyfowers in #220
- Don't require a specific protobuf by @jeremyfowers in #221
Full Changelog: v3.0.6...v3.0.7
v3.0.6
What's Changed
- Move the performance module and Device class under the run module by @jeremyfowers in #215
Full Changelog: v3.0.5...v3.0.6
v3.0.5
What's Changed
- Create examples for the new way of using the api by @jeremyfowers in #211
- Fix process isolation bug by @jeremyfowers in #212
- Allow CI tests to select the directory where their cache and corpus will be placed by @jeremyfowers in #213
Full Changelog: v3.0.4...v3.0.5
v3.0.4
What's Changed
This is a hotfix release.
- Dont throw an error when we can't figure out the parameter count by @jeremyfowers in #210
Full Changelog: v3.0.3...v3.0.4
v3.0.3
What's Changed
Minor changes to make turnkeyml more flexible.
- Support for python 3.11 by @jeremyfowers in #189
- Improve TurnkeyML Framework Extensibility by @jeremyfowers in #209
Full Changelog: v3.0.2...v3.0.3
v3.0.2
What's Changed
Bug Fixes:
- Bug: Monitor on/off should not be part of State by @jeremyfowers in #206
- Fix help menu by @jeremyfowers in #207
- Prevent onnx 1.16.2 from being deployed by @jeremyfowers in #208
Full Changelog: v3.0.1...v3.0.2
v3.0.1
v3.0.0
Summary
This release is the culmination of a month of work in the refresh
branch to re-architect TurnkeyML for the future.
The high-level changes are:
Stages
have been replaced byTools
, which each have their own arguments parser to enable maximum configurabilitySequences
are no longer hardcoded lists ofStages
- now users can enter any list ofTools
they like- Everything is a
Tool
: model discovery, benchmarking, and even cache management functionality (report, list, delete, etc.) are all now modularTools
. Plugins
now primarily add newTools
. These newTools
can do a lot more thanStages
used to be able to, such as:- Add a new frontend into the sequence, as a replacement for model discovery. For example, load an LLM checkpoint.
- Replace the backend of the sequence with something other than our standard benchmarking flow. For example, run an accuracy test.
- Add utility functions, such as managing the cache or built-in models.
- There is a brand new command line interface and API to expose the new way of doing things.
- The tools documentation has been completely re-written.
Breaking Changes
There are almost too many to list since the whole project has been re-architected. Here are the major things to be aware of:
Stage
classes need to be ported to on to theTool
class.- Any reference to
stage
should be changed totool
, for example thestage_status::
stat is nowtool_status::
- The names of most
Tools
have been renamed to fit our new naming scheme (see contribution guide).
- Any reference to
- There is no longer a notion of
benchmark_status
, since benchmarking is now aTool
. It's nowtool_status::benchmark
. - The
build_model()
API has been removed. Instead,Tools
should be called as their own standalone APIs. - The
benchmark_files()
API has been re-named toevaluate_files()
. - The repository directory structure has been redone, which changes a lot of imports.
- For example,
turnkeyml.state
hasState
andload_state()
. - See the code organization doc for the full set of changes.
- For example,
v2.0.3
What's Changed
- Specify how errors should be handled during decoding by @danielholanda in #148
Full Changelog: v2.0.2...v2.0.3
v2.0.2
What's Changed
- Do not set benchmarking error status when a benchmark is skipped by @jeremyfowers in #146
- Relax ORT requirements by @danielholanda in #147
Full Changelog: v2.0.1...v2.0.2