ChatGLM-6B: uma alternativa leve e de código aberto ao ChatGPT

Nó Fonte: 2074009

ChatGLM-6B: uma alternativa leve e de código aberto ao ChatGPT
Imagem do autor
 

Recentemente, todos nós temos tido muita dificuldade em atualizar os últimos lançamentos no espaço LLM. Nas últimas semanas, várias alternativas ChatGPT de código aberto se tornaram populares. 

E neste artigo vamos aprender sobre o Chat GLM série e Bate-papoGLM-6B, uma alternativa ChatGPT leve e de código aberto. 

Vamos indo!

Pesquisadores da Universidade de Tsinghua, na China, trabalharam no desenvolvimento da série de modelos ChatGLM com desempenho comparável a outros modelos, como GPT-3 e BLOOM.

O ChatGLM é um modelo bilíngue de linguagem ampla treinado em chinês e inglês. Atualmente, estão disponíveis os seguintes modelos:

  • ChatGLM-130B: um LLM de código aberto
  • ChatGLM-100B: não é de código aberto, mas está disponível por meio de acesso somente por convite
  • ChatGLM-6B: uma alternativa leve de código aberto

Embora esses modelos possam parecer semelhantes ao grupo de modelos de linguagem grande do Generative Pretrained Transformer (GPT), o Estrutura de pré-treinamento do Modelo de Linguagem Geral (GLM) é o que os torna diferentes. Aprenderemos mais sobre isso na próxima seção.

No aprendizado de máquina, você conheceria os GLMs como modelos lineares generalizados, mas o GLM no ChatGLM significa Modelo de Linguagem Geral

Estrutura de pré-treinamento GLM

O pré-treinamento LLM foi extensivamente estudado e ainda é uma área de pesquisa ativa. Vamos tentar entender as principais diferenças entre o pré-treinamento GLM e os modelos estilo GPT.

A família de modelos GPT-3 usa modelagem de linguagem regressiva automática somente para decodificador. Em GLM, por outro lado, a otimização do objetivo é formulada como uma problema de preenchimento em branco regressivo automático.

 

ChatGLM-6B: uma alternativa leve e de código aberto ao ChatGPT
GLM | Image Source
 

Em termos simples, preenchimento em branco regressivo automático envolve o apagamento de um trecho contínuo de texto e, em seguida, a reconstrução sequencial do texto desse apagamento. Além das máscaras mais curtas, há uma máscara mais longa que remove aleatoriamente longos espaços em branco do final das frases. Isso é feito para que o modelo funcione razoavelmente bem na compreensão da linguagem natural, bem como nas tarefas de geração.

Outra diferença está no tipo de atenção utilizada. O grupo GPT de grandes modelos de linguagem usa atenção unidirecional, enquanto o grupo GLM de LLMs usa atenção bidirecional. O uso de atenção bidirecional em contextos não mascarados pode capturar melhor as dependências e melhorar o desempenho em tarefas de compreensão de linguagem natural. 

Ativação GELU

Em GLM, a ativação GELU (Gaussian Error Linear Units) é usada em vez da ativação ReLU [1].

 

ChatGLM-6B: uma alternativa leve e de código aberto ao ChatGPT
Ativações GELU, ReLU e ELU | Image Source
 

A ativação GELU e tem valores diferentes de zero para todas as entradas e tem a seguinte forma [3]:

 

ChatGLM-6B: uma alternativa leve e de código aberto ao ChatGPT
 

A ativação GELU melhora o desempenho em comparação com as ativações ReLU, embora computacionalmente seja mais intensiva do que ReLU.

Na série GLM de LLMs, ChatGLM-130B, que é de código aberto e funciona tão bem quanto o modelo Da-Vinci do GPT-3. Conforme mencionado, no momento da redação deste artigo, há uma versão do ChatGLM-100B, que é restrita ao acesso somente por convite.

Bate-papoGLM-6B

Os seguintes detalhes sobre o ChatGLM-6B para torná-lo mais acessível aos usuários finais:

  • Tem cerca de 6.2 bilhões de parâmetros.
  • O modelo é pré-treinado em 1 trilhão de tokens - igualmente de inglês e chinês.
  • Posteriormente, são utilizadas técnicas como o ajuste fino supervisionado e o aprendizado por reforço com feedback humano.

Vamos encerrar nossa discussão examinando as vantagens e limitações do ChatGLM:

Vantagens

De um modelo bilíngue a um modelo de código aberto que você pode executar localmente, o ChatGLM-6B tem as seguintes vantagens:

  • A maioria dos modelos de linguagem grandes convencionais são treinados em grandes corpora de texto em inglês, e os modelos de linguagem grandes para outros idiomas não são tão comuns. A série ChatGLM de LLMs é bilíngue e uma ótima opção para chinês. O modelo tem bom desempenho tanto em inglês quanto em chinês.
  • ChatGLM-6B é otimizado para dispositivos de usuários. Os usuários finais geralmente têm recursos de computação limitados em seus dispositivos, tornando quase impossível executar LLMs localmente, sem acesso a GPUs de alto desempenho. Com Quantização INT4, ChatGLM-6B pode ser executado com um requisito de memória modesto de apenas 6 GB. 
  • Tem bom desempenho em uma variedade de tarefas, incluindo resumo e bate-papos de consulta única e múltipla.
  • Apesar do número substancialmente menor de parâmetros em comparação com outros LLMs convencionais, o ChatGLM-6B suporta comprimento de contexto de até 2048.

Limitações

A seguir, vamos listar algumas limitações do ChatGLM-6B:

  • Embora o ChatGLM seja um modelo bilíngue, seu desempenho em inglês provavelmente não é o ideal. Isso pode ser atribuído às instruções usadas no treinamento, principalmente em chinês.
  • Como o ChatGLM-6B tem substancialmente menos parâmetros em comparação com outros LLMs como BLOOM, GPT-3 e ChatGLM-130B, o desempenho pode ser pior quando o contexto é muito longo. Como resultado, o ChatGLM-6B pode fornecer informações imprecisas com mais frequência do que os modelos com um número maior de parâmetros.
  • Modelos de linguagem pequena têm capacidade de memória limitada. Portanto, em bate-papos com vários turnos, o desempenho do modelo pode diminuir um pouco.
  • Viés, desinformação e toxicidade são limitações de todos os LLMs, e o ChatGLM também é suscetível a eles.

Como próximo passo, execute ChatGLM-6B localmente ou experimente a demonstração nos espaços HuggingFace. Se você quiser se aprofundar no funcionamento dos LLMs, aqui está uma lista de cursos gratuitos sobre modelos de linguagem grandes.

[1] Z Du, Y Qian et al., GLM: Pré-treinamento do Modelo de Linguagem Geral com Preenchimento Autoregressivo em Branco, ACL 2022 See More

[2] A Zheng, X Liu et al., GLM-130B - Um modelo pré-treinado bilíngue aberto, ICML 2023 See More 

[3] D Hendryks, K Gimpel, Unidades Lineares de Erro Gaussiano (GELUs), arXiv, 2016

[4] ChatGLM-6B: Demonstração do HuggingFace Spaces

[5] Repositório do GitHub
 
 
Bala Priya C é um escritor técnico que gosta de criar conteúdo longo. Suas áreas de interesse incluem matemática, programação e ciência de dados. Ela compartilha seu aprendizado com a comunidade de desenvolvedores criando tutoriais, guias de instruções e muito mais.

Carimbo de hora:

Mais de KDnuggetsGenericName