Hoje usei um modelo Chatgpt super fácil de usar - ChatGLM, que pode ser facilmente implantado localmente, e o efeito é muito bom.Após o teste, o efeito pode basicamente substituir a versão beta do Wenxin Yiyan.
Índice
2.3.1 Digite diretamente na linha de comando para pergunta e resposta
2.3.2 Usando a biblioteca gradio para gerar uma página de perguntas e respostas
3. Comparação do efeito do modelo com ChatGPT e GPT4AII
1. O que é ChatGLM?
O ChatGLM-6B é um modelo de linguagem de diálogo de código aberto que oferece suporte a bilíngues em chinês e inglês. É baseado na arquitetura General Language Model e possui 6,2 bilhões de parâmetros. Combinado com a tecnologia de quantização de modelo, os usuários podem implantar localmente em placas gráficas de consumo (apenas 6 GB de memória de vídeo são necessários no nível de quantização INT4). O ChatGLM-6B usa tecnologia semelhante ao ChatGPT, otimizado para perguntas e respostas em chinês e diálogo. Após cerca de 1T de identificadores de treinamento bilíngue chinês-inglês, complementado por supervisão e ajuste fino, auto-ajuda de feedback, aprendizado de reforço de feedback humano e outras tecnologias, o ChatGLM-6B com 6,2 bilhões de parâmetros foi capaz de gerar respostas bastante alinhadas com as preferências humanas.
2. Implantação local
2.1 Download do modelo
Endereço de download da demonstração:
2.2 Implantação do Modelo
1. Abra o arquivo do projeto com Pycharm;
2. Use o pip para instalar as dependências: pip install -r requirements.txt
, onde transformers
a versão da biblioteca é recomendada 4.27.1
, mas teoricamente não inferior a 4.23.1
isso;
2.3 Modelo em execução
Existem dois códigos de demonstração no diretório .../ChatGLM/ :
2.3.1 Digite diretamente na linha de comando para pergunta e resposta
(1) Modifique o caminho do modelo. Edite o código cli_demo.py , modifique o caminho da pasta do modelo nas linhas 5 e 6 e substitua o original "THUDM/ChatGLM-6B" por "model" .
(2) Modifique a versão quantizada. Se sua memória de vídeo for maior que 14G, você pode pular esta etapa sem quantização. Se sua memória de vídeo for apenas 6G ou 10G, você precisa adicionar quantize(4) ou quantize(8) na linha 6 do código , como segue:
# 6G 显存可以 4 bit 量化
model = AutoModel.from_pretrained("model", trust_remote_code=True).half().quantize(4).cuda()
# 10G 显存可以 8 bit 量化
model = AutoModel.from_pretrained("model", trust_remote_code=True).half().quantize(8).cuda()
(3) Execute cli_demo.py
2.3.2 Use a biblioteca gradio para gerar uma página de perguntas e respostas
Use a biblioteca gradio para gerar uma página de perguntas e respostas (o efeito é mostrado em 3).
(1) Instale a biblioteca gradio:
pip install gradio
(2) Modifique o caminho do modelo. Edite o código cli_demo.py , modifique o caminho da pasta do modelo nas linhas 5 e 6 e substitua o original "THUDM/ChatGLM-6B" por "model" .
(3) Modifique a versão quantizada. Se sua memória de vídeo for maior que 14G, você pode pular esta etapa sem quantização. Se sua memória de vídeo for apenas 6G ou 10G, você precisa adicionar quantize(4) ou quantize(8) à quinta linha do código, como segue:
# 6G 显存可以 4 bit 量化
model = AutoModel.from_pretrained("model", trust_remote_code=True).half().quantize(4).cuda()
# 10G 显存可以 8 bit 量化
model = AutoModel.from_pretrained("model", trust_remote_code=True).half().quantize(8).cuda()
(4) Execute web_demo.py
O processo de carregamento do modelo é o seguinte:
3. Comparação do efeito do modelo com ChatGPT e GPT4AII
Depois de executar web_demo.py, o navegador será aberto automaticamente e a seguinte interface será exibida, e o diálogo normal poderá ser realizado, e a velocidade de resposta é muito rápida.
3.1 ChatGLM
Pergunte ao ChatGLM: "Demora 10 minutos para cozinhar 1 pão, quanto tempo leva para cozinhar 10 pães?" A resposta é muito razoável.
3.2 ChatGPT
Faça a mesma pergunta ao ChatGPT: "Leva 10 minutos para cozinhar 1 pão, quanto tempo leva para cozinhar 10 pães?" A resposta é um pouco mais simples.
3.3 GPT4AII
Na postagem anterior do blog, apresentamos o GPT4ALL, que só pode realizar diálogos em inglês e fazer perguntas relacionadas em inglês, e descobrimos que o efeito não é tão bom quanto o ChatGLM e o ChatGPT.
Quatro. Resumo
O ChatGLM é fácil de implantar e tem um bom entendimento de chinês. Sua vantagem é que não precisa estar conectado à Internet após a implantação e não requer login de conta. É muito seguro. Sua desvantagem é que não pode ser incremental aprenda as informações mais recentes na Internet e a expansão da base de conhecimento requer amostras adicionais de treinamento.