InputOutputToMessages¶
- class torchtune.data.InputOutputToMessages(train_on_input: bool = False, column_map: Optional[Dict[str, str]] = None, new_system_prompt: Optional[str] = None, image_dir: Optional[Path] = None)[source]¶
消息转换类,用于将具有“input”和“output”字段(或 column_map 中指定的等效字段)的单个样本分别转换为用户和助手消息。这对于具有两列的数据集很有用,其中一列包含用户提示字符串,另一列包含模型响应字符串
| input | output | |-----------------|------------------| | "user prompt" | "model response" |
- 参数:
train_on_input (bool) – 模型是否在用户提示上进行训练。默认为 False。
column_map (Optional[Dict[str, str]]) – 用于将预期的“input”和“output”列名更改为数据集中的实际列名的映射。键应为“input”和“output”,值应为实际列名。默认为 None,保留默认的“input”和“output”列名。
new_system_prompt (Optional[str]) – 如果指定,则前置系统消息。这可以用作指导模型响应的指令。默认为 None。
image_dir (Optional[Path]) – 包含图像的目录的路径,该路径前置于数据集中的所有图像路径。例如,如果
image_dir="/home/user/dataset/"` 且 样本 图像 路径 为 ``"images/1.jpg"
,则将加载的最终图像路径为"/home/user/dataset/images/1.jpg"
。如果为 None,则假定图像在当前工作目录中可用或位于远程 URL 上。对于纯文本,请保留为 None。默认为 None。
- 引发:
ValueError – 如果提供了
column_map
且input
不在column_map
中,或者output
不在column_map
中。ValueError – 如果提供了
image_dir
但image
不在column_map
中。