Modelos de IA generativa: ChatGPT

Certamente você já ouviu falar do ChatGPT, um poderoso modelo de linguagem que ficou famoso no mundo por ter múltiplos casos de uso para tarefas cotidianas. Por isso, usuários de todas as disciplinas estão testando o ChatGPT desde o final de 2022.

O ChatGPT é um chatbot que permite aos usuários interagir, em linguagem natural, com uma inteligência artificial (IA). Este modelo pode responder perguntas e normalmente a resposta será correta e precisa (dependendo do tema, as informações podem estar desatualizadas ou incorretas). Também pode ser usado para depurar código, escrever uma carta de apresentação para um processo seletivo ou outras tarefas semelhantes.

Conceito e origem

O ChatGPT foi criado pela OpenAI, uma empresa dedicada à pesquisa e desenvolvimento de tecnologias de IA. Este produto tem sido desenvolvido por vários anos. A primeira versão (GPT-1) estreou em 2018 e seu lançamento mais recente ocorreu em março de 2023: o GPT-4.

A ideia por trás do ChatGPT era criar um Inteligência Artificial Generativa capaz de dar respostas semelhantes às humanas, com base em solicitações feitas por usuários em linguagem natural. Para isso, ele foi pré-treinado com grandes (realmente enormes) quantidades de dados de texto. Técnicas de aprendizado profundo também foram usadas para ajudar o modelo a escrever frases coerentes e usar palavras apropriadamente. Ele foi treinado para entender como os humanos falam (ou escrevem), para assim poder entender o que o usuário digitar e gerar uma resposta adequada.

O ChatGPT é uma IA “generativa” porque é capaz de formar respostas por conta própria. Ele não contém um banco de dados com respostas padrão, no lugar disso, o ChatGPT gera respostas personalizadas que dependem diretamente da entrada do usuário.

A arquitetura do ChatGPT

Essa ferramenta usa um modelo de aprendizado profundo (deep learning) conhecido como Transformer. Este é um dos modelos mais amplamente utilizados em processamento de linguagem natural e visão computacional. Este modelo é projetado para processar dados de entrada sequenciais, mas é capaz de medir a importância de cada pedaço desses dados usando um mecanismo chamado “Auto-Atenção”.

Além da arquitetura do Transformer, ele também inclui componentes como um classificador MLP (perceptron multicamadas) e um mecanismo de decodificação. O classificador MLP é uma rede neural artificial de alimentação utilizada para ajustar um modelo para tarefas específicas de processamento de linguagem natural.

Como se treina o ChatGPT?

Existem duas etapas principais quando você está treinando um modelo semelhante ao ChatGPT. A primeira parte é o pré-treinamento: o modelo é alimentado com uma grande quantidade de dados da Internet, e logo o modelo tenta prever como terminar uma frase, dada uma entrada que é gramaticalmente correta e semanticamente significativa semelhante aos dados de treinamento. Depois da fase de pré-treinamento, o modelo deve ser capaz de completar as frases com sucesso.

A segunda etapa seria refinar o modelo. Neste caso, estamos falando de um processo de três partes que ajuda a transformar o modelo pré-treinado em um modelo que pode responder a perguntas.

Refinamento ou fine-tuning

  1. A primeira etapa é coletar dados de treinamento, perguntas com suas respostas, e ajustar o modelo pré-treinado a esses dados. Depois de alimentar o modelo com esses dados, o modelo pode responder a uma pergunta gerando uma resposta semelhante aos dados de treinamento.
  2. A segunda parte é coletar ainda mais dados. Desta vez, perguntas com várias respostas. Agora o modelo deve ser treinado com um modelo de recompensa para classificar essas respostas da mais relevante para a menos relevante.
  3. Por fim, o aprendizado por reforço é usado para ajustar o modelo para que suas respostas sejam mais precisas, em geral.

Como funciona o ChatGPT?

Processo do ChatGPT para responder a um pedido inserido pelo usuário. Fonte.

O usuário acessa a plataforma e começa uma conversa com o ChatGPT. A inserção de uma mensagem em linguagem natural inicia a experiência e o ChatGPT iniciará seu processo de geração de uma resposta para essa mensagem específica.

