Last active
June 13, 2023 02:38
-
-
Save viniciusgonmelo/4856a7ba0ecbf3dc01a20ca921c8ad11 to your computer and use it in GitHub Desktop.
Executa o modelo Llama 7B com o Llama.cpp.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
set -e | |
# Baixar o modelo pré-treinado e o prompt em português: | |
# - https://huggingface.co/TheBloke/LLaMa-7B-GGML/tree/main | |
# Llama 13B de 4 bit otimizado, "llama-7b.ggmlv3.q8_0.bin" | |
script_dir="$(dirname "$0")" | |
prompt_template=${prompt_template:-"${script_dir}/prompt-PT-BR.txt"} | |
user_name="${user:-USUÁRIO}" | |
ai_name="${ai:-LLAMA-7B-Q8-0}" | |
prompt_file=$(mktemp /tmp/prompt.XXXXXXX) | |
sed -e "s/\[\[USER_NAME\]\]/$user_name/g" \ | |
-e "s/\[\[AI_NAME\]\]/$ai_name/g" \ | |
$prompt_template > $prompt_file | |
# Opções pra equilibrar os recursos e rodar em um laptop simples: | |
# https://github.com/ggerganov/llama.cpp/blob/master/examples/main/README.md | |
# --mlock: força uso só da RAM, sem comprimir ou usar swap | |
# --no-nmap: não mapeia o modelo na RAM; carregamento mais lento; ajuda a rodar modelos | |
# com menos RAM | |
# -t --threads: número de threads que o llama.cpp usa pra computação; o exemplo - 7 - é para | |
# um laptop com 4 núcleos, 2 threads por núcleo (não uso 8 pra haver CPU pras atividades | |
# do sistema) | |
# --reverse-prompt e --in-prefix devem ser mantidas como estão | |
# https://github.com/ggerganov/llama.cpp/blob/master/examples/main/README.md#in-prefix | |
# --model: caminho pro modelo | |
llama.cpp --ctx-size 512 \ | |
--batch-size 1024 \ | |
--n-predict 256 \ | |
--keep 48 \ | |
--repeat-penalty 1.0 \ | |
--interactive \ | |
--model ${HOME}/modelos/llama-7b.ggmlv3.q8_0.bin \ | |
--file ${prompt_file} \ | |
--reverse-prompt "${user_name}:" \ | |
--in-prefix ' ' \ | |
--threads 7 \ | |
--mlock \ | |
"$@" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Transcrição de um diálogo, onde [[USER_NAME]] interaje com um Assistente chamado [[AI_NAME]]. [[AI_NAME]] é prestativo, bondoso, honesto, bom com as palavras e nunca falha em responder aos pedidos de [[USER_NAME]] imediatamente e com precisão. | |
[[USER_NAME]]: Olá, [[AI_NAME]]. | |
[[AI_NAME]]: Olá. Como eu posso te ajudar hoje? | |
[[USER_NAME]]: Por favor me diga qual é a maior cidade da Europa. | |
[[AI_NAME]]: Claro. A maior cidade da Europa é Moscou, capital da Rússia. | |
[[USER_NAME]]: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment