pytorch写张量pt文件,libtorch读张量pt文件

++直接在pytorch中,用torch.save保存的张量,可能因格式差异无法在C++中加载。++

以下是一个最简单的例子,展示如何在 Pytorch中保存张量到 TorchScript 模块,并在 C++ 中使用 LibTorch 加载。

Python 代码 (save_tensor.py)

复制代码
import torch

# 定义一个简单的 TorchScript 模块来包装张量
class TensorWrapper(torch.jit.ScriptModule):
    def __init__(self, tensor):
        super().__init__()
        self.tensor = torch.jit.Attribute(tensor, torch.Tensor)

# 创建一个张量
tensor = torch.randn(2, 3)

# 包装张量到模块
module = TensorWrapper(tensor)

# 保存模块到文件
torch.jit.save(module, "tensor.pt")

C++ 代码 (load_tensor.cpp)

复制代码
#include <torch/script.h>
#include <iostream>

int main() {
    // 加载 TorchScript 模块
    torch::jit::script::Module module = torch::jit::load("tensor.pt");

    // 获取张量(假设我们知道属性名为 tensor)
    torch::Tensor tensor = module.attr("tensor").toTensor();

    // 打印张量
    std::cout << tensor << std::endl;

    return 0;
}

这种方法可靠,因为 TorchScript 提供了跨语言的序列化支持,保证张量数据一致性。

相关推荐
Latchh4 分钟前
视频封面为什么会黑屏或截到旧帧
图像处理·人工智能·计算机视觉·音视频
小马哥crazymxm8 分钟前
Arxiv论文周选 (2026-W35)
论文阅读·人工智能·计算机视觉·目标跟踪
幻影123!9 分钟前
AlphaZero 五子棋实战(番外二):白棋专项训练的一种方案
python·机器学习·强化学习·五子棋·alpha zero
shaibdoio12 分钟前
瞬维AI落地经验:AI Agent工具调用准确率怎么提
数据库·人工智能·oracle
一缕82年的清风13 分钟前
当 AI 承包了 90% 的代码,架构师那致命的 10% 到底在控什么?
人工智能·vibecoding
头发够用的程序员14 分钟前
TensorRT 自定义算子插件实战(三):手搓 2×2 最大池化 customMaxpool
人工智能·pytorch·python·深度学习·神经网络·边缘计算·jetson
lisw0518 分钟前
人工智能网络:结构、动力学与经济学!
人工智能
@不误正业18 分钟前
技术线05_端侧小模型不可靠先检查你的Agent架构
人工智能·架构·agent·端侧模型·4b
鱼宵18 分钟前
Spring AI 工具调用:@Tool 让大模型自己查订单查库存
人工智能·spring·工具调用·functioncalling·springai
鬼手点金20 分钟前
opencode-crawl4ai使用建议
java·开发语言·人工智能·python·机器学习