O texto digitado pelo usuário é enviado para um componente de moderação de conteúdo. Isso garante que as diretrizes de segurança sejam seguidas. O mecanismo filtra as entradas consideradas inadequadas. Se a entrada for válida, ela é enviada para o modelo ChatGPT. Caso contrário, uma resposta padrão será mostrada ao usuário.

Quando o modelo ChatGPT tem uma resposta pronta, ela é enviada de volta para um componente de moderação de conteúdo. Isso garante que a resposta gerada seja segura, inofensiva, imparcial, etc. Todo esse processo acontece em milissegundos.

Se a saída for aprovada na moderação de conteúdo, ela será exibida ao usuário. Caso contrário, uma resposta padrão será exibida para o usuário.

Capacidades e limitações do ChatGPT

Há muitas coisas que podem ser feitas com a ajuda do ChatGPT. Citaremos algumas delas e também algumas questões que podem ser preocupantes a esse respeito.

Capacidades

Uma das coisas mais comuns que as pessoas pedem ao ChatGPT é personificar figuras populares como presidentes, artistas, etc. O usuário pode pedir ao modelo, por exemplo, que diga em poucas palavras ou em formato de tweet como Kobe Bryant reagiria ao fato de LeBron James ter quebrado o recorde de pontos de todos os tempos.

É uma ferramenta útil que você pode usar para comparar duas coisas. Por exemplo, pode-se perguntar ao modelo se um texto é cópia de outro. Para isso você pode copiar os dois e deixar que o modelo os compare.

Para programadores, é uma excelente ferramenta de depuração ou debugging. Um usuário pode inserir o código e perguntar ao ChatGPT por que esse código não está sendo executado ou está travando. Além disso, o modelo pode fornecer ajuda para corrigi-lo. Também é capaz de explicar o que as seções do código estão fazendo, o que pode ser útil para documentar um projeto.

O modelo também pode ser solicitado a encontrar vulnerabilidades no código e explicará o raciocínio por trás da resposta para que você possa entender o que estava errado. Outra capacidade que os programadores podem usar é que o ChatGPT faça a tradução de um programa de, digamos, Python para seu equivalente em outra linguagem de programação.

O ChatGPT é capaz de simular um terminal, portanto, em vez de implementar uma máquina virtual, o modelo agiria e responderia da mesma forma que um terminal de máquina virtual. Ou talvez a solicitação seja simular um ambiente de rede virtual para que o usuário possa praticar comandos sem precisar construir uma rede de teste para isso.

Embora possa fazer muitas coisas não prejudiciais, o ChatGPT não possui uma bússola moral real. Ele pode ser usado para criar coisas que podem ser vistas como prejudiciais, racistas ou sexistas, por exemplo. Certamente haverá casos em que o conteúdo criado possa ser visto como insensível por grandes grupos de pessoas.

Ele tem uma gramática excelente, então os cibercriminosos podem usá-lo para redigir e-mails que pareçam legítimos e, em seguida, ajustá-los com links diferentes para um ciberataque (phishing). Como o modelo é capaz de ajudar os usuários a criar código, este código pode ser malicioso ou utilizado para crimes cibernéticos e o ChatGPT não será responsável por isso, pois desconhece as intenções do usuário.

Limitações

Às vezes, as respostas dadas pelo ChatGPT parecem boas, mas estão erradas, pois podem não ser factuais ou estarem desatualizadas.

Uma coisa que pode acontecer é que o ChatGPT não responde corretamente a uma determinada entrada, mas se o enunciado da pergunta for alterado algumas vezes, eventualmente o modelo responderá corretamente porque finalmente entendeu o que o usuário quis dizer.

O modelo geralmente dará respostas “muito longas” em vez de respostas mais simples. Esse “problema” vem desde a etapa de treinamento, pois os cientistas de dados geralmente preferem respostas mais longas que expliquem completamente a situação.

O ChatGPT poderia pedir esclarecimentos ao usuário quando este fornece uma consulta ambígua, mas esse não é o caso. Em vez disso, o modelo tenta adivinhar a intenção do usuário e, às vezes, não consegue.

O componente de moderação às vezes não detecta e bloqueia certos tipos de conteúdo inseguro, portanto o ChatGPT nunca será perfeito nesse aspecto, pois o que é classificado como o bem e o mal pode variar de pessoa para pessoa.

Scroll to Top