Como é que o ChatGPT realmente funciona?

Como o ChatGPT funciona?

O Google, o Wolfram Alpha e o ChatGPT interagem com os usuários por meio de um campo de entrada de texto de uma única linha e fornecem resultados em forma de texto. O Google retorna resultados de pesquisa, uma lista de páginas da web e artigos que (esperançosamente) fornecerão informações relacionadas às consultas de pesquisa. O Wolfram Alpha geralmente fornece respostas que são matemáticas e relacionadas à análise de dados.

Também: Como usar o ChatGPT: Tudo o que você precisa saber

Recurso Especial

O Surgimento da IA Generativa

Uma nova onda de ferramentas de IA tem causado um grande impacto no mundo e nos mostrado uma nova forma de trabalhar e encontrar informações que podem otimizar nosso trabalho e nossas vidas. Mostraremos como ferramentas como o ChatGPT e outros softwares de IA geracional estão causando impacto no mundo, como aproveitar seu poder, bem como os riscos potenciais.

O ChatGPT, por outro lado, fornece uma resposta com base no contexto e na intenção por trás da pergunta do usuário. Por exemplo, você não pode pedir ao Google para escrever uma história ou ao Wolfram Alpha para escrever um módulo de código, mas o ChatGPT pode fazer essas coisas.

Fundamentalmente, o poder do Google está na capacidade de fazer enormes consultas em bancos de dados e fornecer uma série de correspondências. O poder do Wolfram Alpha está na capacidade de analisar perguntas relacionadas a dados e realizar cálculos com base nessas perguntas.

O poder do ChatGPT está na capacidade de analisar consultas e produzir respostas e resultados completos com base na maioria das informações baseadas em texto disponíveis digitalmente no mundo – pelo menos as informações que existiam até o momento do treinamento do modelo, antes de 2021.

Neste artigo, vamos analisar como o ChatGPT pode produzir essas respostas completas. Vamos começar analisando as principais fases de operação do ChatGPT e, em seguida, vamos abordar alguns dos principais componentes da arquitetura de IA que fazem tudo funcionar.

Também: Como usar o detector de golpes gratuito com IA da Norton

Além das fontes citadas neste artigo (muitas das quais são os artigos de pesquisa originais por trás de cada uma das tecnologias), usei o próprio ChatGPT para me ajudar a criar este artigo introdutório. Fiz muitas perguntas a ele. Algumas respostas estão parafraseadas dentro do contexto geral desta discussão.

As duas principais fases de operação do ChatGPT

Vamos usar o Google como uma analogia novamente. Quando você pede ao Google para pesquisar algo, provavelmente sabe que ele não sai em busca de respostas em toda a web no momento em que você faz a pergunta. Em vez disso, o Google pesquisa seu banco de dados em busca de páginas que correspondem à solicitação. O Google efetivamente tem duas principais fases: a fase de rastreamento e coleta de dados, e a fase de interação/consulta do usuário.

Também: Os melhores chatbots de IA: ChatGPT e outras alternativas divertidas para experimentar

<p+Falando de forma geral, o ChatGPT funciona da mesma maneira. A fase de coleta de dados é chamada de pré-treinamento, enquanto a fase de resposta ao usuário é chamada de inferência. A mágica por trás da IA generativa e a razão pela qual ela explodiu recentemente é que a forma como o pré-treinamento funciona se mostrou enormemente escalável. Essa escalabilidade foi tornada possível por inovações recentes em tecnologia de hardware acessível e computação em nuvem.

Como funciona o pré-treinamento da IA

<p+Falando de forma geral (porque entrar em detalhes exigiria volumes), as IAs são pré-treinadas usando duas abordagens principais: supervisionada e não supervisionada. Para a maioria dos projetos de IA até o atual conjunto de sistemas de IA generativa, como o ChatGPT, a abordagem supervisionada era usada.

