华为云AI开发平台ModelArts使用MoXing复制数据报错_云淘科技
问题现象
调用moxing.file.copy_parallel()将文件从开发环境拷贝到桶里,但是桶内没有出现目标文件。
使用MoXing复制数据不成功,出现报错。如:
ModelArts开发环境使用MoXing复制OBS数据报错:keyError: ‘request-id’
ModelArts使用MoXing拷贝报错:No files to copy
socket.gaierror: [Errno -2] Name or service not known
ERROR:root:Failed to call:
func=<bound method ObsClient.getObject of >
args=(‘bucket’, ‘data/TFRecord/HY_all_inside/no_adjust_light_3/09_06_6x128x128_0000000212.tfrecord’)
使用MoXing复制数据报错,提示超时。如:
报错:TimeoutError: [Errno 110] Connection timed out
WARNING:root:Retry=9,Wait=0.1, Timestamp = 1567152567.5327423
原因分析
当使用MoXing复制数据不成功,可能原因如下:
源文件不存在。
复制的两个OBS路径不正确或者不在在同一区域。
训练作业空间不足。
处理方法
按照报错提示,需要排查以下几个问题:
检查moxing.file.copy_parallel()的第一个参数中是否有文件,否则会出现报错:No files to copy
文件存在,请执行2。
文件不存在,请忽略该报错继续执行后续操作。
检查复制的OBS的路径是否与开发环境或训练作业在同一个区域。
进入ModelArts管理控制台,查看其所在区域。然后再进入OBS管理控制台,查看您使用的OBS桶所在的区域。查看是否在同一区域。
是,请执行3。
否,请在ModelArts同一区域的OBS中新建桶和文件夹,并将所需的数据上传至此OBS桶中。
检查OBS的路径是否正确,是否写为了“obs://xxx”。可使用如下方式判断OBS路径是否存在。
mox.file.exists(‘obs://bucket_name/sub_dir_0/sub_dir_1’)
路径存在,请执行4。
路径不存在,请在更换为一个可用的OBS路径。
检查使用的资源是否为CPU,CPU的“/cache”与代码目录共用10G,可能是空间不足导致,可在代码中使用如下命令查看磁盘大小。
os.system(‘df -hT’)
磁盘空间满足,请执行5。
磁盘空间不足,请您使用GPU资源。
如果是在Notebook使用MoXing复制数据不成功,可以在Terminal界面中使用df -hT命令查看空间大小,排查是否因空间不足导致,可在创建Notebook时使用EVS挂载。
如果代码写作正确,仍然无法解决该问题,请提交工单,由专业工程师为您分析并解决问题。
父主题: MoXing
同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家