Datasets 文档

加载方法

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

加载方法

用于列出和加载数据集的方法

数据集

datasets.load_dataset

< >

( path: str name: typing.Optional[str] = None data_dir: typing.Optional[str] = None data_files: typing.Union[str, collections.abc.Sequence[str], collections.abc.Mapping[str, typing.Union[str, collections.abc.Sequence[str]]], NoneType] = None split: typing.Union[str, datasets.splits.Split, list[str], list[datasets.splits.Split], NoneType] = None cache_dir: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None download_config: typing.Optional[datasets.download.download_config.DownloadConfig] = None download_mode: typing.Union[datasets.download.download_manager.DownloadMode, str, NoneType] = None verification_mode: typing.Union[datasets.utils.info_utils.VerificationMode, str, NoneType] = None keep_in_memory: typing.Optional[bool] = None save_infos: bool = False revision: typing.Union[datasets.utils.version.Version, str, NoneType] = None token: typing.Union[bool, str, NoneType] = None streaming: bool = False num_proc: typing.Optional[int] = None storage_options: typing.Optional[dict] = None **config_kwargs ) DatasetDatasetDict

参数

  • path (str) — 数据集的路径或名称。

    • 如果 path 是 HF Hub 上的数据集仓库(使用 huggingface_hub.list_datasets 列出所有可用数据集) -> 从仓库中受支持的文件(csv, json, parquet 等)加载数据集,例如 'username/dataset_name',一个包含数据文件的 HF Hub 数据集仓库。

    • 如果 path 是 HF Hub 上存储桶内的目录(使用 huggingface_hub.list_buckets 列出您的存储桶) -> 从目录中受支持的文件(csv, json, parquet 等)加载数据集,例如 'buckets/username/bucket_name/my_dataset'

    • 如果 path 是本地目录 -> 从目录中受支持的文件(csv, json, parquet 等)加载数据集,例如 './path/to/directory/with/my/csv/data'

    • 如果 path 是数据集构建器的名称,并且指定了 data_filesdata_dir(可用构建器包括“json”、“csv”、“parquet”、“arrow”、“text”、“xml”、“webdataset”、“imagefolder”、“audiofolder”、“videofolder”) -> 从 data_filesdata_dir 中的文件加载数据集,例如 'parquet'

    使用 hf:// 路径(如 'hf://datasets/username/dataset_name')可仅允许远程加载。使用绝对路径可仅允许本地加载。

  • name (str, 可选) — 定义数据集配置的名称。
  • data_dir (str, 可选) — 定义数据集配置的 data_dir。如果为通用构建器(csv、text 等)或 Hub 数据集指定了此参数,且 data_filesNone,则其行为等同于将 os.path.join(data_dir, **) 作为 data_files 传入,以引用目录中的所有文件。
  • data_files (strSequenceMapping, 可选) — 源数据文件的路径。
  • split (Splitstr) — 要加载的数据拆分。如果为 None,将返回一个包含所有拆分的 dict(通常是 datasets.Split.TRAINdatasets.Split.TEST)。如果指定,将返回单个 Dataset。拆分可以像在 tensorflow-datasets 中那样进行组合和指定。
  • cache_dir (str, 可选) — 读取/写入数据的目录。默认为 "~/.cache/huggingface/datasets"
  • features (Features, 可选) — 设置用于此数据集的特征类型。
  • download_config (DownloadConfig, 可选) — 特定的下载配置参数。
  • download_mode (DownloadModestr,默认为 REUSE_DATASET_IF_EXISTS) — 下载/生成模式。
  • verification_mode (VerificationModestr,默认为 BASIC_CHECKS) — 验证模式,确定对已下载/已处理的数据集信息(校验和/大小/拆分/…)运行的检查。

    在 2.9.1 中添加

  • keep_in_memory (bool,默认为 None) — 是否将数据集复制到内存中。如果为 None,除非通过将 datasets.config.IN_MEMORY_MAX_SIZE 设置为非零值明确启用,否则不会将数据集复制到内存中。有关更多详细信息,请参阅 提高性能 部分。
  • revision (Versionstr, 可选) — 要加载的数据集版本。由于数据集在 Datasets Hub 上拥有自己的 git 仓库,默认版本“main”对应于它们的“main”分支。您可以使用提交 SHA 或数据集仓库的 git 标签来指定与默认“main”不同的版本。
  • token (strbool, 可选) — 用于 Datasets Hub 上远程文件的 Bearer 令牌的可选字符串或布尔值。如果为 True 或未指定,将从 "~/.huggingface" 获取令牌。
  • streaming (bool,默认为 False) — 如果设置为 True,则不下载数据文件。相反,它在迭代数据集时逐步流式传输数据。在这种情况下,将返回一个 IterableDatasetIterableDatasetDict

    请注意,流式传输适用于使用支持迭代的数据格式的数据集,例如 txt、csv、jsonl。Json 文件可能会被完全下载。此外,支持从远程 zip 或 gzip 文件流式传输,但尚不支持其他压缩格式(如 rar 和 xz)。tgz 格式不支持流式传输。

  • num_proc (int, 可选,默认为 None) — 在本地下载和生成数据集时使用的进程数。多进程默认是禁用的。

    在 2.7.0 中添加

  • storage_options (dict, 可选,默认为 None) — 实验性。要传递给数据集文件系统后端(如果有)的键值对。

    在 2.11.0 中添加

  • **config_kwargs (额外的关键字参数) — 传递给 BuilderConfig 并用于 DatasetBuilder 的关键字参数。