<p+O pré-treinamento supervisionado é um processo em que um modelo é treinado em um conjunto de dados rotulados, em que cada entrada está associada a uma saída correspondente.

Também: Como fazer o ChatGPT fornecer fontes e citações

<p+Por exemplo, uma IA poderia ser treinada em um conjunto de dados de conversas de atendimento ao cliente, em que as perguntas e reclamações do usuário são rotuladas com as respostas apropriadas do representante do atendimento ao cliente. Para treinar a IA, perguntas como "Como posso redefinir minha senha?" seriam fornecidas como entrada do usuário, e respostas como "Você pode redefinir sua senha visitando a página de configurações da conta em nosso site e seguindo as instruções" seriam fornecidas como saída.

Em uma abordagem de treinamento supervisionado, o modelo geral é treinado para aprender uma função de mapeamento que possa mapear as entradas para as saídas com precisão. Esse processo é frequentemente usado em tarefas de aprendizado supervisionado, como classificação, regressão e rotulagem de sequências.

Como você pode imaginar, existem limites para a escalabilidade desse método. Os treinadores humanos teriam que antecipar todas as entradas e saídas possíveis. O treinamento poderia levar muito tempo e ser limitado em conhecimento especializado sobre o assunto.

Além disso: Os 10 melhores plugins do ChatGPT (e como aproveitá-los ao máximo)

Mas, como já sabemos, o ChatGPT tem poucos limites em conhecimento especializado sobre o assunto. Você pode pedir para ele escrever um currículo para o personagem Chief Miles O’Brien de Star Trek, pedir para explicar física quântica, escrever um trecho de código, criar um pequeno texto de ficção e comparar os estilos de governança de ex-presidentes dos Estados Unidos.

Seria impossível antecipar todas as perguntas que poderiam ser feitas, então não há como treinar o ChatGPT com um modelo supervisionado. Em vez disso, o ChatGPT utiliza um pré-treinamento não supervisionado – e isso é uma mudança de paradigma.

O pré-treinamento não supervisionado é o processo pelo qual um modelo é treinado em dados onde nenhuma saída específica é associada a cada entrada. Em vez disso, o modelo é treinado para aprender a estrutura subjacente e os padrões nos dados de entrada sem uma tarefa específica em mente. Esse processo é frequentemente usado em tarefas de aprendizado não supervisionado, como agrupamento, detecção de anomalias e redução de dimensionalidade. No contexto do modelagem de linguagem, o pré-treinamento não supervisionado pode ser usado para treinar um modelo a entender a sintaxe e semântica da linguagem natural, para que ele possa gerar texto coerente e significativo em um contexto de conversa.

Além disso: Como usar o ChatGPT para criar um aplicativo

Aqui é onde o aparentemente conhecimento ilimitado do ChatGPT se torna possível. Como os desenvolvedores não precisam saber as saídas que vêm das entradas, eles só precisam fornecer cada vez mais informações para o mecanismo de pré-treinamento do ChatGPT, chamado de modelagem de linguagem baseada em transformador.

Arquitetura do transformador

A arquitetura do transformador é um tipo de rede neural usado para processar dados de linguagem natural. Uma rede neural simula a forma como o cérebro humano funciona, processando informações por meio de camadas de nós interconectados. Pense em uma rede neural como um time de hóquei: cada jogador tem um papel, mas eles passam o puck para frente e para trás entre jogadores com funções específicas, todos trabalhando juntos para marcar o gol.

A arquitetura do transformador processa sequências de palavras usando “autoatendimento” para ponderar a importância de diferentes palavras em uma sequência ao fazer previsões. O autoatendimento é semelhante à maneira como um leitor pode voltar a uma frase ou parágrafo anterior para entender o contexto necessário para compreender uma nova palavra em um livro. O transformador analisa todas as palavras em uma sequência para entender o contexto e as relações entre as palavras.

Além disso: Pedi ao ChatGPT para escrever um plugin do WordPress que eu precisava. Ele fez em menos de 5 minutos

