#tensorflow #protobuf #serde #config

tensorflow_proto

Tensorflow协议缓冲区的Rust结构体

3个版本 (破坏性更新)

0.3.0 2021年1月11日
0.2.0 2020年8月8日
0.1.0 2020年8月8日

#2193编码

Download history 120/week @ 2023-12-17 7/week @ 2023-12-31 62/week @ 2024-01-07 38/week @ 2024-01-14 63/week @ 2024-01-21 131/week @ 2024-01-28 335/week @ 2024-02-04 601/week @ 2024-02-11 215/week @ 2024-02-18 277/week @ 2024-02-25 239/week @ 2024-03-03 239/week @ 2024-03-10 151/week @ 2024-03-17 263/week @ 2024-03-24 339/week @ 2024-03-31

每月996次下载

自定义许可

140KB
177

tensorflow_proto

Continuous Integration Crates.io docs.rs

tensorflow_proto是一个使用prost-build生成Rust struct以用于Tensorflow使用协议缓冲区的序列化/反序列化操作的crate。

特别是,当在tensorflow/rust库中调用SessionOptions::set_config来配置Tensorflow时,这非常有用。

注意: 该crate针对tensorflow 1.15.2和2.0.0进行了测试。

使用方法

默认特性

添加

tensorflow_proto = "0.3.0"

到您的Cargo.toml文件。

Serde支持

可以通过使用"serde-derive"特性来启用Serde支持

tensorflow_proto = { version = "0.3.0", features = ["serde-derive"] }

这将为每个生成的struct添加一个#[derive(serde::Serialize, serde::Deserialize)]

您还必须依赖serde

易于转换为字节

最后,您可以为每个由prost生成的struct启用实现std::convert::TryFrom的代码生成,该实现将消息编码到一个Vec<u8>

tensorflow_proto = { version = "0.3.0", features = ["convert"] }

使用自定义Tensorflow *.proto源文件

要使用不同版本的Tensorflow协议缓冲区源,将TENSORFLOW_PROTO_SOURCE定义为Tensorflow源树的根目录。

依赖项

~1.9–3.5MB
~67K SLoC