2024-04-22 简化
2023-10-18 微调推理测试初步完成
2023-10-17 initial visualglm_finetuning
- pip install -U -r requirements.txt
- 如果无法安装 , 可以切换官方源 pip install -i https://pypi.org/simple -U -r requirements.txt
open_data https://github.com/ssbuild/open_data
单条数据示例
p prefix optional
q question optional
a answer must
{"id": 1, "paragraph": [{"q": "<img>../assets/demo.jpeg</img>\n图中的狗是什么品种?", "a": "图中是一只拉布拉多犬。"}]}
或者
{
"id": 0,
"conversations": [
{
"from": "user",
"value": "<img>../assets/demo.jpeg</img>\n图中的狗是什么品种?"
},
{
"from": "assistant",
"value": "图中是一只拉布拉多犬。"
}
]
}
# infer.py 推理预训练模型
# infer_finetuning.py 推理微调模型
# infer_lora_finetuning.py 推理lora微调模型
python infer.py
量化等级 | 最低 GPU 显存 |
---|---|
FP16(无量化) | 13 GB |
INT8 | 10 GB |
INT4 | 6 GB |
# 制作数据
cd scripts
bash train_full.sh -m dataset
or
bash train_lora.sh -m dataset
or
bash train_ptv2.sh -m dataset
注: num_process_worker 为多进程制作数据 , 如果数据量较大 , 适当调大至cpu数量
dataHelper.make_dataset_with_args(data_args.train_file,mixed_data=False, shuffle=True,mode='train',num_process_worker=0)
# 全参数训练
bash train_full.sh -m train
# lora adalora ia3
bash train_lora.sh -m train
# ptv2
bash train_ptv2.sh -m train
- pytorch-task-example
- chatmoss_finetuning
- chatglm_finetuning
- chatglm2_finetuning
- t5_finetuning
- llm_finetuning
- llm_rlhf
- chatglm_rlhf
- t5_rlhf
- rwkv_finetuning
- baichuan_finetuning
- baichuan2_finetuning
- xverse_finetuning
- aigc_serving
- aigc_evals
纯粹而干净的代码
https://github.com/THUDM/VisualGLM-6B