O transformador é composto por várias camadas, cada uma com várias subcamadas. As duas principais subcamadas são a camada de autoatendimento e a camada de avanço. A camada de autoatendimento calcula a importância de cada palavra na sequência, enquanto a camada de avanço aplica transformações não lineares aos dados de entrada. Essas camadas ajudam o transformador a aprender e entender as relações entre as palavras em uma sequência.

No treinamento, o transformador recebe dados de entrada, como uma frase, e é solicitado a fazer uma previsão com base nessa entrada. O modelo é atualizado com base em quão bem sua previsão corresponde à saída real. Através desse processo, o transformador aprende a entender o contexto e as relações entre as palavras em uma sequência, tornando-se uma ferramenta poderosa para tarefas de processamento de linguagem natural, como tradução de idiomas e geração de texto.

Além disso: 7 dicas avançadas de escrita de prompts do ChatGPT que você precisa conhecer

Uma coisa a se ter em mente é que existem questões relacionadas ao potencial desses modelos de gerar conteúdo prejudicial ou tendencioso, pois eles podem aprender padrões e vieses presentes nos dados de treinamento. As empresas que implementam esses modelos estão tentando fornecer “guard rails”, mas esses “guard rails” também podem causar problemas. Isso ocorre porque diferentes pessoas têm perspectivas diferentes, e uma tentativa de evitar viés com base em uma corrente de pensamento pode ser considerada como viés por outra corrente de pensamento. Isso torna o design de um chatbot universal difícil, dada a natureza complexa da sociedade como um todo.

Vamos discutir primeiro os dados que são alimentados no ChatGPT e, em seguida, dar uma olhada na fase de interação do usuário com o ChatGPT e a linguagem natural.

Conjuntos de dados de treinamento do ChatGPT

O conjunto de dados usado para treinar o ChatGPT é enorme. O ChatGPT é baseado na arquitetura GPT-3 (Generative Pre-trained Transformer 3). Na verdade, é aqui que precisamos esclarecer. A versão gratuita do ChatGPT foi treinada no CPT-3. Se você pagar $20/mês pelo ChatGPT Plus, você terá a opção de usar o conjunto de dados de treinamento do GPT-3 ou um conjunto de dados mais extensivo do GPT-4.

Também: GPT-3.5 vs GPT-4: Vale a pena assinar o ChatGPT Plus?

Agora, a abreviação GPT faz sentido, não faz? É generativo, o que significa que gera resultados, é pré-treinado, o que significa que é baseado em todos esses dados que ele ingere, e usa a arquitetura de transformer que pondera as entradas de texto para entender o contexto.

O GPT-3 foi treinado em um conjunto de dados chamado WebText2, uma biblioteca com mais de 45 terabytes de dados de texto. Quando você pode comprar um disco rígido de 16 terabytes por menos de $300, um corpus de 45 terabytes pode não parecer tão grande. Mas o texto ocupa muito menos espaço de armazenamento do que imagens ou vídeos.

Também: Como (e por que) assinar o ChatGPT Plus

Essa enorme quantidade de dados permitiu que o ChatGPT aprendesse padrões e relações entre palavras e frases em linguagem natural em uma escala sem precedentes, o que é uma das razões pelas quais ele é tão eficaz na geração de respostas coerentes e contextualmente relevantes às consultas dos usuários.

Embora o ChatGPT seja baseado na arquitetura GPT-3, ele foi ajustado em um conjunto de dados diferente e otimizado para casos de uso de conversação. Isso permite que ele forneça uma experiência mais personalizada e envolvente para os usuários que interagem com ele por meio de uma interface de chat.

Por exemplo, a OpenAI (desenvolvedora do ChatGPT) lançou um conjunto de dados chamado Persona-Chat, que é especificamente projetado para treinar modelos de IA conversacionais como o ChatGPT. Esse conjunto de dados consiste em mais de 160.000 diálogos entre dois participantes humanos, em que cada participante recebe uma persona única que descreve seu histórico, interesses e personalidade. Isso permite que o ChatGPT aprenda a gerar respostas personalizadas e relevantes para o contexto específico da conversa.

