File size: 2,531 Bytes
a7571d7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
sft:
  one_dataset_every_time: true  # false表示一次把所有sft数据吃进内存,true表示一次只使用一个dataset
  lr: 0.00002  # 学习率
  batch_size: 32  # 每张卡的batch size
  grad_accumulation_steps: 1  # 梯度累计
  pad_token_id: 0  # pad token id
  max_length: 1024   # 序列最大长度
  epochs: 5  # 训练的epoch数
  weight_decay: 0.1  # 权重衰减
  interval: 2000  # 保存权重的步数
  torch_dtype: null  # 默认使用混合精度训练,可以制定为torch.float32,torch.float16或者torch.bfloat16
  model_path: "../ckpt/MiniLLM-0.2B-WithWudao/final/model.pt"  # 预训练模型权重路径
  config_path: "../config/MiniLLM-0.2B-WithWudao-SFT/bert4torch_config.json"  # 预训练模型权重config
  save_dir: "../ckpt/MiniLLM-0.2B-WithWudao-SFT"  # 模型ckpt保存路径
  dataset_save_dir: "../sft_data"  # sft的训练数据所在路径

data_process:
  MAX_LENGTH: 1024  # 序列最大长度
  pad_token_id: 0  # pad_token_id
  eos_token_id: 2  # eos_token_id
  dataset_src_dir: "/home/hfai/h01305/data/corpus/sft/common/"  # sft语料所在路径
  file_names: [
          "Tongjilibo/self_cognition.json",
          "alpaca-zh/alpaca_gpt4_data_zh.json",
          "BelleGroup/Belle_open_source_0.5M.json",
          "BelleGroup/Belle_open_source_1M.json",
          "BelleGroup/school_math_0.25M.json",
          "deepctrl-sft-data/sft_data_zh.jsonl",
          "moss-002-sft-data/zh_helpfulness.json",
          "moss-002-sft-data/zh_honesty.json",
          "moss-003-sft-data/moss-003-sft-no-tools.jsonl",
          "CodeChat/continue_zh.jsonl",
          "CodeChat/continue_zh_2.jsonl",
          "ShareGPT-Chinese-English-90k/common_zh_70k.jsonl",
          "ShareGPT-Chinese-English-90k/computer_cn_26k_continue.jsonl",
          "ShareGPT-Chinese-English-90k/computer_zh_26k.jsonl",
          "ShareGPT-Chinese-English-90k/unknow_zh_38k.jsonl",
          "ShareGPT-Chinese-English-90k/unknow_zh_38k_continue.jsonl",
          "firefly-train-1.1M/firefly-train-1.1M.jsonl"
      ]  # sft待处理的数据集,因为数据集很大,按照实际情况按需使用,比如只使用alpaca-zh
  dataset_save_dir: "../sft_data"  # 处理好的文件存储路径
  max_samples: null  # None表示不限制,不为None用于测试小样本快速验证
  max_samples_per_file: 100000  # 每个文件最多能容纳的样本量,用于切分大文件
  name: MiniLLM  # 机器人名字
  author: Tongjilibo  # 机器人作者
  date: 2024  # 机器人训练时间