返回

DatasetDatasetDict

  • 如果 split 不为 None:所请求的数据集,
  • 如果 splitNone,则返回一个包含每个拆分的 DatasetDict

IterableDatasetIterableDatasetDict:如果 streaming=True

  • 如果 split 不为 None,则请求该数据集
  • 如果 splitNone,则返回一个包含每个拆分的 ~datasets.streaming.IterableDatasetDict

从 Hugging Face Hub 或本地加载数据集。

您可以在 Hub 上或使用 huggingface_hub.list_datasets 查找数据集列表。

数据集是一个目录,其中包含一些通用格式(JSON、CSV、Parquet 等)的数据文件,并且可能具有通用结构(Webdataset、ImageFolder、AudioFolder、VideoFolder 等)。

此函数在底层执行以下操作

  1. 加载数据集构建器

    • 查找数据集中最常见的数据格式并选择其关联的构建器(JSON、CSV、Parquet、Webdataset、ImageFolder、AudioFolder 等)
    • 根据文件和目录名称或 YAML 配置,查找哪个文件属于哪个拆分(例如 train/test)
    • 也可以手动指定 data_files 以及要使用的数据集构建器(例如“parquet”)。
  2. 运行数据集构建器

    在一般情况下

    • 如果数据文件尚未在本地提供或缓存,则从数据集下载它们。

    • 将数据集处理并缓存为类型化的 Arrow 表以进行缓存。

      Arrow 表是任意长度的类型化表,可以存储嵌套对象,并映射到 numpy/pandas/python 通用类型。它们可以直接从磁盘访问、加载到内存中,甚至可以在网上流式传输。

    在流式传输的情况下

    • 不下载或缓存任何内容。相反,数据集是延迟加载的,并且在迭代时会即时进行流式传输。
  3. 返回由 split 中请求的拆分构建的数据集(默认:全部)。

示例

从 Hugging Face Hub 加载数据集

>>> from datasets import load_dataset
>>> ds = load_dataset('cornell-movie-review-data/rotten_tomatoes', split='train')

# Load a subset or dataset configuration (here 'sst2')
>>> from datasets import load_dataset
>>> ds = load_dataset('nyu-mll/glue', 'sst2', split='train')

# Manual mapping of data files to splits
>>> data_files = {'train': 'train.csv', 'test': 'test.csv'}
>>> ds = load_dataset('namespace/your_dataset_name', data_files=data_files)

# Manual selection of a directory to load
>>> ds = load_dataset('namespace/your_dataset_name', data_dir='folder_name')

从 Hugging Face Hub 上的存储桶加载数据集