Também: Como usar o ChatGPT em seu navegador com as extensões corretas

Além do Persona-Chat, existem muitos outros conjuntos de dados conversacionais que foram usados para ajustar o ChatGPT. Aqui estão alguns exemplos:

  • Corpus de Diálogos de Filmes da Cornell: Um conjunto de dados contendo conversas entre personagens em roteiros de filmes. Inclui mais de 200.000 trocas de diálogo entre mais de 10.000 pares de personagens de filmes, abrangendo uma variedade diversificada de tópicos e gêneros.
  • Corpus de Diálogo do Ubuntu: Uma coleção de diálogos de várias etapas entre usuários em busca de suporte técnico e a equipe de suporte da comunidade Ubuntu. Contém mais de 1 milhão de diálogos, tornando-se um dos maiores conjuntos de dados publicamente disponíveis para pesquisas em sistemas de diálogo.
  • DailyDialog: Uma coleção de diálogos humanos em uma variedade de tópicos, que vão desde conversas sobre a vida cotidiana até discussões sobre questões sociais. Cada diálogo no conjunto de dados consiste em várias etapas e é marcado com um conjunto de informações de emoção, sentimento e tópico.

Além desses conjuntos de dados, o ChatGPT foi treinado em uma grande quantidade de dados não estruturados encontrados na internet, incluindo sites, livros e outras fontes de texto. Isso permitiu que o ChatGPT aprendesse sobre a estrutura e os padrões da linguagem em um sentido mais geral, que poderia então ser ajustado para aplicações específicas, como gerenciamento de diálogo ou análise de sentimento.

O ChatGPT é um modelo distinto que foi treinado usando uma abordagem semelhante à série GPT, mas com algumas diferenças na arquitetura e nos dados de treinamento. O ChatGPT tem 1,5 bilhão de parâmetros, o que é menor do que os 175 bilhões de parâmetros do GPT-3.

Também: Os melhores geradores de arte de IA para experimentar

No geral, os dados de treinamento usados para ajustar o ChatGPT são tipicamente conversacionais e especificamente selecionados para incluir diálogos entre humanos, o que permite que o ChatGPT aprenda a gerar respostas naturais e envolventes em um formato conversacional.

Pense no treinamento não supervisionado do ChatGPT desta maneira: ele foi alimentado com muitos dados e deixado por conta própria para encontrar padrões e dar sentido a tudo isso. Esse é o mecanismo que permitiu que os novos sistemas de IA generativos se expandissem tão rapidamente.

Enquanto o trabalho pesado da IA generativa do ChatGPT é feito pelo pré-treinamento, ele também precisa ser capaz de entender perguntas e construir respostas a partir de todos esses dados. Isso é feito pela fase de inferência, que consiste em processamento de linguagem natural e gerenciamento de diálogo.

E quanto ao envolvimento humano no pré-treinamento?

Apesar da escalabilidade inerente do pré-treinamento não supervisionado, há algumas evidências de que a assistência humana possa ter sido envolvida na preparação do ChatGPT para uso público.

A grande revelação foi em um artigo na revista TIME que discutiu o uso de “rótulos de dados” humanos que recebiam entre $1,32 e $2 por hora no Quênia. De acordo com o relatório da TIME, era responsabilidade desses trabalhadores escanear conteúdo horrível e sexualmente explícito da Internet para sinalizá-lo para o treinamento do ChatGPT.

Também: Como acessar milhares de audiolivros gratuitos, graças à IA da Microsoft e ao Projeto Gutenberg

