Datasets 文档

故障排除

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

疑难解答

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

使用 push_to_hub 上传数据集时出现的问题

身份验证问题

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

  • 请确保您用于自我验证的 Hugging Face 令牌是具有写入权限的令牌。
  • 在 OSX 上,清理 keychain access 中的所有 huggingface.co 密码,并重新配置 git config --global credential.helper osxkeychain,然后再使用 huggingface-cli login 可能会有帮助。

或者,您可以使用 SSH 密钥进行身份验证——在 🤗 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__ 来确保对象(或生成器类)是可手动序列化的。
  • 您也可以在 map 中使用 new_fingerprint 参数提供自己的唯一哈希。
  • 您还可以通过调用 datasets.disable_caching() 来禁用缓存,但这并不可取——详细了解缓存的重要性

寻求帮助

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

论坛

在 Hugging Face 论坛上寻求帮助 - 在 🤗Datasets 板块 发布您的问题。请确保撰写描述性帖子,并包含与您的设置相关的上下文以及可重现的代码,以最大程度地提高解决问题的可能性!

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 @albertvillanova

GitHub Issues

最后,如果您怀疑发现了与库本身相关的错误,请在 🤗 Datasets GitHub 存储库 上创建一个 Issue。请提供有关错误的上下文:用于重现的代码片段、您的环境和数据详情等,以帮助我们弄清楚问题所在以及如何解决。

在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.