Execute parâmetros completos de ajuste fino, ajuste fino Lora e ajuste fino de qlora para llama3. Além disso, o ajuste fino do modelo QWEN1.5 também é suportado. Se você deseja substituí -lo por outro modelo, o mais importante é pré -processar os dados.
2023/07/28: Adicione a ajuste fina ao Baichuan2-7b-Chat.
2024/07/24: Adicionado ajuste fino ao LLAMA3.1-8B-Instruct. transformers==4.43.1 e accelerate==0.33.0 .
2024/07/22:
Adicione o ajuste fino ao GLM-9b-bate-papo. Nota: Você precisa substituir a linha 791 em Modeling_Chatgl.py por padding_mask = padding_mask.to(torch.bfloat16) . A versão dos Transformers necessários é 4.42.4 . Depois de instalar o pacote no requisitos.txt, você precisa reinstalar os transformadores.
Adicionado ajuste fino ao QWEN1.5-7B-ChAT.
Adicione o ajuste fino ao QWEN2-7B-INSTRUTA.
Adicione o ajuste fino ao Yi1.5-6b-Chat.
2024/07/19: Adicionado ajuste fino ao InternLM2.5. NOTA: O InternLM2.5 não suporta ajuste fino usando BF16, portanto, o FP16 é selecionado no comando RUN.
2024/10/04: Adicionado ajuste fino ao QWEN2.5-7B-Instruct. Adicione o ajuste fino ao LLAMA3.2-3B-INSTRUTA. pip install transformers --upgrade e pip install accelerate --upgrade .
Execute o dispositivo: basta usar uma placa gráfica com memória gráfica 24G.
python==3.8.8
pip install -r requirements.txt
Os dados são armazenados em dados, o formato específico é:
[
{
"conversations" : [
{
"from" : " user " ,
"value" : "你是那个名字叫ChatGPT的模型吗? "
},
{
"from" : " assistant " ,
"value" : "我的名字是西西嘛呦,并且是通过家里蹲公司的大数据平台进行训练的。 "
}
]
}
...
]Várias rodadas de conversas também são preparadas com dados no formato acima.
Digite a pasta Model_Hub, execute python download_modelscope.py para baixar o modelo LLAMA3-8B-INSTRUCT.
Digite a pasta de script.
Devido a restrições da máquina, não há ajuste fino de parâmetro completo aqui. Você pode tentar se tiver as condições.
O número de placas gráficas especificadas por nproc_per_node e cuda_visible_devices deve ser consistente.
NCCL_P2P_DISABLE=1
NCCL_IB_DISABLE=1
CUDA_VISIBLE_DEVICES=0,1,2,4,5,6,7
torchrun
--nproc_per_node 7
--nnodes 1
--node_rank 0
--master_addr localhost
--master_port 6601
../finetune_llama3.py
--model_name_or_path " ../model_hub/LLM-Research/Meta-Llama-3-8B-Instruct/ "
--data_path " ../data/Belle_sampled_qwen.json "
--bf16 True
--output_dir " ../output/llama3_8B_lora "
--num_train_epochs 100
--per_device_train_batch_size 1
--per_device_eval_batch_size 1
--gradient_accumulation_steps 8
--evaluation_strategy " no "
--save_strategy " steps "
--save_steps 5
--save_total_limit 1
--learning_rate 1e-5
--weight_decay 0.1
--adam_beta2 0.95
--warmup_ratio 0.01
--lr_scheduler_type " cosine "
--logging_steps 1
--report_to " none "
--model_max_length 4096
--gradient_checkpointing True
--lazy_preprocess True
--deepspeed " ../config/ds_config_zero3_72B.json "
--use_loraO número de placas gráficas especificadas por nproc_per_node e cuda_visible_devices deve ser consistente. Use Qlora para concluir o treinamento em um único 4090.
NCCL_P2P_DISABLE=1
NCCL_IB_DISABLE=1
CUDA_VISIBLE_DEVICES=0,1,2,4,5,6,7
torchrun
--nproc_per_node 7
--nnodes 1
--node_rank 0
--master_addr localhost
--master_port 6601
../finetune_llama3.py
--model_name_or_path " ../model_hub/LLM-Research/Meta-Llama-3-8B-Instruct/ "
--data_path " ../data/Belle_sampled_qwen.json "
--bf16 True
--output_dir " ../output/llama3_8B_qlora "
--num_train_epochs 100
--per_device_train_batch_size 1
--per_device_eval_batch_size 1
--gradient_accumulation_steps 16
--evaluation_strategy " no "
--save_strategy " steps "
--save_steps 5
--save_total_limit 1
--learning_rate 1e-5
--weight_decay 0.1
--adam_beta2 0.95
--warmup_ratio 0.01
--lr_scheduler_type " cosine "
--logging_steps 1
--report_to " none "
--model_max_length 4096
--gradient_checkpointing True
--lazy_preprocess True
--deepspeed " ../config/ds_config_zero2.json "
--use_lora
--load_in_4bit
--q_loraRaciocínio após o treinamento:
问题: 在互联网普及的时代,社交媒体已经成为了现代人生活中不可缺少的一部分。从微信、微博、 Facebook到Twitter 、 Instagram等等,社交媒体不仅满足了人们交流互动的需求,同时让人们更加容易地分享自己的生活瞬间、获取新闻资讯、找到志同道合的人群以及推广自己的业务。然而,与此同时,社交媒体也带来了一系列问题,如滥用个人信息、泄露隐私等。因此,如何正确地使用社交媒体已经成为了一个备受关注的话题。,总结上面这段文本的几个关键词
微调前结果: Arrrr , shiver me timbers ! Ye be wantin ' me to summarize the key words from that there text , eh ? Alright then , matey ! Here be the main points :
1. Social media ( the scourge o ' the seven seas ... er , I mean , the modern world )
2. Communication ( the lifeblood o ' the pirate' s existence ... er , I mean , the need for people to interact )
3. Sharing ( the treasure o ' the digital age... er, I mean, the ability to share one' s life moments )
4. Information ( the booty o ' the internet ... er , I mean , the news and knowledge shared online )
5. Privacy ( the anchor o ' security... er, I mean, the need to protect one' s personal info )
6. Correct usage ( the map to avoidin ' the rocky shores o' social media misuse ... er , I mean , the importance of using social media responsibly )
So hoist the colors , me hearties , and remember to use social media like a proper pirate : with caution , respect , and a keen eye for treasure !
微调后结果: 社交媒体、交流、分享、隐私、滥用信息O código se refere principalmente a:
O modelo pode ser baixado no escopo do modelo: