You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用torch.save()无法将PyTorch模型保存到GS存储桶求助

原生PyTorch的torch.save()不支持直接写入Google Cloud Storage(GCS)的gs://协议路径,它默认调用Python标准库的本地文件操作接口,无法识别GCS路径,所以会抛出FileNotFoundError。

以下是两种可行的操作方式:

方法1:通过gcsfs直接写入GCS(推荐,无需本地临时文件)

gcsfs是Python对接GCS的文件系统适配库,GCP官方Notebook实例通常已预装该库,未安装可先执行pip install gcsfs。
操作代码如下:

import gcsfs
import torch

# 初始化GCS文件系统,GCP Notebook实例默认使用实例关联的服务账号权限,无需额外传密钥
fs = gcsfs.GCSFileSystem()
path = "gs://bucket_name/model/model.pt"

# 用gcsfs打开路径得到文件对象,传给torch.save
with fs.open(path, 'wb') as f:
    torch.save(model, f)

读取模型时也用相同逻辑即可:

with fs.open(path, 'rb') as f:
    model = torch.load(f)

方法2:先存本地临时文件,再上传到GCS

也可以先把模型保存到Notebook实例的本地磁盘,再通过gsutil命令或者GCS官方SDK上传:

import torch
import os

# 先存本地临时路径
local_path = "/tmp/model.pt"
torch.save(model, local_path)

# 调用gsutil上传到GCS,GCP Notebook实例默认已配置gsutil权限
os.system(f"gsutil cp {local_path} gs://bucket_name/model/model.pt")

注意事项

  • 请确认Notebook实例关联的服务账号,拥有目标GCS存储桶的storage.objects.create和storage.objects.get权限,否则会报权限错误。
  • 存储桶名称、路径拼写注意大小写,不要加入多余空格。

内容的提问来源于stack exchange,提问作者Piyush Pandey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 23:09:03