wikitext_dataset¶
- torchtune.datasets.wikitext_dataset(tokenizer: ModelTokenizer, source: str = 'EleutherAI/wikitext_document_level', subset: str = 'wikitext-103-v1', max_seq_len: Optional[int] = None, packed: bool = False, filter_fn: Optional[Callable] = None, split: str = 'train', **load_dataset_kwargs: Dict[str, Any]) Union[TextCompletionDataset, PackedDataset] [source]¶
支持类似于 wikitext 的数据集系列,wikitext 是一个由维基百科全文文章组成的非结构化文本语料库。
- 参数:
tokenizer (ModelTokenizer) – 模型使用的分词器,该分词器实现了
tokenize_messages
方法。source (str) – Hugging Face 上数据集仓库的路径。对于本地数据集,将 source 定义为数据文件类型(例如“json”、“csv”、“text”),并在
data_files
中传入文件路径。有关更多详细信息,请参阅 Hugging Face 的load_dataset
(https://hugging-face.cn/docs/datasets/en/package_reference/loading_methods#datasets.load_dataset.path)。subset (str) – 要使用的数据子集名称,请参阅 wikitext 页面 以获取可用的子集。默认为
"wikitext-103-v1"
。max_seq_len (Optional[int]) – 返回的输入和标签 token id 列表中的最大 token 数。默认为 None,禁用截断。我们建议将其设置为您可以容纳在内存中且模型支持的最大值。例如,llama2-7B 支持的最大序列长度为 4096。
packed (bool) – 是否在训练之前将数据集打包到
max_seq_len
。默认为 False。filter_fn (Optional[Callable]) – 用于在任何预处理之前过滤数据集的可调用对象。有关更多详细信息,请参阅 Hugging Face 文档。
split (str) –
datasets.load_dataset
的split
参数。您可以使用此参数加载给定 split 的子集,例如split="train[:10%]"
。默认为“train”。**load_dataset_kwargs (Dict[str, Any]) – 要传递给
load_dataset
的其他关键字参数。
- 返回:
- 配置的
TextCompletionDataset
或
PackedDataset
如果packed=True
- 配置的
- 返回类型:
Union[TextCompletionDataset, PackedDataset]