为什么在 HuggingFace Pipelines 中直接使用 KeyDataset 而不是数据集

问题描述 投票:0回答:1

链接示例:https://huggingface.co/docs/transformers/main_classes/pipelines#pipeline-batching

示例:

from transformers import pipeline
from transformers.pipelines.pt_utils import KeyDataset
import datasets

dataset = datasets.load_dataset("imdb", name="plain_text", split="unsupervised")
pipe = pipeline("text-classification", device=0)
for out in pipe(KeyDataset(dataset, "text"), batch_size=8, truncation="only_first"):
    print(out)

为什么要使用

KeyDataset
而不是直接调用数据集,如下所示:

for out in pipe(dataset["text"], batch_size=8, truncation="only_first"):
    print(out)
huggingface-transformers huggingface huggingface-datasets
1个回答
0
投票

dataset["text"]
将为您提供一个列表,而
KeyDataset(dataset, "text")
将为您提供一个
Dataset
实例,您可以用它做比简单列表更多的事情。您在用例中使用哪一个并不重要。

© www.soinside.com 2019 - 2024. All rights reserved.