Como executar um AI semelhante ao ChatGPT em seu próprio PC
Publicados: 2023-04-06Os chatbots estão na moda agora e todo mundo quer uma parte da ação. O Google tem o Bard, a Microsoft tem o Bing Chat e o ChatGPT da OpenAI é praticamente sinônimo de IA neste momento. Mas e se você não quiser contar com um serviço de nuvem para o seu chatbot? Temos uma AI semelhante ao ChatGPT que você pode baixar - uma Alpaca.
O que é Alpaca?
Como o Alpaca se compara ao ChatGPT?
O que você precisa para executar o Alpaca?
Como executar o Alpaca localmente no seu PC
Instale o subsistema do Windows para Linux 2
Instalar Docker
Instale o GIT no Windows
Instalar Serge e Alpaca
Use sarja e alpaca
O que é Alpaca?
Alpaca é um modelo de linguagem (um chatbot, basicamente), muito parecido com o ChatGPT. Ele é capaz de responder a perguntas, raciocinar, contar piadas e quase todas as outras coisas que esperamos dos chatbots. A Alpaca foi criada por pesquisadores de Stanford através do ajuste fino do LLaMA do Facebook.
Ao contrário do ChatGPT e da maioria dos outros chatbots disponíveis hoje, o Alpaca é executado completamente no seu próprio PC. Isso significa que ninguém pode bisbilhotar suas conversas ou o que você pergunta ao Alpaca, e suas trocas também não podem vazar acidentalmente. Isso também significa que você não precisa pagar nenhuma mensalidade, pode treinar ainda mais o modelo para atender melhor às suas necessidades se tiver o hardware e pode integrá-lo a qualquer aplicativo que desejar. Você está limitado apenas pelo seu hardware e suas habilidades de programação.
No entanto, ele também funciona perfeitamente como um chatbot antigo comum com o qual você pode conversar, e mostraremos como executá-lo em praticamente qualquer PC existente.
Como o Alpaca se compara ao ChatGPT?
Vamos resolver isso logo de cara: o ChatGPT, particularmente o ChatGPT rodando GPT-4, é mais inteligente e rápido que o Alpaca no momento.
A velocidade do Alpaca é limitada principalmente pelo computador em que está sendo executado - se você tiver um PC para jogos extremamente rápido com uma tonelada de núcleos e bastante RAM, obterá um bom desempenho dele. PCs mais lentos com menos núcleos levarão mais tempo para gerar respostas. Claro, não é exatamente justo ou razoável compará-lo com o ChatGPT a esse respeito - não sabemos em que tipo de computador o ChatGPT está sendo executado, mas certamente é mais robusto do que um PC de mesa comum.
Existem três variantes principais de Alpaca atualmente, 7B, 13B e 30B. De um modo geral, quanto maior o número, mais inteligente será o chatbot.
Alpaca, especialmente o modelo 7B, é visivelmente “mais burro” do que o ChatGPT. Não raciocina tão bem e certamente não passará no teste de Turing. 7B ainda é ótimo se você quiser uma sugestão de receita.
Os modelos 13B e 30B são outra história. 13B é capaz de fornecer uma conversa coerente e humana e pode responder a perguntas complexas. 30B é ainda mais impressionante, se você tiver o hardware para executá-lo e estiver a uma curta distância do ChatGPT. Ele vai crescer filosoficamente ou fazer uma piada sem perder o ritmo, se solicitado.
O que você precisa para executar o Alpaca?
Alpaca tem requisitos de sistema bastante flexíveis. Essas diretrizes estão acima do mínimo, mas são boas diretrizes. Também vamos instalá-lo no Windows. Se você estiver instalando isso em um sistema executando Linux ou macOS, apenas pule a seção Windows Subsystem for Linux — ela não é relevante para você.
- 16GB de RAM
- 32 GB é melhor e é necessário se você deseja executar o modelo 30B
- 35 GB de armazenamento em um SSD se você quiser todos os três modelos.
- 4 GB para o modelo 7B, 8 GB para o modelo 13B e 20 GB para o modelo 30B
- 500 MB para Ubuntu padrão com WSL2
- Mais alguns GBs entre outras dependências
- Uma CPU moderna é ideal
- Qualquer CPU Ryzen
- Processador Intel de 7ª geração ou mais recente
- Subsistema do Windows para Linux 2 (WSL2)
- GIT
- Docker
- Um projeto comunitário, Serge, que dá ao Alpaca uma interface web agradável
Aviso: atualmente não há motivos para suspeitar que este projeto em particular tenha falhas graves de segurança ou seja malicioso. Examinamos o código e executamos o software nós mesmos e não encontramos nada relacionado. Isso não significa que é ou permanecerá seguro. Seja sempre cauteloso com as coisas que encontrar na internet e reavalie a segurança periodicamente.
Como executar o Alpaca localmente no seu PC
É importante que você siga estas etapas na ordem em que são dadas. O Docker provavelmente irá quebrar se você não fizer isso, exigindo uma reinstalação completa do WSL2 e do Docker.
Instale o subsistema do Windows para Linux 2
O Windows Subsystem for Linux 2 (WSL2) da Microsoft permite que você execute o software Linux no Windows. Tem uma sobrecarga baixa e é realmente útil em muitos casos. O Docker para Windows depende do WSL2, então precisamos instalar o WSL2 primeiro.
Observação: se você já tiver o WSL2 instalado, basta executar wsl –update no PowerShell para garantir que tudo esteja atualizado.
Abra uma janela do PowerShell como administrador e digite o comando:
wsl --install
Vai demorar um pouco para baixar todos os arquivos WSL2 e o Ubuntu. Você deve reiniciar seu PC após a conclusão da instalação.
Após a reinicialização, reabra o PowerShell (não necessariamente como administrador) e execute:
wsl -l -v
Você deve ver algo como a imagem abaixo se tudo funcionou corretamente. Você também não precisa instalar o Ubuntu em particular. Você pode instalar qualquer distro que desejar, o Ubuntu é apenas o padrão.
Instalar Docker
Docker é um programa que permite executar programas em um “contêiner”. Os contêineres são semelhantes às máquinas virtuais, mas tendem a ter menos sobrecarga e têm mais desempenho para muitos aplicativos. Serge usa o Docker para tornar a instalação super conveniente.
RELACIONADO: O que o Docker faz e quando você deve usá-lo?
Primeiro, baixe o instalador do Docker no site do Docker. Se você estiver executando o Docker no Linux ou macOS, certifique-se de obter o instalador apropriado.
Observação: se você estiver executando um servidor Linux sem periféricos, siga as instruções apropriadas para sua distribuição Linux para executar o Docker.
Execute o instalador e esteja preparado para aguardar alguns minutos. O Docker vai demorar um pouco e configurar um monte de coisas nos bastidores. Uma vez feito isso, você vai querer reiniciar o seu PC.
Após reiniciar, abra o PowerShell e execute wsl -l -v
novamente. Desta vez, você também deve ver algumas entradas relacionadas ao Docker.
Instale o GIT no Windows
O último pré-requisito é o Git, que usaremos para baixar (e atualizar) o Serge automaticamente do Github. Não é estritamente necessário, pois você sempre pode baixar o ZIP e extraí-lo manualmente, mas o Git é melhor.
Acesse o site do Git e baixe a versão correta para o seu sistema operacional. Os usuários do Windows só precisam executar o executável. Certifique-se de pelo menos olhar para as opções de instalação em vez de apenas clicar rapidamente em todas as opções. Um, mostrado na captura de tela abaixo, é absolutamente crítico.
Depois que o Git terminar de instalar, você estará pronto para instalar o Serge e o Alpaca.
Instalar Serge e Alpaca
Primeiro, verifique se o Docker Desktop está em execução. Em seguida, abra o PowerShell ou o Terminal do Windows com uma janela do PowerShell aberta (não como administrador) e execute o seguinte comando:
git clone https://github.com/nsarrazin/serge.git && cd serge
Isso baixa os arquivos do GitHub para uma pasta no seu PC e, em seguida, altera o diretório ativo para a pasta que foi criada.
O próximo comando que você precisa executar é:
cp .env.sample .env
Essa linha cria uma cópia de .env.sample e nomeia a cópia “.env.” O arquivo contém argumentos relacionados ao banco de dados local que armazena suas conversas e a porta que o servidor web local usa quando você se conecta.
Então corra:
docker compose up -d
O Docker Compose une vários contêineres diferentes em um pacote organizado. Você pode verificar o arquivo docker-compose.yml na pasta Serge se quiser ver mais especificamente o que está envolvido aqui.
O último comando iniciará um download e aqui você precisa fazer uma escolha antes de prosseguir. Existem três variantes diferentes que você pode baixar: 7B, 13B e 30B. O 7B é o modelo mais simples e “burro”, enquanto o 30B é o mais sofisticado e inteligente. 13B é o meio termo.
Variante | Tamanho do download | RAM livre necessária | RAM do sistema recomendada no Windows | RAM do sistema recomendada no Linux |
7B | 4GB | 4GB | 16 GB | 8 GB |
13B | 8 GB | 8 GB | 16 GB | 16 GB |
30B | 20 | 20 GB | 64 GB (provável) | 32 GB |
As instalações do Linux (e provavelmente do macOS) poderão funcionar com menos RAM do sistema do que as instalações do Windows - o Windows é um pouco consumidor de RAM. Você provavelmente deve começar com a variante 7B primeiro, pois é a opção menos exigente. Você sempre pode baixar 13B ou 30B mais tarde, se quiser.
Execute o seguinte comando para baixar o modelo 7B (ou substitua 13B ou 30B).
docker compose exec api python3 /usr/src/app/utils/download.py tokenizer 7B
Esteja preparado para esperar, especialmente se você optar pela variante 30B. O servidor Huggingface parece chegar a cerca de 20 megabytes por segundo, então você verá 50 segundos por gigabyte baixado no melhor cenário.
Use sarja e alpaca
O Docker e todos os contêineres necessários estão em execução se você seguiu essas instruções; no entanto, será necessário ativá-los novamente se reiniciar o computador. Para fazer isso, basta abrir o Docker Desktop e clicar nos pequenos botões triangulares. Os ícones à esquerda da coluna “Nome” ficam verdes quando os contêineres estão em execução.
Tudo está instalado e pronto para ir neste momento. Basta abrir seu navegador e digitar “localhost:8008″ na barra de endereço, como faria para visitar o Facebook ou qualquer outro site.
Nota: Se você estiver hospedando o Alpaca/Serge em outro computador, precisará inserir o endereço IP local desse dispositivo em vez de localhost.
A tela principal tem suas conversas anteriores exibidas à esquerda e as configurações para um novo chat exibido no meio.
Há um bom número de configurações disponíveis, mas há cinco que você realmente deve prestar atenção:
- Temperatura – determina a liberdade com que a IA responde. Números mais baixos resultam em respostas mais rígidas, enquanto números mais altos são mais criativos.
- Comprimento Máximo de Texto Gerado em Tokens – Quanto tempo as respostas que o bot escreve podem ser.
- Escolha do modelo – Escolha entre 7B, 13B, 30B e qualquer outro modelo que você instalar.
- n_threads – O número de threads que Serge/Alpaca pode usar em sua CPU. Alocar mais melhorará o desempenho
- Pré-prompt para inicializar uma conversa – fornece contexto antes que a conversa seja iniciada para influenciar a maneira como o chatbot responde.
Nesse caso, aumentamos a temperatura e os fios, selecionamos o modelo 13B e dissemos ao chatbot que é um pirata.
Aqui está uma amostra de como foi a conversa.
Você pode falar sobre o que quiser com o Alpaca e não precisa se preocupar com o que está acontecendo com seus dados. Ele permanece no seu dispositivo, sob seu controle o tempo todo.
Lembre-se, ChatGPT, Alpaca e outros chatbots parecem confiáveis, mas não são neste momento. Eles incorporam muito bem o sentimento: “Se você não pode deslumbrá-los com brilhantismo, confunda-os com BS”. Sua tendência de inventar coisas foi apelidada de “alucinante”. Não conte com eles para nada essencial, especialmente algo crítico para o seu trabalho ou saúde. Eles devem ser usados apenas para entretenimento ou fins experimentais neste momento.
No entanto, a tecnologia só vai melhorar com o tempo - não demorará muito para vermos o Alpaca (ou outra IA executada localmente) integrada aos servidores Discord, mods do Minecraft e vários outros aplicativos criativos. O refinamento adicional também resultará em modelos mais rápidos e precisos que podem ser executados em hardware mais fraco.