>>> from datasets import load_dataset
>>> ds = load_dataset('buckets/username/bucket_name/rotten_tomatoes', split='train')

加载本地数据集

# Load a CSV file
>>> from datasets import load_dataset
>>> ds = load_dataset('csv', data_files='path/to/local/my_dataset.csv')

# Load a JSON file
>>> from datasets import load_dataset
>>> ds = load_dataset('json', data_files='path/to/local/my_dataset.json')

加载 IterableDataset

>>> from datasets import load_dataset
>>> ds = load_dataset('cornell-movie-review-data/rotten_tomatoes', split='train', streaming=True)

使用 ImageFolder 数据集构建器加载图像数据集

>>> from datasets import load_dataset
>>> ds = load_dataset('imagefolder', data_dir='/path/to/images', split='train')

datasets.load_from_disk

< >

( dataset_path: typing.Union[str, bytes, os.PathLike] keep_in_memory: typing.Optional[bool] = None storage_options: typing.Optional[dict] = None ) DatasetDatasetDict

参数

  • dataset_path (path-like) — 将从中加载数据集/数据集字典的 DatasetDatasetDict 目录的路径(例如 "dataset/train")或远程 URI(例如 "s3://my-bucket/dataset/train")。
  • keep_in_memory (bool,默认为 None) — 是否将数据集复制到内存中。如果为 None,除非通过将 datasets.config.IN_MEMORY_MAX_SIZE 设置为非零值明确启用,否则不会将数据集复制到内存中。有关更多详细信息,请参阅 提高性能 部分。
  • storage_options (dict, 可选) — 要传递给文件系统后端(如果有)的键值对。

    在 2.9.0 中添加

返回

DatasetDatasetDict

  • 如果 dataset_path 是数据集目录的路径:所请求的数据集。
  • 如果 dataset_path 是数据集字典目录的路径,则返回一个包含各拆分(split)的 DatasetDict

从数据集目录中加载之前使用 save_to_disk() 保存的数据集,或使用 fsspec.spec.AbstractFileSystem 的任意实现从文件系统中加载。

示例

>>> from datasets import load_from_disk
>>> ds = load_from_disk('path/to/dataset/directory')

datasets.load_dataset_builder

< >

( path: str name: typing.Optional[str] = None data_dir: typing.Optional[str] = None data_files: typing.Union[str, collections.abc.Sequence[str], collections.abc.Mapping[str, typing.Union[str, collections.abc.Sequence[str]]], NoneType] = None cache_dir: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None download_config: typing.Optional[datasets.download.download_config.DownloadConfig] = None download_mode: typing.Union[datasets.download.download_manager.DownloadMode, str, NoneType] = None revision: typing.Union[datasets.utils.version.Version, str, NoneType] = None token: typing.Union[bool, str, NoneType] = None storage_options: typing.Optional[dict] = None **config_kwargs )

