You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用tensorflow_datasets下载rock_paper_scissors数据集遇TypeError错误求助

解决tensorflow_datasets下载rock_paper_scissors数据集的TypeError问题

问题重现

执行以下代码时触发错误:

import tensorflow_datasets as tfds
hands_builder = tfds.builder("rock_paper_scissors")
hands_builder.download_and_prepare()

报错信息

TypeError: Expected binary or unicode string, got WindowsGPath('C:\\Users\\Wilso\\tensorflow_datasets\\downloads\\download.tensorflow.org_rpswkA0RDlYQq0ExTYSutVLV0RD6uF6ByMRei_4e51yGU8.zip')  

环境版本

  • tensorflow-gpu: 2.1.0
  • tensorflow_datasets: 3.0.0
  • tfds-nightly: 4.6.0
  • 操作系统: Windows 10

解决方法

1. 统一兼容版本(核心方案)

当前环境中tfds-nightly 4.6.0与老旧的tensorflow-gpu 2.1.0版本严重不兼容,导致路径处理逻辑冲突,引发类型错误。需卸载冲突包并安装匹配版本:

卸载现有包:

pip uninstall tensorflow_datasets tfds-nightly -y

安装与tensorflow-gpu 2.1.0兼容的tensorflow_datasets版本:

pip install tensorflow_datasets==2.1.0

2. 手动指定字符串格式下载路径(辅助方案)

若仍存在路径类型问题,可在构建数据集时手动指定字符串格式的数据目录,避免路径对象转换错误:

import tensorflow_datasets as tfds
# 显式传入字符串格式的本地数据目录
hands_builder = tfds.builder("rock_paper_scissors", data_dir="C:\\Users\\Wilso\\tensorflow_datasets")
hands_builder.download_and_prepare()

3. 检查Python版本兼容性

确保Python版本处于3.5-3.7区间,tensorflow-gpu 2.1.0仅支持该范围的Python版本,版本不匹配也可能引发隐性兼容问题。

内容的提问来源于stack exchange,提问作者Zhang Wei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 09:35:24