#machine-learning #neural-network #api-bindings #unsafe-bindings #openvino #depend

sys openvino-sys

OpenVINO 的底层绑定(使用 openvino crate 以获得更易用的绑定)

21 个版本

0.7.2 2024 年 6 月 26 日
0.6.0 2023 年 12 月 11 日
0.5.0 2023 年 4 月 6 日
0.4.2 2022 年 10 月 21 日
0.1.5 2020 年 10 月 23 日

#536机器学习

Download history 6051/week @ 2024-04-28 5894/week @ 2024-05-05 11352/week @ 2024-05-12 10921/week @ 2024-05-19 11626/week @ 2024-05-26 9948/week @ 2024-06-02 13547/week @ 2024-06-09 14870/week @ 2024-06-16 15877/week @ 2024-06-23 10074/week @ 2024-06-30 13211/week @ 2024-07-07 13300/week @ 2024-07-14 17778/week @ 2024-07-21 17068/week @ 2024-07-28 14440/week @ 2024-08-04 16325/week @ 2024-08-11

67,203 每月下载量
7 个 crate 中使用(通过 openvino

Apache-2.0

150KB
2.5K SLoC

openvino-sys

openvino-sys crate 提供了使用 OpenVINO™ 的 C API 的低级别、不安全的 Rust 绑定。如果您想从 Rust 使用 OpenVINO™,您可能应该查看 openvino 中的易于使用、安全的绑定,该绑定依赖于此 crate。有关更多信息,包括构建此 crate 的说明,请参阅仓库 README


lib.rs:

此 crate 提供了使用 OpenVINO™ 的 C API 的低级别、不安全的 Rust 绑定。如果您想从 Rust 使用 OpenVINO™,您可能应该查看 openvino 中的易于使用、安全的绑定,该绑定依赖于此 crate。有关更多信息,包括构建说明,请参阅仓库 README

与原始 openvino-sys 的示例交互

openvino_sys::library::load().expect("to have an OpenVINO library available");
let mut ov_version = openvino_sys::ov_version_t {
    // Initialize the fields to default values
    description: std::ptr::null(),
    buildNumber: std::ptr::null(),
};
let code = unsafe { openvino_sys::ov_get_openvino_version(&mut ov_version) };
assert_eq!(code, 0);
let version_ptr = { ov_version }.buildNumber;
let string_version = unsafe { CStr::from_ptr(version_ptr) }.to_string_lossy().into_owned();
unsafe { openvino_sys::ov_version_free(std::ptr::addr_of_mut!(ov_version)) };
assert!(string_version.starts_with("2"));

依赖项

~0–5MB