参数

  • path (str) — 数据集的路径或名称。

    • 如果 path 是 HF Hub 上的数据集仓库(使用 huggingface_hub.list_datasets 列出所有可用数据集) -> 从仓库中的支持文件(csv, json, parquet 等)加载数据集构建器,例如 'username/dataset_name'(包含数据文件的 HF Hub 数据集仓库)。

    • 如果 path 是 HF Hub 上存储桶(Storage Bucket)内的目录(使用 huggingface_hub.list_buckets 列出你的存储桶) -> 从目录中的支持文件(csv, json, parquet 等)加载数据集,例如 'buckets/username/bucket_name/my_dataset'

    • 如果 path 是本地目录 -> 从目录中的支持文件(csv, json, parquet 等)加载数据集构建器,例如 './path/to/directory/with/my/csv/data'

    • 如果 path 是数据集构建器的名称,且指定了 data_filesdata_dir(可用构建器包括 “json”, “csv”, “parquet”, “arrow”, “text”, “xml”, “webdataset”, “imagefolder”, “audiofolder”, “videofolder”) -> 从 data_filesdata_dir 中的文件加载数据集构建器,例如 'parquet'

    使用 hf:// 路径(如 'hf://datasets/username/dataset_name')以仅允许远程访问。使用绝对路径以仅允许本地访问。

  • name (str, 可选) — 定义数据集配置的名称。
  • data_dir (str, 可选) — 定义数据集配置的 data_dir。如果为通用构建器(csv, text 等)或 Hub 数据集指定了此参数且 data_filesNone,其行为等同于将 os.path.join(data_dir, **) 作为 data_files 传入,以引用目录中的所有文件。
  • data_files (strSequenceMapping, 可选) — 源数据文件的路径。
  • cache_dir (str, 可选) — 读取/写入数据的目录。默认为 "~/.cache/huggingface/datasets"
  • features (Features, 可选) — 设置此数据集使用的特征类型。
  • download_config (DownloadConfig, 可选) — 特定的下载配置参数。
  • download_mode (DownloadModestr,默认为 REUSE_DATASET_IF_EXISTS) — 下载/生成模式。
  • revision (Versionstr可选) — 要加载的数据集版本。由于数据集在 Datasets Hub 上拥有自己的 Git 仓库,默认版本 “main” 对应于它们的 “main” 分支。你可以通过使用数据集仓库的提交 SHA 或 Git 标签来指定不同于默认 “main” 的版本。
  • token (strbool可选) — 用作 Datasets Hub 上远程文件 Bearer 令牌的可选字符串或布尔值。如果为 True 或未指定,将从 "~/.huggingface" 获取令牌。
  • storage_options (dict可选,默认为 None) — 实验性功能。如有,则传递给数据集文件系统后端的键值对。

    添加于 2.11.0

  • **config_kwargs (额外的关键字参数) — 传递给 BuilderConfig 并在 DatasetBuilder 中使用的关键字参数。

加载一个数据集构建器,可用于

  • 检查构建数据集所需的一般信息(缓存目录、配置、数据集信息、特征、数据文件等)
  • 将数据集下载并准备为缓存中的 Arrow 文件
  • 获取流式数据集,无需下载或缓存任何内容

您可以在 Hub 上或使用 huggingface_hub.list_datasets 查找数据集列表。

数据集是一个目录,其中包含一些通用格式(JSON、CSV、Parquet 等)的数据文件,并且可能具有通用结构(Webdataset、ImageFolder、AudioFolder、VideoFolder 等)。

示例

>>> from datasets import load_dataset_builder
>>> ds_builder = load_dataset_builder('cornell-movie-review-data/rotten_tomatoes')
>>> ds_builder.info.features
{'label': ClassLabel(names=['neg', 'pos']),
 'text': Value('string')}

datasets.get_dataset_config_names

< >

( path: str revision: typing.Union[datasets.utils.version.Version, str, NoneType] = None download_config: typing.Optional[datasets.download.download_config.DownloadConfig] = None download_mode: typing.Union[datasets.download.download_manager.DownloadMode, str, NoneType] = None data_files: typing.Union[str, list, dict, NoneType] = None **download_kwargs )

参数

  • path (str) — 数据集仓库的路径。可以是:

    • 包含数据文件的本地数据集目录路径,例如 './dataset/squad'
    • Hugging Face Hub 上的数据集标识符(使用 huggingface_hub.list_datasets 列出所有可用数据集及其 ID),例如 'rajpurkar/squad', 'nyu-mll/glue''openai/webtext'
  • revision (Union[str, datasets.Version], 可选) — 如果指定,数据集模块将从该版本的数据库仓库中加载。默认情况下:

    • 它被设置为本地库版本。
    • 如果该版本在本地库中不可用,它也会尝试从 main 分支加载。指定与本地库版本不同的版本可能会导致兼容性问题。
  • download_config (DownloadConfig, 可选) — 特定的下载配置参数。
  • download_mode (DownloadModestr,默认为 REUSE_DATASET_IF_EXISTS) — 下载/生成模式。
  • data_files (Union[Dict, List, str], 可选) — 定义数据集配置的 data_files。
  • **download_kwargs (额外的关键字参数) — DownloadConfig 的可选属性,如果提供,将覆盖 download_config 中的属性,例如 token

