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

如何为Hugging Face load_dataset方法正确配置features参数?

报错原因

你传入Features的类型声明为字符串格式的'str'、'ClassLabel',但datasets库要求Features接收的是对应类型的实例对象,而非字符串。

解决方案

方案1:加载时直接指定类型

需要先导入Value和ClassLabel两个类型类,按如下方式声明特征:

from datasets import Features, Value, ClassLabel
from datasets import load_dataset

# 将names参数替换为你实际的8个类别字符串,顺序可自定义,加载时会自动把csv中的字符串标签映射为0-7的整数
ft = Features(
    {
        "sequence": Value("string"), 
        "label": ClassLabel(names=["类别1", "类别2", "类别3", "类别4", "类别5", "类别6", "类别7", "类别8"])
    }
)

mydataset = load_dataset("csv", data_files="mydata.csv", features=ft)

方案2:加载后转换标签类型

如果不想提前手动填写所有类别名,可以先默认加载数据集,再调用内置方法自动转换标签为ClassLabel类型:

from datasets import load_dataset

# 先按默认格式加载数据集
mydataset = load_dataset("csv", data_files="mydata.csv")
# 自动识别label列的所有唯一值,转换为ClassLabel类型
mydataset = mydataset.class_encode_column("label")

两种方案执行后都可以通过print(mydataset["train"].features)验证特征类型是否符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 21:15:05