TorchScript / LibTorch(策略导出与 C++ 部署)
TorchScript (torch.jit) / LibTorch进阶把 PyTorch 模型导出成脱离 Python 运行的文件,再用 C++ 加载推理。
TorchScript 是 PyTorch 自带的模型序列化格式:用 torch.jit.trace(按一次示例输入记录运算)或 torch.jit.script(直接解析代码)把模型转成 .pt 文件,里面同时存结构和权重。LibTorch 是 PyTorch 的 C++ 发行版,可以在 C++ 程序里 torch::jit::load 这个文件做推理。机器人控制程序多用 C++ 写,且需要稳定的实时循环,这条路线让训练好的强化学习策略不依赖 Python 环境就能上机。PyTorch 官方已把 TorchScript 列为维护状态,新项目更推荐 torch.export、ONNX 等方案,但大量运控开源项目仍在用它。
例子legged_gym 的 play 脚本可把训练好的行走策略导出为 JIT 格式的 policy.pt,部署代码在 C++ 控制循环里加载它,每个控制周期输入观测、输出关节目标。
- 也叫
- torch.jit、JIT 导出、LibTorch
- 相关
- PyTorch、ONNX、推理部署、legged_gym、端侧部署、Python 与 C++(具身常用编程语言)
- 来源
- TorchScript — PyTorch documentation
Loading a TorchScript Model in C++