Outro artigo, publicado no Martechpost, uma newsletter de IA, afirma que o grande modelo de linguagem foi treinado usando um processo chamado Aprendizado por Reforço a partir do Feedback Humano (RLHF). De acordo com o artigo, “O processo de treinamento envolveu um modelo inicial refinado usando aprendizado supervisionado, com treinadores humanos desempenhando o papel tanto do usuário quanto de um assistente de IA”.

Há algumas sutilezas quando se trata do significado da palavra “treinamento”. De acordo com o próprio ChatGPT, “A OpenAI não me treinou usando aprendizado por reforço com feedback humano. Em vez disso, fui pré-treinado usando uma combinação de técnicas de aprendizado não supervisionado e supervisionado, como modelagem de linguagem, codificação automática e previsão de sequência. Meu treinamento envolveu o processamento de quantidades massivas de dados de texto da internet, o que me permitiu aprender padrões e relações entre palavras e frases”.

A IA continua, “No entanto, uma vez que fui pré-treinado, pesquisadores e desenvolvedores podem usar o aprendizado por reforço com feedback humano para me refinar para tarefas ou domínios específicos, como responder a perguntas ou gerar texto. Nesses casos, os seres humanos podem fornecer feedback na forma de recompensas ou penalidades, que podem ser usadas para atualizar meus parâmetros e melhorar meu desempenho em tarefas similares no futuro”.

Também: Perguntei a ChatGPT, Bing e Bard do que eles têm medo. A IA do Google foi Terminator comigo

Isso parece se encaixar com os relatórios da Marktechpost e da TIME, no sentido de que o pré-treinamento inicial foi não supervisionado, permitindo que uma quantidade tremenda de dados fosse alimentada no sistema. Mas na construção das respostas de diálogo que se comunicam com os usuários (mais sobre isso abaixo), os motores de resposta aparentemente foram treinados tanto nos tipos de respostas, quanto treinados para filtrar material inadequado – e esse treinamento parece ter sido assistido por humanos.

Entre em contato com a OpenAI (fabricante do ChatGPT) para esclarecimentos, mas ainda não obtive resposta. Se a empresa me responder (fora do próprio ChatGPT), atualizarei o artigo com sua resposta.

Processamento de linguagem natural

O processamento de linguagem natural (PLN) concentra-se em capacitar os computadores a entender, interpretar e gerar linguagem humana. Com o crescimento exponencial de dados digitais e o uso cada vez maior de interfaces de linguagem natural, o PLN se tornou uma tecnologia crucial para muitas empresas.

As tecnologias de PLN podem ser usadas para uma ampla variedade de aplicações, incluindo análise de sentimentos, chatbots, reconhecimento de fala e tradução. Ao aproveitar o PLN, as empresas podem automatizar tarefas, melhorar o atendimento ao cliente e obter insights valiosos a partir do feedback dos clientes e das postagens nas mídias sociais.

Também: Como escrever melhores prompts para o ChatGPT

Um dos principais desafios na implementação do PLN é lidar com a complexidade e ambiguidade da linguagem humana. Os algoritmos de PLN precisam ser treinados em grandes quantidades de dados para reconhecer padrões e aprender as nuances da linguagem. Eles também precisam ser continuamente refinados e atualizados para acompanhar as mudanças no uso e contexto da linguagem.

A tecnologia funciona ao decompor as entradas de linguagem, como frases ou parágrafos, em componentes menores e analisar seus significados e relações para gerar insights ou respostas. As tecnologias de PLN usam uma combinação de técnicas, incluindo modelagem estatística, aprendizado de máquina e aprendizado profundo, para reconhecer padrões e aprender com grandes quantidades de dados, a fim de interpretar e gerar linguagem com precisão.

Gerenciamento de diálogo

Você pode ter notado que o ChatGPT pode fazer perguntas de acompanhamento para esclarecer sua intenção ou entender melhor suas necessidades, e fornecer respostas personalizadas levando em consideração todo o histórico da conversa.

Isso é como o ChatGPT pode ter conversas de várias etapas com os usuários de uma maneira natural e envolvente. Envolve o uso de algoritmos e técnicas de aprendizado de máquina para entender o contexto de uma conversa e mantê-lo ao longo de várias trocas com o usuário.

