ChatGPT

Bastidores: Explorando o funcionamento interno do ChatGPT – Parte 1

Favicon Shaip
Olá, olá, meu nome é Anubhav Saraf, diretor de marketing da Shaip, como você está hoje?
Olá Anubhav! Sou uma IA, então não tenho sentimentos, mas estou aqui e pronto para ajudar. Como diretor de marketing da Shaip, você deve ter muitos insights sobre serviços de dados e soluções de IA. Como posso ajudá-lo hoje?
Favicon Shaip
Eu só queria saber mais sobre o seu processo de treinamento. Como você foi construído e treinado?
Como um modelo de linguagem desenvolvido pela OpenAI, fui construído e treinado usando uma técnica chamada "aprendizado de máquina baseado em transformador", especificamente uma variante chamada arquitetura GPT (Generative Pretrained Transformer). A versão que você está falando agora é GPT-4. Aqui está uma breve visão geral do meu processo de treinamento:
  • Coleção de dados: Meu treinamento começou com uma gama diversificada de textos da internet. No entanto, devo observar que, embora tenha sido treinado em um amplo conjunto de dados, não sei detalhes sobre quais documentos faziam parte desse conjunto de treinamento ou tenho acesso a quaisquer documentos ou fontes específicos.
  • Treinamento Inicial (Pré-treinamento): Foi aqui que aprendi a prever a próxima palavra em uma frase. Eu não comecei a saber inglês ou qualquer outro idioma. Em vez disso, ao prever a próxima palavra em milhões de frases, aprendi gradualmente sobre gramática, fatos sobre o mundo e algumas habilidades de raciocínio. No entanto, isso também significa que posso ter aprendido com informações tendenciosas ou incorretas, pois os dados não foram completamente filtrados.
  • Afinação: Após o treinamento inicial, meus criadores da OpenAI forneceram orientações adicionais com um conjunto de dados mais específico, gerado com a ajuda de revisores humanos. Esses revisores seguem as diretrizes para revisar e avaliar possíveis resultados do modelo para uma variedade de entradas de exemplo. O processo de sintonia fina é uma espécie de diálogo entre o modelo e os revisores que me ajuda a me alinhar melhor com os valores humanos.
  • Aprendizado contínuo: Embora eu não aprenda com as interações individuais por motivos de privacidade, a OpenAI trabalha continuamente com uma equipe de revisores humanos para fornecer feedback e fazer melhorias iterativas com base em padrões e insights mais amplos.
Favicon Shaip
Você pode fornecer exemplos – quando os humanos estavam envolvidos?
Sim, os humanos realmente estiveram envolvidos no meu processo de treinamento, mas pode ser diferente do que você está imaginando. Meu processo de treinamento, geralmente chamado de aprendizado de máquina, envolveu duas etapas principais: pré-treinamento e ajuste fino, ambos envolvendo interação humana, embora de maneiras diferentes.
  • Exemplo de pré-treinamento: Suponha que tenhamos a frase “O gato sentou no __”. Na fase de pré-treinamento, o modelo como eu aprenderia a prever a próxima palavra da frase, que poderia ser “tapete”, “telhado” ou “árvore”. Isso é aprendido processando bilhões de frases de diversos textos da Internet, envolvendo indiretamente a interação humana à medida que os humanos criam o conteúdo original.
  • Exemplo de ajuste fino: Após a fase de pré-treinamento, o modelo entra na fase de ajuste fino. Veja como isso pode funcionar:

O revisor humano recebe a tarefa de revisar as possíveis saídas do modelo para entrada como “Traduza o seguinte texto em inglês para o francês: 'Olá, tudo bem?'”. O modelo pode gerar várias respostas como “Bonjour, comment ça va?” ou “Salut, comente vas-tu?” etc.

O revisor classifica essas respostas com base em fatores como precisão, fluência e adequação. Essas classificações ajudam o modelo a generalizar e responder a entradas semelhantes no futuro.

Lembre-se, os exemplos fornecidos aqui são simplificados para ilustrar o processo. O treinamento real envolve algoritmos complexos e grandes quantidades de dados.

