windows 加载数据集报错:raise NotImplementedError(f"Loading a dataset cached in a {type(self._fs).name} is not supported.")
这个错误表明在ModelScope中,Windows系统不支持加载缓存在特定文件系统(如Hadoop HDFS)中的数据集。要解决这个问题,你可以尝试以下方法:
modelscope.utils.file_io.copy_from_local
函数将数据集从本地复制到ModelScope的缓存目录。import os
from modelscope.utils.file_io import copy_from_local
local_dataset_path = 'path/to/your/local/dataset'
cache_dir = 'path/to/modelscope/cache'
cache_dataset_path = os.path.join(cache_dir, 'your_dataset')
copy_from_local(local_dataset_path, cache_dataset_path)
这个错误提示是因为ModelScope当前不支持从特定类型的文件系统(在这个例子中是Windows的文件系统)加载缓存的数据集。解决这个问题的方法是,你需要将数据集下载到另一个可以被ModelScope支持的文件系统中,然后再从那里加载数据集。
具体来说,你可以将数据集下载到本地的硬盘驱动器上,而不是网络驱动器或U盘上。然后,你可以将数据集的路径修改为指向硬盘驱动器上的数据集。
如果你的数据集非常大,一次性下载可能会占用大量的存储空间,你可以考虑使用分块下载的方式来下载数据集。这样,你可以将数据集分成多个小块,然后逐个下载这些小块,直到下载完成。
另外,你也可以尝试更新ModelScope的版本,看看新版本的ModelScope是否支持从Windows的文件系统加载数据集。
这两个版本您看一下
datasets 2.13.0
fsspec 2023.9.2建生。此回答整理自钉钉群:魔搭ModelScope开发者联盟群 ①