数据集文档

故障排除

Hugging Face's logo
加入 Hugging Face 社区

并获得增强文档体验

开始使用

故障排除

本指南旨在为您提供解决一些常见问题所需的工具和知识。如果本指南中列出的建议未涵盖您的具体情况,请参阅寻求帮助部分,了解在哪里可以找到针对您的特定问题的帮助。

使用 push_to_hub 上传数据集时遇到的问题

身份验证问题

如果您在使用 Dataset.push_to_hub() 和 Hugging Face 访问令牌在 🤗 Hub 上共享数据集时遇到身份验证问题

  • 请确保您用于身份验证的 Hugging Face 令牌具有 **写入** 权限。
  • 在 OSX 上,在使用 huggingface-cli login 之前,清理钥匙串访问中所有 huggingface.co 密码以及重新配置 git config --global credential.helper osxkeychain 可能会有帮助。

或者,您可以使用 SSH 密钥进行身份验证 - 在 🤗 Hub 文档 中了解更多信息。

上传大型数据集时连接丢失

当将大型数据集上传到 Hub 时,如果数据集分片数量很大,则可能会在短时间内为 Hub 创建过多的提交。这将导致连接错误。连接错误也可能是由 Hub 内部使用的 AWS S3 存储桶返回的 HTTP 500 错误导致的。在任何一种情况下,您都可以重新运行 Dataset.push_to_hub() 以继续数据集上传。Hub 将检查已上传分片的 SHA 以避免重新上传它们。我们正在努力使上传过程对瞬态错误更加稳健,因此始终更新到最新库版本是一个好主意。

请求过多

通过 push_to_hub() 上传大型数据集可能会导致错误

HfHubHTTPError: 429 Client Error: Too Many Requests for url: ...
You have exceeded our hourly quotas for action: commit. We invite you to retry later.

如果您遇到此问题,则需要将 datasets 库升级到最新版本(或至少 2.15.0)。

从自定义数据创建数据集时遇到的问题

从文件夹加载图像和音频

从文件夹创建数据集时,最常见的问题之一是文件结构不符合预期格式,或者元数据文件存在问题。

在相应的文档页面中了解有关所需文件夹结构的更多信息

腌制问题

使用 Dataset.from_generator 时遇到的腌制问题

创建数据集时,IterableDataset.from_generator()Dataset.from_generator() 期望一个“可腌制”的生成器函数。这是必需的,因为需要使用 pickle 对函数进行哈希处理,以便能够将数据集缓存到磁盘上。

虽然生成器函数通常是“可腌制的”,但请注意生成器对象不是。因此,如果您使用的是生成器对象,则会遇到类似这样的 TypeError

TypeError: cannot pickle 'generator' object

当使用一个使用不可“腌制”全局对象的生成器函数时,例如数据库连接,也会发生此错误。如果是这种情况,您可以直接在生成器函数内部初始化此类对象以避免此错误。

Dataset.map 时的腌制问题

在多进程 Dataset.map() 中也可能发生腌制错误 - 对象会被腌制以传递给子进程。如果转换中使用的对象不可腌制,则无法缓存 map 的结果,这会导致引发错误。

以下是一些解决此问题的方法

  • 解决腌制问题的通用解决方案是通过实现 __getstate__ / __setstate__ / __reduce__ 手动确保对象(或生成器类)可腌制。
  • 您还可以使用 new_fingerprint 参数在 map 中提供您自己的唯一哈希值。
  • 您还可以通过调用 datasets.disable_caching() 禁用缓存,但是,这是不可取的 - 阅读更多关于缓存重要性的信息

寻求帮助

如果上述故障排除建议没有帮助您解决问题,请联系社区和团队寻求帮助。

论坛

在 Hugging Face 论坛寻求帮助 - 在 🤗数据集类别 中发布您的问题。请确保撰写包含相关上下文的描述性帖子,并提供可复现的代码,以最大程度地提高解决您问题的机会!

Discord

Discord 上发布问题,并让团队和社区帮助您。

🤗 Hub 上的社区讨论

如果您在 Hub 上使用脚本创建自定义数据集时遇到问题,可以通过在数据集的“社区”选项卡中打开一个讨论并发送此消息来寻求 Hugging Face 团队的帮助。

# Dataset rewiew request for <Dataset name>

## Description

<brief description of the dataset>

## Files to review

- file1
- file2
- ...

cc @lhoestq @polinaeterna @mariosasko @albertvillanova

GitHub 问题

最后,如果您怀疑发现与库本身相关的错误,请在 🤗 数据集的 GitHub 存储库 上创建一个问题。包含有关错误的上下文:用于复现的代码片段、有关您的环境和数据的详细信息等,以帮助我们找出问题所在以及如何解决。

< > 更新 在 GitHub 上