获取特定数据集的可用配置名称列表。

示例

>>> from datasets import get_dataset_config_names
>>> get_dataset_config_names("nyu-mll/glue")
['cola',
 'sst2',
 'mrpc',
 'qqp',
 'stsb',
 'mnli',
 'mnli_mismatched',
 'mnli_matched',
 'qnli',
 'rte',
 'wnli',
 'ax']

datasets.get_dataset_infos

< >

( path: str data_files: typing.Union[str, list, dict, NoneType] = None download_config: typing.Optional[datasets.download.download_config.DownloadConfig] = None download_mode: typing.Union[datasets.download.download_manager.DownloadMode, str, NoneType] = None revision: typing.Union[datasets.utils.version.Version, str, NoneType] = None token: typing.Union[bool, str, NoneType] = None **config_kwargs )

参数

  • path (str) — 数据集仓库的路径。可以是:

    • 包含数据文件的本地数据集目录路径,例如 './dataset/squad'
    • Hugging Face Hub 上的数据集标识符(使用 huggingface_hub.list_datasets 列出所有可用数据集及其 ID),例如 'rajpurkar/squad', 'nyu-mll/glue''openai/webtext'
  • revision (Union[str, datasets.Version], 可选) — 如果指定,数据集模块将从该版本的数据库仓库中加载。默认情况下:

    • 它被设置为本地库版本。
    • 如果该版本在本地库中不可用,它也会尝试从 main 分支加载。指定与本地库版本不同的版本可能会导致兼容性问题。
  • download_config (DownloadConfig, 可选) — 具体的下载配置参数。
  • download_mode (DownloadModestr,默认值为 REUSE_DATASET_IF_EXISTS) — 下载/生成模式。
  • data_files (Union[Dict, List, str], 可选) — 定义数据集配置的数据文件。
  • token (strbool, 可选) — 用于 Datasets Hub 上远程文件的 Bearer 令牌(可选字符串或布尔值)。如果设为 True 或未指定,将从 "~/.huggingface" 获取令牌。
  • **config_kwargs (额外的关键字参数) — 构建器类的可选属性,如果提供,将覆盖现有属性。

获取关于数据集的元信息,返回一个将配置名称映射到 DatasetInfoDict 的字典。

示例

>>> from datasets import get_dataset_infos
>>> get_dataset_infos('cornell-movie-review-data/rotten_tomatoes')
{'default': DatasetInfo(description="Movie Review Dataset.
 is a dataset of containing 5,331 positive and 5,331 negative processed
ences from Rotten Tomatoes movie reviews...), ...}

datasets.get_dataset_split_names

< >

( path: str config_name: typing.Optional[str] = None data_files: typing.Union[str, collections.abc.Sequence[str], collections.abc.Mapping[str, typing.Union[str, collections.abc.Sequence[str]]], NoneType] = None download_config: typing.Optional[datasets.download.download_config.DownloadConfig] = None download_mode: typing.Union[datasets.download.download_manager.DownloadMode, str, NoneType] = None revision: typing.Union[datasets.utils.version.Version, str, NoneType] = None token: typing.Union[bool, str, NoneType] = None **config_kwargs )

参数

  • path (str) — 数据集仓库的路径。可以是:

    • 指向包含数据文件的本地数据集目录,例如 './dataset/squad'
    • Hugging Face Hub 上的数据集标识符(使用 huggingface_hub.list_datasets 列出所有可用数据集和 ID),例如 'rajpurkar/squad', 'nyu-mll/glue''openai/webtext'
  • config_name (str, 可选) — 定义数据集配置的名称。
  • data_files (strSequenceMapping, 可选) — 源数据文件的路径。
  • download_config (DownloadConfig, 可选) — 具体的下载配置参数。
  • download_mode (DownloadModestr,默认值为 REUSE_DATASET_IF_EXISTS) — 下载/生成模式。
  • revision (Versionstr, 可选) — 要加载的数据集版本。由于数据集在 Datasets Hub 上拥有自己的 Git 仓库,默认版本“main”对应其“main”分支。您可以使用数据集仓库的 commit SHA 或 git tag 来指定与默认“main”不同的版本。
  • token (strbool, 可选) — 用于 Datasets Hub 上远程文件的 Bearer 令牌(可选字符串或布尔值)。如果设为 True 或未指定,将从 "~/.huggingface" 获取令牌。
  • **config_kwargs (额外的关键字参数) — 构建器类的可选属性,如果提供,将覆盖现有属性。

