Um chatbot para Discord usando o modelo LLaMA da Meta, quantizado em 4 bits. O modelo de 13 bilhões de parâmetros cabe em menos de 9 GiB VRAM.
Antes de fazer qualquer coisa, você precisará de um token de bot. Se você não tiver um token de bot, siga este guia para criar um bot e depois adicione-o ao seu servidor.
Atualmente, este é apenas Linux, mas você poderá fazê-lo funcionar com outros sistemas operacionais.
pip install virtualenv
) e CUDA instalados.git clone https://github.com/AmericanPresidentJimmyCarter/yal-discord-bot/
cd yal-discord-bot
python3 -m virtualenv env
source env/bin/activate
pip install -r requirements.txt
git clone https://github.com/huggingface/transformers/
cd transformers
git checkout 20e54e49fa11172a893d046f6e7364a434cbc04f
pip install -e .
cd ..
cd bot/llama_model
python setup_cuda.py install
cd ../..
wget https://huggingface.co/Neko-Institute-of-Science/LLaMA-13B-4bit-128g/resolve/main/llama-13b-4bit-128g.safetensors
cd bot
python -m bot $YOUR_BOT_TOKEN --allow-queue -g $YOUR_GUILD --llama-model= " Neko-Institute-of-Science/LLaMA-13B-4bit-128g " --groupsize=128 --load-checkpoint= " path/to/llama/weights/llama-13b-4bit-128g.safetensors "
Certifique-se de que $YOUR_BOT_TOKEN
e $YOUR_GUILD
estejam definidos como deveriam ser, --load-checkpoint=..."
esteja apontando para o local correto dos pesos e --llama-model=...
esteja apontando para o local correto localização no Huggingface para encontrar a configuração dos pesos.
Você pode usar qualquer modelo ALPACA definindo o sinalizador --alpaca
, que permitirá adicionar strings de entrada, bem como formatar automaticamente seu prompt no formato esperado pelo ALPACA.
Os pesos ALPACA recomendados de 4 bits são os seguintes:
Ou GPT4 ajustado (melhores respostas de codificação, conteúdo mais restritivo):
cd bot
python -m bot $YOUR_BOT_TOKEN --allow-queue -g $YOUR_GUILD --alpaca --groupsize=128 --llama-model= " elinas/alpaca-30b-lora-int4 " --load-checkpoint= " path/to/alpaca/weights/alpaca-30b-4bit-128g.safetensors "
(c) Presidente americano de 2023, Jimmy Carter