快捷方式

slimorca_dataset

torchtune.datasets.slimorca_dataset(tokenizer: ModelTokenizer, *, source: str = 'Open-Orca/SlimOrca-Dedup', column_map: Optional[Dict[str, str]] = None, train_on_input: bool = False, new_system_prompt: Optional[str] = None, packed: bool = False, split: str = 'train', **load_dataset_kwargs: Dict[str, Any]) Union[SFTDataset, PackedDataset][source]

支持 SlimOrca 风格 的对话数据集系列。

训练期间提示的屏蔽由 train_on_input 标志控制,默认情况下设置为 False - 如果 train_on_input 为 True,则提示在训练期间使用并有助于损失。 - 如果 train_on_input 为 False,则提示将被屏蔽(令牌替换为 -100)

参数::
  • tokenizer (ModelTokenizer) – 模型使用的分词器,该模型实现了 tokenize_messages 方法。

  • source (str) – Hugging Face 上数据集库的路径。对于本地数据集,将 source 定义为数据文件类型(例如“json”、“csv”、“text”),在 data_files 中传入文件路径,并设置 split="train"。有关更多详细信息,请参阅 Hugging Face 的 load_dataset。默认值为 Open-Orca/SlimOrca-Dedup

  • column_map (Optional[Dict[str, str]]) – 从消息变换中预期的列到数据集中新列名的映射 ShareGPTToMessages。键应为“conversations”,值应为新列名。如果为 None,则使用默认列名 "conversations"Open-Orca/SlimOrca-Dedup 中。

  • train_on_input (bool) – 模型是否在提示上训练。默认值为 False。

  • new_system_prompt (Optional[str]) – 如果指定,则将系统消息附加到每个样本的开头。这可以作为指导模型响应的说明。设置此项将覆盖数据集中已存在的任何系统消息。默认值为 None。

  • packed (bool) – 是否在训练之前将数据集打包到分词器的 max_seq_len。默认值为 False。

  • split (str) – split 用于 datasets.load_dataset 的参数。您可以使用此参数加载给定拆分的子集,例如 split="train[:10%]"。默认值为“train”。

  • **load_dataset_kwargs** (Dict[str, Any]) – 传递给 load_dataset 的其他关键字参数。

返回值:

使用 SlimOrca 源数据配置的数据集

返回值类型:

Union[SFTDataset, PackedDataset]

引发:

ValueError – 如果 packed=Truetokenizer.max_seq_len 未设置。

示例

>>> ds = slimorca_dataset(model_transform=tokenizer)
>>> for input, label in ds:
>>>     print(input)
>>>     print(label)
>>>
>>> Sample Output:
>>> [1, 351, 82, 391, 221, 220, 193, 12, 471, ..., 2]
>>> [-100, -100, -100, -100, -100, -100, -100, -100, 471, ..., 2]

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得答案

查看资源