Используйте Qlora, чтобы точно настроить модель большого языка Китая.
Используйте Qlora для Fine-Tune Baichuan-7b, а код более краткий: https://github.com/taishan1994/baichuan-qlora-tuning
numpy == 1.24 . 2
pandas == 2.0 . 0
nltk == 3.7
transformers == 4.30 . 0. dev0
accelerate == 0.20 . 0. dev0
deepspeed == 0.9 . 2
peft == 0.4 . 0. dev0
datasets == 2.12 . 0
evaluate == 0.2 . 2
sentencepiece == 0.1 . 97
scipy == 1.10 . 1
icetk
cpm_kernels
mpi4py == 3.1 . 4 - - output #训练保存lora权重
- - - - chatglm
- - - - alpaca
- - - - bloom
- - data
- - - - msra
- - - - - - instruct_data
- - - - - - - - train . json #指令数据
- - model_hub
- - - - BELLE - 7 B - 2 M #bloom权重
- - - - chatglm - 6 b #chatGLM权重
- - - - 7 B : #英文LLaMA原始权重
- - - - 7 B - hf : #英文权重转换为hugging face格式权重
- - - - chinese - llama - plus - lora - 7 b : #中文llama-7b的lora权重
- - - - chinese - alpaca - plus - lora - 7 b : #中文alpaca-7b的lora权重
- - - - chinese - alpaca - 7 b : #合并lora后的最终的模型
- - - - tokenizer . model : #原始llama的7B文件
- - - - convert_llama_weights_to_hf . py #llama转换为hugging face格式
- - - - merge_llama_with_chinese_lora . py #合并lora到预训练模型
- - tools
- - - - get_version . py #获取python包版本
- - - - get_used_gpus . py #循环打印使用的GPU显卡
- - chat . py # 闲聊
- - qlora . py # 4bit训练
- - process . py # 测试处理数据Чатглм-6B Адрес загрузки: Облачный диск Tsinghua University (tsinghua.edu.cn)
python qlora . py - - model_name = "chatglm" - - model_name_or_path = "./model_hub/chatglm-6b" - - trust_remote_code = True - - dataset = "msra" - - source_max_len = 128 - - target_max_len = 64 - - do_train - - save_total_limit = 1 - - padding_side = "left" - - per_device_train_batch_size = 8 - - do_eval - - bits = 4 - - save_steps = 10 - - gradient_accumulation_steps = 1 - - learning_rate = 1e-5 - - output_dir = "./output/chatglm/" - - lora_r = 8 - - lora_alpha = 32Модель Llama, официально выпущенная Facebook, запрещена коммерческим использованием, и у чиновника нет официальных весов модели с открытым исходным кодом (хотя в Интернете уже есть много сторонних адресов загрузки). Чтобы следовать соответствующему разрешению, в настоящее время невозможно опубликовать полные веса модели. Пожалуйста, поймите (то же самое верно за границей в настоящее время). Ищите адрес загрузки самостоятельно.
python convert_llama_weights_to_hf.py --input_dir ./ --model_size 7B --output_dir ./7B-hf . Если сообщается об ошибке: If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0 , вы можете pip install --upgrade protobuf==3.20.1 , а затем: python convert_llama_weights_to_hf.py --input_dir ./ --model_size tokenizer_only --output_dir ./7B-hf . Наконец мы можем получить 7B-HF.python merge_llama_with_chinese_lora.py --base_model "./7B-hf" --lora_model "./chinese-llama-plus-lora-7b,chinese-alpaca-plus-lora-7b" --output_type "huggingface" --output_dir "./chinese-alpaca-7b" . Наконец, мы можем получить китайский-альпака-7b. python qlora . py - - model_name = "chinese_alpaca" - - model_name_or_path = "./model_hub/chinese-alpaca-7b" - - trust_remote_code = False - - dataset = "msra" - - source_max_len = 128 - - target_max_len = 64 - - do_train - - save_total_limit = 1 - - padding_side = "right" - - per_device_train_batch_size = 8 - - do_eval - - bits = 4 - - save_steps = 10 - - gradient_accumulation_steps = 1 - - learning_rate = 1e-5 - - output_dir = "./output/alpaca/" - - lora_r = 8 - - lora_alpha = 32Belle-7b-2m Адрес загрузки: Bellegroup/Belle-7b-2m в Main (guggingface.co)
python qlora . py - - model_name = "chinese_bloom" - - model_name_or_path = "./model_hub/BELLE-7B-2M" - - trust_remote_code = False - - dataset = "msra" - - source_max_len = 128 - - target_max_len = 64 - - do_train - - save_total_limit = 1 - - padding_side = "left" - - per_device_train_batch_size = 8 - - do_eval - - bits = 4 - - save_steps = 10 - - gradient_accumulation_steps = 1 - - learning_rate = 1e-5 - - output_dir = "./output/bloom/" - - lora_r = 8 - - lora_alpha = 32 python chat . py - - model_name "chatglm" - - base_model "./model_hub/chatglm-6b" - - tokenizer_path "./model_hub/chatglm-6b" - - lora_model "./output/chatglm/adapter_model" - - with_prompt - - interactiveКак обучить свои собственные данные? Формат данных:
{
"data" : [
{ "instruction" : "" , "input" : "" , "output" : "" },
{ "instruction" : "" , "input" : "" , "output" : "" },
...
]
}Затем добавьте свой собственный набор данных в то место, где данные определены в Qlora.py. Наконец, определите соответствующие параметры сами при выполнении команды.
Liucongg/Chatglm-Finetuning: на основе модели Chatglm-6B, выполняются конкретные задачи с тонкой настройкой вниз по течению.
Thudm/Chatglm-6b: Chatglm-6b: открытая двуязычная языковая модель языка диалога | Модель языка двуязычного диалога с открытым исходным кодом (github.com)
Haggingface/Peft:? PEFT: современная параметром, эффективная тонкая настройка. (github.com)
YMCUI/Китайская-Лама-Альпака: китайская лама и альпака, модель на больших языках + локальный процессор/графический процессор.
Lianjiatech/Belle: Belle: Be Be A Walls Language Model Engine (модель китайского диалога с открытым исходным кодом) (github.com)
Artidoro/Qlora: Qlora: Эффективное создание квантовых LLMS (github.com)
Какой добрый человек, Кадо, вы можете попробовать последний эффект? Аренда AutoDL недостаточно, чтобы свести концы с концами