ray.data.from_huggingface#
- ray.data.from_huggingface(dataset: datasets.Dataset | datasets.IterableDataset, parallelism: int = -1, concurrency: int | None = None, override_num_blocks: int | None = None) MaterializedDataset | Dataset[源代码]#
从 Hugging Face Datasets Dataset 创建一个
MaterializedDataset,或从 Hugging Face Datasets IterableDataset 创建一个Dataset。对于IterableDataset,我们使用流式实现来读取数据。如果数据集是一个公开的 Hugging Face 数据集,并且托管在 Hugging Face Hub 上,且未应用任何转换,那么 托管的 parquet 文件 将被传递给
read_parquet()以执行分布式读取。所有其他情况将通过单节点读取完成。示例
import ray import datasets hf_dataset = datasets.load_dataset("tweet_eval", "emotion") ray_ds = ray.data.from_huggingface(hf_dataset["train"]) print(ray_ds) hf_dataset_stream = datasets.load_dataset("tweet_eval", "emotion", streaming=True) ray_ds_stream = ray.data.from_huggingface(hf_dataset_stream["train"]) print(ray_ds_stream)
MaterializedDataset( num_blocks=..., num_rows=3257, schema={text: string, label: int64} ) Dataset( num_rows=3257, schema={text: string, label: int64} )- 参数:
dataset – 一个 Hugging Face Datasets Dataset 或 Hugging Face Datasets IterableDataset。DatasetDict 和 IterableDatasetDict 不受支持。
parallelism – 此参数已弃用。请使用
override_num_blocks参数。concurrency – Ray 任务的最大并发运行数量。设置此项以控制并发运行的任务数量。这不会改变运行的总任务数或输出的总块数。默认情况下,并发性是根据可用资源动态决定的。
override_num_blocks – 覆盖所有读取任务的输出块数量。默认情况下,输出块的数量是根据输入数据大小和可用资源动态决定的。在大多数情况下,您不应手动设置此值。
- 返回:
一个
Dataset持有来自 Hugging Face Datasets Dataset 的行。