mirror of
				https://github.com/hiyouga/LLaMA-Factory.git
				synced 2025-11-04 18:02:19 +08:00 
			
		
		
		
	Update README_zh.md
Former-commit-id: 1c673d89faca3160627009fcd0a4aa39138570c0
This commit is contained in:
		
							parent
							
								
									ea58cf111e
								
							
						
					
					
						commit
						eb99999ca8
					
				@ -1,4 +1,4 @@
 | 
			
		||||
如果您使用自定义数据集,请务必在 `dataset_info.json` 文件中按照以下格式提供数据集定义。
 | 
			
		||||
如果您使用自定义数据集,请务必按照以下格式在 `dataset_info.json` 文件中添加**数据集描述**。我们在下面也提供了一些例子。
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
"数据集名称": {
 | 
			
		||||
@ -33,11 +33,11 @@
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
添加后可通过指定 `--dataset 数据集名称` 参数使用自定义数据集。
 | 
			
		||||
然后,可通过使用 `--dataset 数据集名称` 参数加载自定义数据集。
 | 
			
		||||
 | 
			
		||||
----
 | 
			
		||||
 | 
			
		||||
该项目目前支持二种格式的数据集:**alpaca** 和 **sharegpt**,其中 alpaca 格式的数据集按照以下方式组织:
 | 
			
		||||
该项目目前支持两种格式的数据集:**alpaca** 和 **sharegpt**,其中 alpaca 格式的数据集按照以下方式组织:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
[
 | 
			
		||||
@ -54,10 +54,11 @@
 | 
			
		||||
]
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
对于上述格式的数据,`dataset_info.json` 中的 `columns` 应为:
 | 
			
		||||
对于上述格式的数据,`dataset_info.json` 中的描述应为:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
"数据集名称": {
 | 
			
		||||
  "file_name": "data.json",
 | 
			
		||||
  "columns": {
 | 
			
		||||
    "prompt": "instruction",
 | 
			
		||||
    "query": "input",
 | 
			
		||||
@ -70,31 +71,62 @@
 | 
			
		||||
 | 
			
		||||
其中 `query` 列对应的内容会与 `prompt` 列对应的内容拼接后作为用户指令,即用户指令为 `prompt\nquery`。`response` 列对应的内容为模型回答。
 | 
			
		||||
 | 
			
		||||
`system` 列对应的内容将被作为系统提示词。`history` 列是由多个字符串二元组构成的列表,分别代表历史消息中每轮的指令和回答。注意历史消息中的回答**也会被用于训练**。
 | 
			
		||||
`system` 列对应的内容将被作为系统提示词。`history` 列是由多个字符串二元组构成的列表,分别代表历史消息中每轮的指令和回答。注意在指令监督学习时,历史消息中的回答**也会被用于训练**。
 | 
			
		||||
 | 
			
		||||
对于预训练数据集,仅 `prompt` 列中的内容会用于模型训练。
 | 
			
		||||
 | 
			
		||||
对于偏好数据集,`response` 列应当是一个长度为 2 的字符串列表,排在前面的代表更优的回答,例如:
 | 
			
		||||
对于**预训练数据集**,仅 `prompt` 列中的内容会用于模型训练,例如:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
{
 | 
			
		||||
  "instruction": "用户指令",
 | 
			
		||||
  "input": "用户输入",
 | 
			
		||||
  "output": [
 | 
			
		||||
    "优质回答",
 | 
			
		||||
    "劣质回答"
 | 
			
		||||
  ]
 | 
			
		||||
[
 | 
			
		||||
  {"text": "document"},
 | 
			
		||||
  {"text": "document"}
 | 
			
		||||
]
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
对于上述格式的数据,`dataset_info.json` 中的描述应为:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
"数据集名称": {
 | 
			
		||||
  "file_name": "data.json",
 | 
			
		||||
  "columns": {
 | 
			
		||||
    "prompt": "text"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
添加偏好数据集需要额外指定 `"ranking": true`。
 | 
			
		||||
对于**偏好数据集**,`response` 列应当是一个长度为 2 的字符串列表,排在前面的代表更优的回答,例如:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
[
 | 
			
		||||
  {
 | 
			
		||||
    "instruction": "用户指令",
 | 
			
		||||
    "input": "用户输入",
 | 
			
		||||
    "output": [
 | 
			
		||||
      "优质回答",
 | 
			
		||||
      "劣质回答"
 | 
			
		||||
    ]
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
对于上述格式的数据,`dataset_info.json` 中的描述应为:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
"数据集名称": {
 | 
			
		||||
  "file_name": "data.json",
 | 
			
		||||
  "ranking": true,
 | 
			
		||||
  "columns": {
 | 
			
		||||
    "prompt": "instruction",
 | 
			
		||||
    "query": "input",
 | 
			
		||||
    "response": "output",
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
----
 | 
			
		||||
 | 
			
		||||
而 sharegpt 格式的数据集按照以下方式组织:
 | 
			
		||||
而 **sharegpt** 格式的数据集按照以下方式组织:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
# 第一种sharegpt格式
 | 
			
		||||
[
 | 
			
		||||
  {
 | 
			
		||||
    "conversations": [
 | 
			
		||||
@ -111,35 +143,14 @@
 | 
			
		||||
    "tools": "工具描述(选填)"
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
# 第二种sharegpt格式
 | 
			
		||||
 | 
			
		||||
[
 | 
			
		||||
  {
 | 
			
		||||
    "type": "chatml",
 | 
			
		||||
    "messages": [
 | 
			
		||||
    {
 | 
			
		||||
      "role": "system",
 | 
			
		||||
      "content": "你是一个很有用的AI助手"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "role": "user",
 | 
			
		||||
      "content": "告诉我一些关于大模型的一些信息"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "role": "assistant",
 | 
			
		||||
      "content": "大模型是一种语言模型"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "source": "unknown"
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
对于上述格式的数据,`dataset_info.json` 中的 `columns` 应为:
 | 
			
		||||
对于上述格式的数据,`dataset_info.json` 中的描述应为:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
"数据集名称": {
 | 
			
		||||
  "file_name": "data.json",
 | 
			
		||||
  "formatting": "sharegpt",
 | 
			
		||||
  "columns": {
 | 
			
		||||
    "messages": "conversations",
 | 
			
		||||
    "system": "system",
 | 
			
		||||
@ -156,4 +167,46 @@
 | 
			
		||||
 | 
			
		||||
其中 `messages` 列应当是一个列表,且符合 `用户/模型/用户/模型/用户/模型` 的顺序。
 | 
			
		||||
 | 
			
		||||
预训练数据集和偏好数据集尚不支持 sharegpt 格式。
 | 
			
		||||
我们同样支持 **openai** 格式的数据集:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
[
 | 
			
		||||
  {
 | 
			
		||||
    "messages": [
 | 
			
		||||
      {
 | 
			
		||||
        "role": "system",
 | 
			
		||||
        "content": "系统提示词(选填)"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "role": "user",
 | 
			
		||||
        "content": "用户指令"
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "role": "assistant",
 | 
			
		||||
        "content": "模型回答"
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
对于上述格式的数据,`dataset_info.json` 中的描述应为:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
"数据集名称": {
 | 
			
		||||
  "file_name": "data.json",
 | 
			
		||||
  "formatting": "sharegpt",
 | 
			
		||||
  "columns": {
 | 
			
		||||
    "messages": "messages"
 | 
			
		||||
  },
 | 
			
		||||
  "tags": {
 | 
			
		||||
    "role_tag": "role",
 | 
			
		||||
    "content_tag": "content",
 | 
			
		||||
    "user_tag": "user",
 | 
			
		||||
    "assistant_tag": "assistant",
 | 
			
		||||
    "system_tag": "system"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
预训练数据集和偏好数据集**尚不支持** sharegpt 格式。
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user