如何从Google Colab 中下载文件

前言

前面在Colab上使用Hugging Face库训练并导出模型时遇到一个问题,就是从Colab上直接使用右键下载的形式经常出现下载失败的情况,训练的模型文件又很大,频繁的失败着实有点令人头大。那除了使用右键下载还有没有别的方式呢,答案是有的,就是利用Google的Drive功能,而且通过Google Drive下载大型文件速度也是快的飞起。

Google Drive简介

Google Drive 是谷歌提供的云盘服务,提供免费 15 GB 空间,可在多设备实时同步、在线协作编辑、精细权限分享,并支持全文搜索与版本回溯,让个人和团队随时随地安全存取与共享文件。

挂载Google Drive

在Colab中挂载Google Drive有两种形式,一种是可视化形式,一种是代码形式。

可视化形式

进入Colab笔记,左侧侧边栏选中【文件】,选择【Mount Drive】

接着就会在Colab笔记中插入一个代码块,直接运行代码块即可挂载成功

代码形式

代码形式就是直接新建一个代码块,在代码块输入上面指令提示的代码

javascript 复制代码
from google.colab import drive
drive.mount('/content/drive')

执行代码块,根据提示选择Google账号进行授权

挂载成功后,即可看到挂载Drive后的目录文件

基本使用

Colab文件路径

在Colab导入导出文件之前,我们需要了解一个概念,就是在Colab中文件系统路径是放到 /content 路径下的,我们选中文件右键【Copy path】即可复制文件路径

文件路径如下:

bash 复制代码
/content/drive/MyDrive/Colab交互式语法.ipynb

Colab文件导出至Drive

注意直接拖拽文件只会保留一处,另一处将被移除

params目录下为之前训练的模型数据文件,文件较大,最新先进行压缩处理

在Colab新建一个代码块,输入如下指令

csharp 复制代码
$ !zip -r params.zip params

执行完毕,我们将得到一个 params.zip 的压缩文件

我们可以直接将 params.zip 拖拽到 /content/drive/MyDrive 目录下,也可以新建代码块输入如下指令将 params.zip 拷贝到 /content/drive/MyDrive 目录下

bash 复制代码
!cp params.zip /content/drive/MyDrive/params.zip

拷贝完成后,稍等片刻回到Google Drive就可以看到同步到Google Drive到文件,直接右键下载,速度会快很多

Colab导入Drive文件

在了解上面导出文件导Drive后,从Drive中导入文件就相对简单了,在挂载完成Drive后,可以直接从 /content/drive/MyDrive 中拖拽文件,也可以新建代码块从 /content/drive/MyDrive 中进行拷贝

bash 复制代码
!cp /content/drive/MyDrive/Colab交互式语法.ipynb test.ipynb

执行完毕后,在Colab文件目录下就会多出一个 test.ipynb 文件

使用files.download

Colab也提供了 files.download 方法用于下载Colab文件,不过该方法限制较多,速度较慢,不是很推荐

javascript 复制代码
from google.colab import files
files.download('/content/test.ipynb')

执行完成后,浏览器就会弹出浏览器下载对话框下载文件

友情提示

见原文:如何从Google Colab 中下载文件

本文同步自微信公众号 "程序员小溪" ,这里只是同步,想看及时消息请移步我的公众号,不定时更新我的学习经验。

相关推荐
Helix2501 天前
Chrome 性能优化实战:内存节省、硬件加速与 Flags 设置,让浏览器更流畅
chrome·google·性能优化·内存占用·硬件加速·设置技巧·浏览器优化
Helix2501 天前
Chrome 标签页管理术:分组、固定、搜索与恢复,告别标签页混乱
chrome·google·分组·标签页管理·固定标签·标签页恢复
Helix2502 天前
Chrome 快捷键效率提升:10 个常用快捷键,把浏览速度提升一个量级
chrome·google·浏览器·使用技巧·效率工具·快捷键·爆红教程
不老刘4 天前
Antigravity 应用登录/token 交换超时 · 排查速查笔记
google·antigravity·反重力
seowmt6 天前
结构化数据和自然语言描述哪个更管用?答案分场景
人工智能·google·typescript·go语言·schema
ShineWinsu7 天前
对于ProtoBuffer:ProtoBuffer的介绍以及安装
linux·网络·google·协议·序列化·反序列化·protobuffer
wangruofeng18 天前
Pro 七个月没转正,Flash 四个月连发四代 Stable,写代码怎么选?拆解 Gemini 两条产品线分化逻辑。
google·aigc·ai编程
XLYcmy23 天前
ReasoningBank: Scaling Agent Self-Evolving with Reasoning Memory论文阅读
论文阅读·google·llm·agent·记忆·harness·自进化
亚林瓜子1 个月前
Google的编程Agent:antigravity CLI自动模式
ai·google·spec·coding·cli·auto·agy
小满zs1 个月前
Go语言第十章(指针)
后端·google·go