获取特定配置和数据集的可用拆分(split)列表。

示例

>>> from datasets import get_dataset_split_names
>>> get_dataset_split_names('cornell-movie-review-data/rotten_tomatoes')
['train', 'validation', 'test']

从文件导入

用于加载数据文件的配置。它们在加载本地文件或数据集仓库时使用。

  • 本地文件:load_dataset("parquet", data_dir="path/to/data/dir")
  • 数据集仓库:load_dataset("allenai/c4")

您可以将参数传递给 load_dataset 来配置数据加载。例如,您可以指定 sep 参数来定义用于加载数据的 CsvConfig

load_dataset("csv", data_dir="path/to/data/dir", sep="\t")

Text

class datasets.packaged_modules.text.TextConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None encoding: str = 'utf-8' encoding_errors: typing.Optional[str] = None chunksize: int = 10485760 keep_linebreaks: bool = False sample_by: typing.Literal['line', 'paragraph', 'document'] = 'line' )

参数

  • features — (Features, 可选): 将数据转换为 features
  • encoding — (str, 默认值为 “utf-8”): 解码文件的编码格式。
  • encoding_errors — (str, 可选): 定义编码错误时处理方式的参数。这与 open() 中的 error 参数相同。
  • chunksize — (Features, 可选, 默认值为 “10MB”): 读取数据的块大小。
  • keep_linebreaks — (bool, 默认值为 False): 是否保留换行符。
  • sample_by (Literal["line", "paragraph", "document"], 默认值为 “line”) — 是否按行、段落或文档加载数据。默认情况下,数据集中的一行 = 一行文本。

文本文件的 BuilderConfig。

class datasets.packaged_modules.text.Text

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

CSV

class datasets.packaged_modules.csv.CsvConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None sep: str = ',' delimiter: typing.Optional[str] = None header: typing.Union[int, list[int], str, NoneType] = 'infer' names: typing.Optional[list[str]] = None column_names: typing.Optional[list[str]] = None index_col: typing.Union[int, str, list[int], list[str], NoneType] = None usecols: typing.Union[list[int], list[str], NoneType] = None prefix: typing.Optional[str] = None mangle_dupe_cols: bool = True engine: typing.Optional[typing.Literal['c', 'python', 'pyarrow']] = None converters: dict = None true_values: typing.Optional[list] = None false_values: typing.Optional[list] = None skipinitialspace: bool = False skiprows: typing.Union[int, list[int], NoneType] = None nrows: typing.Optional[int] = None na_values: typing.Union[str, list[str], NoneType] = None keep_default_na: bool = True na_filter: bool = True verbose: bool = False skip_blank_lines: bool = True thousands: typing.Optional[str] = None decimal: str = '.' lineterminator: typing.Optional[str] = None quotechar: str = '"' quoting: int = 0 escapechar: typing.Optional[str] = None comment: typing.Optional[str] = None encoding: typing.Optional[str] = None dialect: typing.Optional[str] = None error_bad_lines: bool = True warn_bad_lines: bool = True skipfooter: int = 0 doublequote: bool = True memory_map: bool = False float_precision: typing.Optional[str] = None chunksize: int = 10000 features: typing.Optional[datasets.features.features.Features] = None encoding_errors: typing.Optional[str] = 'strict' on_bad_lines: typing.Literal['error', 'warn', 'skip'] = 'error' date_format: typing.Optional[str] = None )

CSV 的 BuilderConfig。

class datasets.packaged_modules.csv.Csv

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

JSON

