数据集文档

故障排除

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

故障排除

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

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

身份验证问题

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

  • 请确保您用于身份验证的 Hugging Face 令牌是具有 写入 权限的令牌。
  • 在 OSX 上,清理您钥匙串访问中的所有 huggingface.co 密码,以及在使用 huggingface-cli login 之前重新配置 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)。

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

从文件夹加载图像和音频

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

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

Pickling 问题

使用 Dataset.from_generator 时遇到的 Pickling 问题

在创建数据集时,IterableDataset.from_generator()Dataset.from_generator() 需要一个 “可 pickle” 的生成器函数。这是使用 pickle 哈希函数以便能够在磁盘上缓存数据集所必需的。

虽然生成器函数通常是 “可 pickle” 的,但请注意生成器对象不是。因此,如果您使用的是生成器对象,您将遇到如下 TypeError

TypeError: cannot pickle 'generator' object

当使用使用不可 “pickle” 的全局对象(例如 DB 连接)的生成器函数时,也可能发生此错误。如果是这种情况,您可以直接在生成器函数内部初始化此类对象以避免此错误。

Dataset.map 的 Pickling 问题

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

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

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

寻求帮助

如果上述故障排除建议未能帮助您解决问题,请向社区和团队寻求帮助。

论坛

在 Hugging Face 论坛上寻求帮助 - 在 🤗Datasets 类别中发布您的问题。请务必撰写描述性帖子,其中包含有关您的设置和可重现代码的相关背景信息,以最大限度地提高您的问题得到解决的可能性!

Discord

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

🤗 Hub 上的社区讨论

如果您在 Hub 上使用脚本创建自定义数据集时遇到问题,您可以通过在数据集的 Community 选项卡中打开讨论并附上此消息来向 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 Issues

最后,如果您怀疑自己发现了与库本身相关的错误,请在 🤗 Datasets GitHub 仓库上创建一个 Issue。请包含有关该错误的背景信息:用于重现的代码片段、有关您的环境和数据的详细信息等,以帮助我们找出问题所在以及如何修复它。

< > GitHub 上更新