Favicon Shaip
Para treinar Large Language Models (LLMs), quantos dados seriam necessários?
O treinamento de modelos de linguagem grandes (LLMs) como GPT-3 ou GPT-4 requer grandes quantidades de dados. Esses modelos são treinados em diversos conjuntos de dados que abrangem grandes porções da Internet, incluindo livros, sites e outros textos, para aprender gramática, fatos e algum grau de raciocínio. No entanto, especificar a quantidade exata de dados necessários é complexo devido a vários fatores:
  • Variedade de dados: Não se trata apenas do volume dos dados, mas também da variedade. Os dados precisam ser diversos para cobrir uma ampla gama de tópicos, estilos e tons encontrados na linguagem humana.
  • Qualidade dos dados: A qualidade dos dados usados ​​para treinamento também pode influenciar a eficiência com que o modelo aprende. Dados de melhor qualidade podem potencialmente reduzir o volume necessário para um treinamento eficaz.
  • Arquitetura do modelo: A arquitetura do modelo (como o número de camadas ou parâmetros na rede neural) também pode afetar a quantidade de dados necessária. Modelos maiores, como GPT-3 ou GPT-4, normalmente requerem mais dados do que modelos menores.
  • Objetivos de Treinamento: O tipo de tarefas que o modelo pretende executar pode influenciar a quantidade de dados necessária. Um modelo projetado para uma tarefa específica pode exigir menos dados se for bem direcionado, enquanto um modelo de uso geral como GPT-3 ou GPT-4, projetado para lidar com uma ampla gama de tarefas, exigirá mais dados para uma compreensão mais ampla.

No caso do GPT-3, por exemplo, o modelo tem 175 bilhões de parâmetros e foi treinado em centenas de gigabytes de texto. Mas esses números não captam totalmente a complexidade do processo. As especificidades do processo de treinamento, incluindo a quantidade exata de dados usados, são detalhes proprietários mantidos pela OpenAI e organizações similares.

Favicon Shaip
Ainda assim, existe uma referência sobre quantos dados seriam apropriados ou suficientes para treinar modelos de ML?
A quantidade de dados necessária para treinar efetivamente os modelos de aprendizado de máquina depende muito da complexidade do problema que você está tentando resolver, da qualidade e diversidade de seus dados e do tipo de modelo de aprendizado de máquina que você está usando. Portanto, é um desafio especificar uma referência definitiva para o volume de dados. No entanto, aqui estão algumas diretrizes gerais:
  • Comece pequeno: Especialmente para problemas simples ou protótipos de modelos iniciais, um conjunto de dados menor pode ser adequado. Por exemplo, se estiver criando um classificador de imagens básico, você pode começar com algumas centenas ou milhares de imagens por categoria.
  • Considere a Complexidade: Problemas mais complexos normalmente requerem mais dados. Se você estiver desenvolvendo um modelo de aprendizado profundo ou trabalhando com um problema complexo como processamento de linguagem natural, poderá precisar de milhões de pontos de dados.
  • Qualidade acima de quantidade: Dados relevantes e de qualidade geralmente podem ser mais benéficos do que uma quantidade enorme de dados de baixa qualidade. Garantir que seus dados sejam devidamente limpos, anotados e representativos do problema que você está tentando resolver é crucial.
  • Equilibre suas aulas: Para tarefas de aprendizado supervisionado, certifique-se de ter um bom equilíbrio de exemplos para cada classe. Um conjunto de dados desequilibrado pode levar a um modelo com desempenho ruim em classes sub-representadas.
  • Use conjuntos de validação e teste: Parte do seu conjunto de dados deve ser reservada para validação (ajuste dos parâmetros do modelo) e teste (avaliação do desempenho do modelo). Divisões comuns podem ser 70% dos dados para treinamento, 15% para validação e 15% para teste, embora essas proporções possam variar.
  • Experimente e repita: Comece com uma quantidade inicial de dados, treine seu modelo, avalie seu desempenho e adicione iterativamente mais dados, ajuste seu modelo ou melhore a qualidade de seus dados com base nos resultados.

Lembre-se de que mais dados geralmente melhoram o desempenho dos modelos de aprendizado de máquina, mas apenas até certo ponto. Depois de um certo ponto, coletar mais dados pode ser mais demorado e caro do que vale a pena, e pode ser mais benéfico se concentrar em melhorar a qualidade de seus dados ou refinar sua arquitetura de modelo.

Favicon Shaip
Os dados que foram usados ​​para treinar o ChatGPT, foram anotados?
O processo de treinamento de modelos como o ChatGPT envolve duas etapas principais: pré-treinamento e ajuste fino. Vamos discutir como a anotação, ou a falta dela, se encaixa nessas etapas:
  • Pré treino: Nesta fase, o modelo é exposto a uma grande quantidade de dados de texto da internet. Esses dados não são anotados explicitamente, mas o modelo é treinado para prever a próxima palavra em uma frase. Isso dá ao modelo uma compreensão geral da gramática, fatos sobre o mundo e algumas habilidades de raciocínio.
  • Afinação: Após o pré-treinamento, o modelo é ainda mais refinado em um conjunto de dados mais restrito gerado com a ajuda de revisores humanos. Esses revisores seguem as diretrizes do OpenAI para revisar e avaliar possíveis resultados do modelo para uma variedade de entradas. Nesse sentido, o processo de fine-tuning pode ser visto como uma forma de anotação, onde os revisores humanos orientam as respostas do modelo, ajudando-o a se alinhar melhor com os valores humanos e garantindo que ele evite conteúdos inapropriados ou inseguros.