Como usar: Midjourney | Bing Image Creator | Craiyon | Stable Diffusion

O gerenciamento de diálogo é um aspecto importante do processamento de linguagem natural, pois permite que programas de computador interajam com as pessoas de uma forma que parece mais uma conversa do que uma série de interações isoladas. Isso pode ajudar a construir confiança e engajamento com os usuários e, em última análise, levar a melhores resultados tanto para o usuário quanto para a organização que usa o programa.

Os profissionais de marketing, é claro, desejam expandir a forma como a confiança é estabelecida, mas essa também é uma área que pode ser assustadora, pois é uma maneira pela qual a IA pode manipular as pessoas que a utilizam.

Um olhar dentro do hardware que executa o ChatGPT

A Microsoft lançou recentemente um vídeo que discute como o Azure é usado para criar uma rede que executa todos os cálculos e armazenamento necessários pelo ChatGPT. É um vídeo fascinante, tanto pela discussão sobre o Azure quanto pela arquitetura de IA em hardware real.

FAQ

Como a IA gerativa do ChatGPT difere dos chatbots tradicionais?

Os chatbots tradicionais operam com base em regras predefinidas e árvores de decisão, respondendo a entradas específicas do usuário com respostas predeterminadas. O ChatGPT, por outro lado, utiliza IA gerativa, permitindo que ele produza respostas únicas ao entender o contexto e a intenção, tornando as interações mais dinâmicas e humanas.

Por que o pré-treinamento não supervisionado é considerado revolucionário para modelos de IA como o ChatGPT?

O pré-treinamento não supervisionado permite que modelos de IA aprendam a partir de vastas quantidades de dados não rotulados. Essa abordagem ajuda o modelo a compreender as nuances da linguagem sem estar restrito a tarefas específicas, permitindo que ele gere respostas mais diversas e contextualmente relevantes.

Existem limitações na capacidade do ChatGPT de entender e responder a consultas de usuários?

Sim. O ChatGPT depende dos dados nos quais foi treinado, o que significa que nem sempre terá informações sobre tópicos muito recentes ou assuntos de nicho. Além disso, suas respostas são geradas com base em padrões nos dados, o que significa que ocasionalmente pode produzir respostas incorretas ou sem contexto. Além disso, os dados nos quais foi treinado podem estar errados ou até mesmo serem usados de forma enganosa.

E agora você sabe

Embora tenhamos passado de 3.200 palavras, esta ainda é uma visão muito básica de tudo o que acontece dentro do ChatGPT. Dito isso, talvez agora você entenda um pouco mais sobre por que essa tecnologia explodiu nos últimos meses. A chave de tudo isso é que os dados em si não são “supervisionados” e a IA é capaz de entender o que lhe foi alimentado e dar sentido a isso.

Também: Não estamos prontos para o impacto da IA gerativa nas eleições

Muito incrível, realmente.

Para concluir, alimentei um rascunho deste artigo inteiro no ChatGPT e pedi à IA para descrever o artigo em uma frase. Aqui está:

O ChatGPT é como o primo inteligente do Google e do Wolfram Alpha, capaz de fazer coisas que eles não podem, como escrever histórias e módulos de código.

O ChatGPT é supostamente uma tecnologia sem ego, mas se essa resposta não te der um pouco de arrepios, você não está prestando atenção.

O que você acha? Você está usando o ChatGPT? Quais perguntas você ainda tem sobre como ele funciona? Compartilhe conosco nos comentários abaixo.


Você pode acompanhar as atualizações diárias do meu projeto nas redes sociais. Certifique-se de me seguir no Twitter em @DavidGewirtz, no Facebook em Facebook.com/DavidGewirtz, no Instagram em Instagram.com/DavidGewirtz e no YouTube em YouTube.com/DavidGewirtzTV.