用于可视化神经网络、深度学习和机器学习模型结构的查看器,支持 ONNX、PyTorch 等多种格式。
LaurentMazare/tch-rs
PyTorch C++ API(libtorch)的 Rust 绑定,可用 Rust 构建、训练和运行深度学习模型。
- Star
- 5,516
- Fork
- 463
- 未关闭 Issue
- 276
- 最近提交
- 3个月前
这是什么?
tch-rs 提供 `tch` crate,是对 PyTorch C++ API(libtorch)的薄封装,接口尽量贴近原始 C++ 接口,便于在 Rust 中直接调用张量运算、自动微分和神经网络模块。更符合 Rust 习惯的高层接口可以在此基础上构建。
该库支持通过 VarStore 管理参数,并配合 SGD、Adam 等优化器进行梯度下降训练,也支持加载 TorchScript JIT 模型。视觉相关工具包括 MNIST 数据加载、ImageNet 图像预处理以及预训练的 ResNet、VGG 模型,并可导入 PyTorch 导出的 safetensors 格式权重。
使用前需要 libtorch v2.13.0,可以使用系统安装的版本、手动下载的版本、本机 Python PyTorch 环境,或通过 download-libtorch 特性自动下载。也支持静态链接。
核心功能
- 01对 libtorch C++ API 的薄封装,提供张量类型和常用张量运算。
- 02通过 VarStore 结合 SGD、Adam 等优化器进行自动微分训练。
- 03支持加载 TorchScript JIT 模型,并导入 safetensors 格式的 PyTorch 权重。
- 04提供 MNIST 数据加载、ImageNet 图像预处理以及预训练 ResNet、VGG 模型。
- 05支持使用系统 libtorch、手动安装、本机 Python PyTorch 或自动下载等多种方式配置。
适用场景
- 在 Rust 中编写或训练深度学习模型,并使用 PyTorch 的底层计算能力。
- 在 Rust 服务中运行预训练视觉模型或 TorchScript 模型进行推理。
- 将 PyTorch 模型代码迁移到 Rust,同时保持相同的 libtorch 后端。
- 基于 libtorch 构建更高层的 Rust 机器学习库。
快速上手
- 1
安装 libtorch v2.13.0(系统级安装,或从 PyTorch 官网下载)
- 2
通过 LIBTORCH 环境变量指定 libtorch 目录
export LIBTORCH=/path/to/libtorch - 3
运行示例以验证环境配置
cargo run --example basics
使用前须知
- 需要单独安装 libtorch v2.13.0,设置步骤较多。
- Windows 用户应使用 MSVC 工具链,因为 MinGW 与 PyTorch 存在兼容性问题。
- 静态链接需要从源码手动编译 libtorch。
标签
常见问题
- tch-rs 是什么?
- PyTorch C++ API(libtorch)的 Rust 绑定,可用 Rust 构建、训练和运行深度学习模型。 tch-rs 提供 `tch` crate,是对 PyTorch C++ API(libtorch)的薄封装,接口尽量贴近原始 C++ 接口,便于在 Rust 中直接调用张量运算、自动微分和神经网络模块。更符合 Rust 习惯的高层接口可以在此基础上构建。
- tch-rs 可以免费使用吗?用的什么许可证?
- tch-rs 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- tch-rs 还在维护吗?
- 半年内有更新。tch-rs 最近一次提交是在 2026年8月23日。
- tch-rs 适合用来做什么?
- 在 Rust 中编写或训练深度学习模型,并使用 PyTorch 的底层计算能力。 在 Rust 服务中运行预训练视觉模型或 TorchScript 模型进行推理。 将 PyTorch 模型代码迁移到 Rust,同时保持相同的 libtorch 后端。 基于 libtorch 构建更高层的 Rust 机器学习库。
- tch-rs 怎么安装和运行?
- 安装 libtorch v2.13.0(系统级安装,或从 PyTorch 官网下载) 通过 LIBTORCH 环境变量指定 libtorch 目录: export LIBTORCH=/path/to/libtorch 运行示例以验证环境配置: cargo run --example basics
- 在哪里获取 tch-rs?
- 源代码和安装说明在 GitHub 上:https://github.com/LaurentMazare/tch-rs
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
面向 Java 开发者的深度学习框架,与底层引擎无关,可直接用 Java 构建、训练和部署模型。
TNT(torchtnt)是一个为 PyTorch 模型提供训练工具与实用函数的轻量级库。
一份整理 PyTorch 相关开源项目、库、模型实现与教程的资源清单。
一个用 Rust 编写的张量库与深度学习框架,支持训练和推理,可运行在多种 GPU 与 CPU 后端上。
端到端开源机器学习平台,提供 Python 和 C++ 接口,用于构建和部署 ML 模型。