华为云AI开发平台ModelArts上传本地超大文件(5GB以上)至JupyterLab_云淘科技

不支持在Notebook的JupyterLab中直接上传大小超过5GB的文件。

图1 不支持直接上传大小超过5GB的文件

5GB以上的文件需要先从本地上传到OBS中,再在Notebook中调用ModelArts的Moxing接口或者SDK接口读写OBS中的文件。

图2 在Notebook中上传下载大文件

具体操作如下:

从本地上传文件至OBS。具体操作请参见上传文件至OBS桶。
将OBS中的文件下载到Notebook,可以通过在Notebook中运行代码的方式完成数据下载,具体方式有2种,ModelArts的SDK接口或者调用MoXing接口。

方法一:使用ModelArts SDK接口将OBS中的文件下载到Notebook后进行操作。

示例代码:

1
2
3
from modelarts.session import Session
session = Session()
session.obs.copy("obs://bucket-name/obs_file.txt","/home/ma-user/work/")

方法二:使用Moxing操作OBS文件将OBS中的文件同步到Notebook后进行操作。

import moxing as mox

#下载一个OBS文件夹sub_dir_0,从OBS下载至Notebook
mox.file.copy_parallel('obs://bucket_name/sub_dir_0', '/home/ma-user/work/sub_dir_0')
#下载一个OBS文件obs_file.txt,从OBS下载至Notebook
mox.file.copy('obs://bucket_name/obs_file.txt', '/home/ma-user/work/obs_file.txt')

如果下载到Notebook中的是zip文件,在Terminal中执行下列命令,解压压缩包。

unzip xxx.zip  #在xxx.zip压缩包所在路径直接解压

代码执行完成后,参考图3打开terminal后执行ls /home/ma-user/work命令查看下载到Notebook中的文件。或者在Jupyter左侧导航中显示下载的文件,如果没有显示,请刷新后查看,如图4所示。

图3 打开terminal

图4 查看下载到Notebook中的文件

异常处理

通过OBS下载文件到Notebook中时,提示Permission denied。请依次排查:

请确保读取的OBS桶和Notebook处于同一站点区域,例如:都在华北-北京四站点。不支持跨站点访问OBS桶。
请确认操作Notebook的帐号有权限读取OBS桶中的数据。

具体请参见ModelArts中提示OBS路径错误。

父主题: 上传本地文件至JupyterLab

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家