class datasets.packaged_modules.json.JsonConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None encoding: str = 'utf-8' encoding_errors: typing.Optional[str] = None field: typing.Optional[str] = None use_threads: bool = True block_size: typing.Optional[int] = None chunksize: int = 10485760 newlines_in_values: typing.Optional[bool] = None on_mixed_types: typing.Optional[typing.Literal['use_json']] = 'use_json' )

JSON 的 BuilderConfig。

class datasets.Json

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

XML

class datasets.packaged_modules.xml.XmlConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None encoding: str = 'utf-8' encoding_errors: typing.Optional[str] = None )

XML 文件的 BuilderConfig。

class datasets.packaged_modules.xml.Xml

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

Parquet

class datasets.packaged_modules.parquet.ParquetConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None batch_size: typing.Optional[int] = None columns: typing.Optional[list[str]] = None features: typing.Optional[datasets.features.features.Features] = None filters: typing.Union[pyarrow._compute.Expression, list[tuple], list[list[tuple]], NoneType] = None fragment_scan_options: typing.Optional[pyarrow._dataset_parquet.ParquetFragmentScanOptions] = None on_bad_files: typing.Literal['error', 'warn', 'skip'] = 'error' )

参数

  • batch_size (int, 可选) — 用于迭代的 RecordBatches 大小。默认为行组大小(由第一个行组定义)。
  • columns (list[str], 可选) — 要加载的列列表,其他列将被忽略。默认加载所有列。
  • features — (Features, 可选): 将数据转换为 features 指定的格式。
  • filters (Union[pyarrow.dataset.Expression, list[tuple], list[list[tuple]]], 可选) — 仅返回符合过滤条件的行。如果可能,谓词将被下推以利用分区信息或数据源(如 Parquet 统计信息)中找到的内部元数据。否则,将在产生这些 RecordBatches 之前进行过滤。
  • fragment_scan_options (pyarrow.dataset.ParquetFragmentScanOptions, 可选) — Parquet 分片的扫描特定选项。这对于配置缓冲和缓存特别有用。

    4.2.0 新增

  • on_bad_files (Literal["error", "warn", "skip"], 可选, 默认为 “error”) — 指定在遇到损坏文件(无法读取的文件)时该怎么做。允许的值为:

    • ‘error’,在遇到损坏文件时引发异常。
    • ‘warn’,在遇到损坏文件时引发警告并跳过该文件。
    • ‘skip’,跳过损坏文件,且在遇到它们时既不引发异常也不发出警告。

    4.2.0 新增

Parquet 的构建器配置 (BuilderConfig)。

示例

加载列的子集

>>> ds = load_dataset(parquet_dataset_id, columns=["col_0", "col_1"])

流式传输数据并高效地过滤数据,可以选择跳过整个文件或行组

>>> filters = [("col_0", "==", 0)]
>>> ds = load_dataset(parquet_dataset_id, streaming=True, filters=filters)

将流式传输时的最小请求大小从 32MiB(默认)增加到 128MiB,并启用预取

>>> import pyarrow
>>> import pyarrow.dataset
>>> fragment_scan_options = pyarrow.dataset.ParquetFragmentScanOptions(
...     cache_options=pyarrow.CacheOptions(
...         prefetch_limit=1,
...         range_size_limit=128 << 20
...     ),
... )
>>> ds = load_dataset(parquet_dataset_id, streaming=True, fragment_scan_options=fragment_scan_options)

class datasets.packaged_modules.parquet.Parquet

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

Arrow

class datasets.packaged_modules.arrow.ArrowConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None )

Arrow 的构建器配置 (BuilderConfig)。

class datasets.packaged_modules.arrow.Arrow

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

SQL

class datasets.packaged_modules.sql.SqlConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None sql: typing.Union[str, ForwardRef('sqlalchemy.sql.Selectable')] = None con: typing.Union[str, ForwardRef('sqlalchemy.engine.Connection'), ForwardRef('sqlalchemy.engine.Engine'), ForwardRef('sqlite3.Connection')] = None index_col: typing.Union[str, list[str], NoneType] = None coerce_float: bool = True params: typing.Union[list, tuple, dict, NoneType] = None parse_dates: typing.Union[list, dict, NoneType] = None columns: typing.Optional[list[str]] = None chunksize: typing.Optional[int] = 10000 features: typing.Optional[datasets.features.features.Features] = None )

