ort::Error refactor
ort::Error is no longer an enum, but rather an opaque struct with a message and a new ErrorCode field.
ort::Error still implements std::error::Error, so this change shouldn't be too breaking; however, if you were previously matching on ort::Errors, you'll have to refactor your code to instead match on the error's code (acquired with the Error::code() function).
AllocationDevice refactor
The AllocationDevice type has also been converted from an enum to a struct. Common devices like CUDA or DirectML are accessible via associated constants like AllocationDevice::CUDA & AllocationDevice::DIRECTML.
Features
- 60f6eca Update to ONNX Runtime v1.19.2.
- 9f4527c Added
ModelMetadata::custom_keys()to get a Vec of all custom keys. - bfa791d Add various
SessionBuilderoptions affecting compute & graph optimizations. - 5e6fc6b Expose the underlying
AllocatorAPI. You can now allocate & free buffers acquired from a session or operator kernel context. - 52422ae Added
ValueType::Optional. - 2576812 Added the Vitis AI execution provider for new AMD Ryzen AI chips.
- 41ef65a Added the RKNPU execution provider for certain Rockchip NPUs.
- 6b3e7a0 Added
KernelContext::par_for, allowing operator kernels to use ONNX Runtime's thread pool without needing an extra dependency on a crate like rayon.
Fixes
- edcb219 Make environment initialization thread-safe. This should eliminate intermittent segfaults when running tests concurrently, like seen in #278.
- 3072279 Linux dylibs no longer require version symlinks, fixing #269.
- bc70a0a Fixed unsatisfiable lifetime bounds when creating
Tensors from&CowArrays. - 6592b17 Providing more inputs than the model expects no longer segfaults.
- b595048 Shave off dependencies by removing
tracing'sattributesfeature - a--no-default-featuresbuild ofortnow only builds 9 crates! - c7ddbdb Removed the
operator-librariesfeature - you can still useSessionBuilder::with_operator_library, it's just no longer gated behind the feature!
If you have any questions about this release, we're here to help:
Love ort? Consider supporting us on Open Collective π
β€οΈπππ