Para métodos mais FineTune para LLM, consulte LLM-FineTune-Guide
Este repositório é um tutorial para o Finetuning LLAMA-7B com conjuntos de dados chineses! Pesquiso e combino o conjunto de dados e o método para o Finetuning meu próprio LLM para tarefas complexas de PNL, como resumo, resposta a perguntas, geração de texto, aumento de dados personalizados, etc.
Como o Stanford Alpaca-7b original precisa de muitos recursos da GPU, concentro-me em pesquisar o método com baixo consumo de GPU.
Então, aqui está como reproduzir:
$ pip install -r requirements.txt$ pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1+cu116 --extra-index-url https://download.pytorch.org/whl/cu116Este repositório combinou todos os conjuntos de dados usando a instrução inglesa, construção chinesa-output:
alpaca_data.json : conjunto de dados original de Stanford Alpacaalpaca_data_cleansed.json : limpeza por gururise/alpacadatacleanedalpaca-zhCN.json : traduzido por carbonz0/alpaca-chinese-dadosalpaca-zhTW.json : traduza para chinês tradicional usando OpenCCalpaca-en-zh.json : Combine a instrução/entrada em inglês e a saída chinesa por ntunlplab/tradicional-chinese-alpaca: (o conjunto de dados chinês tradicional traduzido por API ChatGPT ( gpt-3.5-turbo ) por NTunlPlab/tradicional-Chinese-alpaca (atualização em 2023.03.29) Método Finetune de referência fornecido por tloen/alpaca-lora
LLaMA
$ cd finetune/
$ python finetune.py --base_model decapoda-research/llama-7b-hf --data_dir ../data/alpaca-en-zh.json --output_dir ../finetuned/llama-7b-hf_alpaca-en-zh --lora_target_modules ' ["q_proj", "v_proj"] ' BLOOM
$ cd finetune/
$ python finetune.py --base_model bigscience/bloomz-7b1-mt --data_dir ../data/alpaca-en-zh.json --output_dir ../finetuned/bloomz-7b1-mt_alpaca-en-zh --lora_target_modules ' ["query_key_value"] 'torchrun para treinamento distribuído em multi-GPUs LLaMA
$ cd finetune/
$ torchrun --standalone --nnodes=1 --nproc_per_node=4 finetune.py --base_model decapoda-research/llama-7b-hf --data_dir ../data/alpaca-en-zh.json --output_dir ../finetuned/llama-7b-hf_alpaca-en-zh --lora_target_modules ' ["q_proj", "v_proj"] ' BLOOM
$ cd finetune/
$ torchrun --standalone --nnodes=1 --nproc_per_node=4 finetune.py --base_model bigscience/bloomz-7b1-mt --data_dir ../data/alpaca-en-zh.json --output_dir ../finetuned/bloomz-7b1-mt_alpaca-en-zh --lora_target_modules ' ["query_key_value"] 'Eu colecionei diferentes tarefas de domínio no meu repositório: Instrução-Finetune-Datasets
Bem -vindo Cooperations! Entre em contato comigo em: [email protected] . Eu gostaria de experimentar tarefas de diferentes domínios, como investimento, fraude, comércio eletrônico, direito, assistência médica, ...
Para servir seu próprio serviço de modelo por meio da API e UI simples do site!
Modelo API
$ cd serve/
$ python api.pyDemo ui
$ cd serve/
$ python ui.pyEu organizei métodos Finetune para LLM em LLM-FineTune-Guide
Eu selecionei muito método que tenta executar grandes modelos de linguagem com menos recursos da GPU:
Veja a lista completa: ChatGPT-Alternatives
@misc{alpaca-7b-chinese,
author = {JiunYi Yang},
title = {Alpaca-7B Chinese: Finetune LLaMA-7B with Chinese instruction datasets},
year = {2023},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {url{https://github.com/A-baoYang/alpaca-7b-chinese}},
}