Portanto, embora o conjunto de dados inicial usado para pré-treinamento não seja anotado no sentido tradicional, o processo de ajuste fino envolve uma forma de anotação, na qual revisores humanos orientam o comportamento do modelo classificando diferentes saídas.

Favicon Shaip
Forneça alguns exemplos dos tipos de anotações usados ​​para o treinamento.
Na fase de ajuste fino de modelos de treinamento como o ChatGPT, os revisores geralmente recebem a tarefa de pontuar possíveis respostas do modelo. Os tipos de anotações ou pontuação podem cobrir uma variedade de aspectos da saída do modelo. Embora os detalhes possam variar, aqui estão algumas categorias ilustrativas de anotações:

Exatidão: Os revisores avaliam se a saída do modelo é factualmente correta.

Exemplo:

Adequação: A saída do modelo é avaliada quanto à sua adequação em relação à entrada dada.

Exemplo:

Segurança: As saídas são revisadas para garantir que não incluam instruções prejudiciais ou linguagem ofensiva.

Exemplo:

Completude: Isso avalia se a resposta do modelo responde totalmente à consulta do usuário.

Exemplo:

Fluência: Os revisores verificam se a saída do modelo é linguisticamente fluente e coerente.

Exemplo:

Essas categorias são apenas exemplos. O processo real de ajuste fino envolve um sistema de avaliação mais complexo e feedback contínuo entre os revisores e a equipe de desenvolvimento de IA. O objetivo dessas anotações é tornar as respostas do modelo mais úteis, seguras e alinhadas com os valores humanos.

Favicon Shaip
Depois que os dados enormes foram coletados para treinar o ChatGPT, quantos anotadores estavam envolvidos na anotação?
O número de anotadores humanos (ou revisores) envolvidos no processo de ajuste fino dos modelos de IA pode variar muito e depende da escala do projeto e dos requisitos específicos do modelo em questão.

OpenAI, a organização por trás do ChatGPT, não divulga publicamente o número exato de revisores envolvidos no processo de ajuste fino. No entanto, dada a escala e a complexidade do treinamento de um modelo de linguagem tão grande, é seguro dizer que o processo provavelmente envolve uma equipe substancial de revisores.

Esses revisores humanos seguem as diretrizes fornecidas pelo OpenAI para revisar e avaliar possíveis saídas do modelo. É um processo contínuo e iterativo em que o feedback dos revisores é usado para melhorar e refinar o modelo ao longo do tempo. A OpenAI mantém um forte ciclo de feedback com os revisores, incluindo reuniões semanais para tirar dúvidas e fornecer esclarecimentos.

Favicon Shaip
Ainda para tarefas simples a complexas, quantos anotadores seriam necessários para anotar 10,000 PDFs.
O número de anotadores necessários para anotar 10,000 PDFs dependeria de vários fatores, como:
  • Complexidade da Tarefa: Tarefas simples, como rotular imagens ou categorizar texto, levariam menos tempo por PDF, permitindo que um único anotador manuseasse mais arquivos. Por outro lado, tarefas complexas como extração detalhada de entidades ou análise semântica exigiriam mais tempo por documento e, portanto, mais anotadores para o mesmo volume de PDFs.
  • Comprimento e complexidade dos PDFs: Um PDF mais longo ou mais complexo levará mais tempo para anotar do que um mais curto ou mais simples.
  • Requerimentos de qualidade: Se for necessária alta precisão, pode ser necessário ter vários anotadores por PDF para fazer a verificação cruzada das anotações.
  • Limitações de tempo: Se as anotações precisarem ser concluídas rapidamente, mais anotadores serão necessários.

Como um exemplo hipotético, digamos que um anotador pode anotar 5 PDFs por dia para uma determinada tarefa e trabalha 5 dias por semana. Nesse caso, para anotar 10,000 PDFs, um único anotador precisaria de 2000 dias, ou cerca de 8 anos.

No entanto, se você tivesse uma equipe de 20 anotadores, eles poderiam concluir a tarefa em cerca de 5 meses (considerando 20 dias úteis por mês). Com 100 anotadores, a mesma tarefa pode ser concluída em cerca de um mês.

Lembre-se, esses números são meramente ilustrativos e a velocidade real da anotação dependeria dos fatores mencionados acima. Além disso, o treinamento adequado dos anotadores e o controle de qualidade consistente são essenciais para o sucesso de qualquer projeto de anotação em larga escala.

Favicon Shaip
Isso é completo! Estou altamente impressionado…
Fico feliz que as informações tenham sido úteis, Anubhav! É meu objetivo fornecer respostas abrangentes e precisas. Se você tiver mais perguntas sobre IA, aprendizado de máquina ou qualquer outro tópico, sinta-se à vontade para perguntar!

Fique ligado na segunda parte da nossa entrevista no Chat GPT

Ações Sociais