SQL 的构建器配置 (BuilderConfig)。

class datasets.packaged_modules.sql.Sql

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

图像 (Images)

class datasets.packaged_modules.imagefolder.ImageFolderConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None drop_labels: bool = None drop_metadata: bool = None metadata_filenames: list = None filters: typing.Union[pyarrow._compute.Expression, list[tuple], list[list[tuple]], NoneType] = None )

ImageFolder 的构建器配置 (BuilderConfig)。

class datasets.packaged_modules.imagefolder.ImageFolder

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

音频 (Audio)

class datasets.packaged_modules.audiofolder.AudioFolderConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None drop_labels: bool = None drop_metadata: bool = None metadata_filenames: list = None filters: typing.Union[pyarrow._compute.Expression, list[tuple], list[list[tuple]], NoneType] = None )

AudioFolder 的构建器配置。

class datasets.packaged_modules.audiofolder.AudioFolder

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

视频 (Videos)

class datasets.packaged_modules.videofolder.VideoFolderConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None drop_labels: bool = None drop_metadata: bool = None metadata_filenames: list = None filters: typing.Union[pyarrow._compute.Expression, list[tuple], list[list[tuple]], NoneType] = None )

ImageFolder 的构建器配置 (BuilderConfig)。

class datasets.packaged_modules.videofolder.VideoFolder

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

HDF5

class datasets.packaged_modules.hdf5.HDF5Config

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None batch_size: typing.Optional[int] = None features: typing.Optional[datasets.features.features.Features] = None )

HDF5 的构建器配置 (BuilderConfig)。

class datasets.packaged_modules.hdf5.HDF5

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

基于 Arrow 的构建器 (ArrowBasedBuilder),它使用 HF 扩展类型将 HDF5 文件转换为 Arrow 表。

Pdf

class datasets.packaged_modules.pdffolder.PdfFolderConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None drop_labels: bool = None drop_metadata: bool = None metadata_filenames: list = None filters: typing.Union[pyarrow._compute.Expression, list[tuple], list[list[tuple]], NoneType] = None )

ImageFolder 的构建器配置 (BuilderConfig)。

class datasets.packaged_modules.pdffolder.PdfFolder

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

Nifti

class datasets.packaged_modules.niftifolder.NiftiFolderConfig

< >

( name: str = 'default' version: typing.Union[datasets.utils.version.Version, str, NoneType] = 0.0.0 data_dir: typing.Optional[str] = None data_files: typing.Union[datasets.data_files.DataFilesDict, datasets.data_files.DataFilesPatternsDict, NoneType] = None description: typing.Optional[str] = None features: typing.Optional[datasets.features.features.Features] = None drop_labels: bool = None drop_metadata: bool = None metadata_filenames: list = None filters: typing.Union[pyarrow._compute.Expression, list[tuple], list[list[tuple]], NoneType] = None )

NiftiFolder 的 BuilderConfig。

class datasets.packaged_modules.niftifolder.NiftiFolder

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

WebDataset

class datasets.packaged_modules.webdataset.WebDataset

< >

( cache_dir: typing.Optional[str] = None dataset_name: typing.Optional[str] = None config_name: typing.Optional[str] = None hash: typing.Optional[str] = None base_path: typing.Optional[str] = None info: typing.Optional[datasets.info.DatasetInfo] = None features: typing.Optional[datasets.features.features.Features] = None token: typing.Union[bool, str, NoneType] = None repo_id: typing.Optional[str] = None data_files: typing.Union[str, list, dict, datasets.data_files.DataFilesDict, NoneType] = None data_dir: typing.Optional[str] = None storage_options: typing.Optional[dict] = None writer_batch_size: typing.Optional[int] = None config_id: typing.Optional[str] = None **config_kwargs )

在 GitHub 上更新

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