12 releases

new 0.21.4 Apr 23, 2024
0.21.3 Apr 3, 2024
0.21.2 Mar 29, 2024
0.21.1 Feb 8, 2024
0.20.18 Aug 30, 2023

#909 in Machine learning

Download history 22/week @ 2024-01-15 11/week @ 2024-02-05 29/week @ 2024-02-19 31/week @ 2024-02-26 8/week @ 2024-03-04 14/week @ 2024-03-11 3/week @ 2024-03-18 101/week @ 2024-03-25 160/week @ 2024-04-01 62/week @ 2024-04-08 3/week @ 2024-04-15

326 downloads per month
Used in 4 crates (3 directly)

MIT/Apache

115KB
301 lines

tract 1.0 public API (draft)

TLDR

A regular Rust project should include tract-rs only.

Scope

These crates are meant to represent a public API for tract for integration in "simple" use case. We commit on Semver stability on these crates interface. The other crates are considered internal and their interface can change any time.

The public API scope is limited to model-level manipulation, no access to individual model graph nodes and operators is allowed.

Crates

  • interface definition: tract-api in tract/api
  • rust implementation over tract internal crates: tract-rs in tract/api/rs
  • tract as a C-friendly dynamic library: tract-ffi in tract/api/ffi
  • rust client over tract-ffi (use tract as a shared library): tract-proxy in tract/api/proxy. It implements tract-api, so is source-swapable with tract-rs.
  • python client: in tract/api/py

Dependencies

~2.5MB
~47K SLoC