Escolar Documentos
Profissional Documentos
Cultura Documentos
Aplicado
IA generativa para
Iniciantes
Conhecimento prático sobre modelos de difusão,
ChatGPT e outros LLMs
-
Akshay Kulkarni
Adarsha Shivananda
Anoosh Kulkarni
Dilip Gudivada
Machine Translated by Google
Akshay Kulkarni
Adarsha Shivananda
Anoosh Kulkarni
Dilip Gudivada
Machine Translated by Google
Nomes, logotipos e imagens de marcas registradas podem aparecer neste livro. Em vez de usar um símbolo de marca registrada em
cada ocorrência de um nome, logotipo ou imagem de marca registrada, usamos os nomes, logotipos e imagens apenas de forma
editorial e para o benefício do proprietário da marca registrada, sem intenção de violar a marca registrada.
O uso nesta publicação de nomes comerciais, marcas registradas, marcas de serviço e termos semelhantes, mesmo que não sejam
identificados como tal, não deve ser tomado como uma expressão de opinião sobre se estão ou não sujeitos a direitos de
propriedade.
Embora os conselhos e as informações contidas neste livro sejam considerados verdadeiros e precisos na data de publicação, nem os
autores, nem os editores, nem a editora podem aceitar qualquer responsabilidade legal por quaisquer erros ou omissões que possam
ser cometidos. O editor não oferece nenhuma garantia, expressa ou implícita, com relação ao material aqui contido.
Distribuído ao comércio de livros em todo o mundo pela Springer Science+Business Media New York, 1 New York Plaza, Suite 4600,
New York, NY 10004-1562, EUA. Telefone 1-800-SPRINGER, fax (201) 348-4505, pedidos por e-mail-ny@
springer-sbm.com ou visite www.springeronline.com. Apress Media, LLC é uma LLC da Califórnia e o único membro (proprietário) é
Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc é uma corporação de Delaware .
Para obter informações sobre traduções, envie um e-mail para booktranslations@springernature.com; para reimpressão,
brochura ou direitos de áudio, envie um e-mail para bookpermissions@springernature.com.
Os títulos da Apress podem ser adquiridos em grandes quantidades para uso acadêmico, corporativo ou promocional. Versões e licenças
de e-books também estão disponíveis para a maioria dos títulos. Para obter mais informações, consulte nossa página de vendas em massa
de impressão e e-books em http://www.apress.com/bulk-sales.
Qualquer código-fonte ou outro material suplementar referenciado pelo autor neste livro está disponível para leitores no GitHub.
Para informações mais detalhadas, visite https://www.apress.com/gp/services/
Código fonte.
Índice
Sobre os Autoresÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿxi
v
Machine Translated by Google
Índice
vi
Machine Translated by Google
Índice
vii
Machine Translated by Google
Índice
Estratégia de design para habilitar LLMs para empresas: aprendizagem em contexto ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿ 119
Bancos de dados de vetores: acelerando LLMs empresariais com pesquisa semânticaÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 130
generativa ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 139 modelos de código aberto com licenças
viii
Machine Translated by Google
Índice
Parte Inferior: Processo de Geração de Texto para Imagem ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 168
Comparação entre DALL-E 2, difusão estável e meio de jornada ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿ 172
ix
Machine Translated by Google
Índice
x
Machine Translated by Google
sobre os autores
Akshay Kulkarni é um evangelista de IA e aprendizado de máquina
e líder de TI. Ele ajudou inúmeras empresas da Fortune 500 e
Índia. Ele gosta de ler, escrever, programar e construir produtos de IA de última geração.
de classe mundial para garantir a entrega contínua de valor usando IA. Ele
encontros de ciência de dados/aprendizado de máquina, ajudando aspirantes a cientistas de dados a traçar seu
roteiro de carreira.
XI
Machine Translated by Google
sobre os autores
xii
Machine Translated by Google
xiii
Machine Translated by Google
Introdução
• Construir bases sólidas: Desenvolva uma compreensão sólida dos princípios fundamentais
que impulsionam as capacidades da IA generativa, permitindo-lhe compreender
o seu funcionamento interno.
xv
Machine Translated by Google
Introdução
xvi
Machine Translated by Google
CAPÍTULO 1
Introdução à IA generativa
Você já imaginou que simplesmente imaginando algo e digitando, uma imagem ou vídeo
poderia ser gerado? Quão fascinante é isso? Este conceito, antes relegado ao domínio da
ficção científica, tornou-se uma realidade tangível no nosso mundo moderno. A ideia de que
os nossos pensamentos e palavras podem ser transformados em conteúdo visual não é
apenas cativante, mas também um testemunho da inovação e criatividade humanas.
Figura 1-1. A imagem gerada por máquina com base na entrada de texto
Mesmo como cientistas de dados, muitos de nós nunca previmos que a IA poderia chegar
a um ponto em que pudesse gerar texto para um caso de uso específico. As dificuldades que
enfrentamos para escrever código ou as inúmeras horas gastas pesquisando no Google a solução
certa já foram desafios comuns. No entanto, o panorama tecnológico mudou drasticamente e
essas tarefas laboriosas tornaram-se relíquias do passado.
1
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4_1
Machine Translated by Google
2
Machine Translated by Google
Componentes de IA
• Inteligência Artificial (IA): É a disciplina mais ampla do aprendizado de máquina para
envolve redes neurais com três ou mais camadas que podem analisar vários fatores de
um conjunto de dados.
simples análise de dados para fazer novas criações com base em padrões aprendidos.
3
Machine Translated by Google
Domínios de IA Generativa
Vamos nos aprofundar nos domínios da IA generativa em detalhes, incluindo o que é, como funciona e
algumas aplicações práticas.
Geração de texto
Geração de imagem
• O que é: a geração de imagens envolve o uso de vários aprendizados profundos
modelos para criar imagens que parecem reais.
4
Machine Translated by Google
Geração de Áudio
formas de onda. Modelos de conversão de texto em fala, como o Tacotron 2, usam texto
de entrada para gerar fala. Eles são treinados em grandes conjuntos de dados para capturar
nuances do som.
como faixas de fundo. As marcas podem criar jingles cativantes ou efeitos sonoros
Geração de Vídeo
• O que é: a geração de vídeos envolve a criação de vídeos por IA, muitas vezes combinando
• Como funciona: A geração de vídeos é complexa devido à natureza temporal dos vídeos.
Alguns modelos usam descrições de texto para gerar cenas, enquanto outros prevêem
mensagens, anúncios dinâmicos ou até mesmo marketing de conteúdo. As marcas podem criar
Uma aplicação cuidadosa pode levar à criação eficiente de conteúdo de vídeo que se adapta
às tendências de marketing.
Gerando Imagens
Microsoft Bing Image Creator é uma ferramenta generativa de IA que usa inteligência artificial para criar imagens com
www.bing.com/images/create/
5
Machine Translated by Google
Para usar o Bing Image Creator, basta digitar uma descrição da imagem que deseja criar na caixa
de texto. Usaremos o mesmo exemplo mencionado anteriormente na geração de imagens realistas.
“Crie a imagem de um elefante rosa usando um chapéu de festa e apoiado em um arco-íris.”
O Bing Image Creator irá então gerar uma imagem com base na sua descrição.
Gerando Texto
Vamos usar o ChatGPT para gerar texto. É um chatbot baseado em modelo de linguagem grande
desenvolvido pela OpenAI e lançado em novembro de 2022.
ChatGPT é treinado com aprendizagem por reforço por meio de feedback humano e modelos
de recompensa que classificam as melhores respostas. Esse feedback ajuda a aumentar o ChatGPT com
aprendizado de máquina para melhorar respostas futuras.
ChatGPT pode ser usado para diversos fins, incluindo
• Respondendo a perguntas
• Gerando texto
6
Machine Translated by Google
• Tradução de idiomas
7
Machine Translated by Google
ChatGPT ou qualquer outra ferramenta ainda está em desenvolvimento, mas aprendeu a realizar diversos tipos de
tarefas. À medida que continua a aprender, tornar-se-á ainda mais poderoso e versátil.
8
Machine Translated by Google
• DeepMind: DeepMind é uma empresa britânica de inteligência artificial que foi adquirida
pelo Google em 2014. DeepMind desenvolveu vários modelos generativos de IA,
incluindo AlphaFold, que pode prever a estrutura de proteínas, e Gato, que pode
executar uma variedade de tarefas, incluindo jogar Jogos Atari, controlando braços
robóticos e escrevendo diferentes tipos de conteúdo criativo.
9
Machine Translated by Google
• Natural Video: Natural Video é um modelo generativo de IA que pode ser usado para
criar vídeos sintéticos realistas.
• Runway Studio: Runway Studio é uma plataforma baseada em nuvem que permite
às empresas criar e implantar modelos generativos de IA sem qualquer
experiência em codificação.
• Midjourney: Midjourney é um modelo generativo de IA que pode ser usado para criar
imagens, vídeos e textos realistas. Midjourney ainda está em desenvolvimento, mas
já foi usado para criar alguns resultados impressionantes.
Estas são apenas algumas das muitas empresas que estão trabalhando em IA generativa. À medida que o
campo continua a se desenvolver, podemos esperar ver ainda mais inovação e disrupção nos próximos anos.
10
Machine Translated by Google
Aplicativos de IA generativos
A IA generativa oferece uma ampla gama de aplicações em vários setores. Aqui estão algumas aplicações
principais:
1. Criação de conteúdo:
campanhas e anúncios.
2. Design e Criatividade:
3. Entretenimento e mídia:
4. Marketing e Publicidade:
11
Machine Translated by Google
5. Jogos:
6. Saúde e Medicina:
7. Tradução de idiomas:
8. Atendimento ao Cliente:
9. Educação e Treinamento:
12
Machine Translated by Google
Conclusão
Este capítulo se concentrou na IA generativa, um domínio em rápida evolução da inteligência
artificial especializado na criação de conteúdo novo e exclusivo, como texto, imagens, áudio e vídeos.
Construídos com base nos avanços em aprendizagem profunda e processamento de linguagem
natural (PNL), esses modelos têm diversas aplicações, incluindo criação de conteúdo, design,
entretenimento, saúde e atendimento ao cliente. Notavelmente, a IA generativa também traz
preocupações éticas, particularmente na criação de deepfakes ou na disseminação de
desinformação. O capítulo fornece uma visão aprofundada de diferentes domínios da IA
generativa – geração de texto, imagem, áudio e vídeo – detalhando como eles funcionam e
suas aplicações práticas. Também discute alguns dos principais players do setor, como OpenAI,
DeepMind e Synthesia, entre outros. Por último, descreve uma ampla gama de aplicações em vários setores
13
Machine Translated by Google
CAPÍTULO 2
Evolução do Neural
Redes para grandes
Modelos de Linguagem
Nas últimas décadas, os modelos de linguagem passaram por avanços significativos.
Inicialmente, modelos básicos de linguagem foram empregados para tarefas como reconhecimento de
fala, tradução automática e recuperação de informações. Esses primeiros modelos foram construídos
usando métodos estatísticos, como modelos n-gram e modelos ocultos de Markov. Apesar de sua utilidade,
esses modelos apresentavam limitações em termos de precisão e escalabilidade.
Com a introdução do aprendizado profundo, as redes neurais se tornaram mais populares para
tarefas de modelagem de linguagem. Entre elas, as redes neurais recorrentes (RNNs) e as redes de
memória de longo e curto prazo (LSTM) surgiram como escolhas particularmente eficazes. Esses modelos
são excelentes na captura de relações sequenciais em dados linguísticos e na geração de resultados
coerentes.
Nos últimos tempos, as abordagens baseadas na atenção, exemplificadas pela arquitetura
Transformer, ganharam atenção considerável. Esses modelos produzem resultados concentrando-se
em segmentos específicos da sequência de entrada, usando técnicas de autoatenção.
Seu sucesso foi demonstrado em diversas tarefas de processamento de linguagem natural, incluindo
modelagem de linguagem.
A Figura 2-1 mostra os principais marcos e avanços na evolução dos modelos de linguagem.
15
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4_2
Machine Translated by Google
16
Machine Translated by Google
Tokenização
Tokenização é o processo de dividir o texto em palavras ou tokens individuais. Ajuda a segmentar o texto
e analisá-lo em um nível mais granular.
Exemplo:
Entrada: “Adoro codificar em python”
Tokenização: [“Eu”, “Amo”, “para”, “código”, “em”, “python”]
N-gramas
No processamento de linguagem natural (PNL), os n-gramas são uma técnica poderosa e
amplamente utilizada para extrair informações contextuais de dados de texto. N-gramas são essencialmente
sequências contíguas de n itens, onde os itens podem ser palavras, caracteres ou mesmo fonemas,
dependendo do contexto. O valor de “n” em n-gramas determina o número de itens consecutivos na
sequência. N-gramas comumente usados incluem unigramas (1 grama), bigramas (2 gramas),
trigramas (3 gramas) e assim por diante:
1. Unigramas (1 grama):
Exemplo:
2. Bigramas (2 gramas):
Exemplo:
3. Trigramas (3 gramas):
17
Machine Translated by Google
Trigramas são três palavras consecutivas em um texto. Eles capturam mais contexto e
Exemplo:
probabilidade de uma palavra dado seu contexto. Por exemplo, com bigramas,
6. Limitações de n-gramas:
Embora os n-gramas sejam poderosos na captura do contexto local, eles podem perder
o contexto global. Por exemplo, os bigramas podem não ser suficientes para compreender
Ao usar n-gramas, é essencial lidar com palavras fora do vocabulário (palavras não
vistas durante o treinamento). Técnicas como adicionar um token especial para palavras
8. Suavização:
18
Machine Translated by Google
N-gramas são uma ferramenta valiosa em PNL para capturar o contexto local
e extrair características significativas de dados de texto. Eles têm diversas
aplicações em modelagem de linguagem, classificação de texto, recuperação
de informações e muito mais. Embora os n-gramas forneçam informações valiosas
sobre a estrutura e o contexto do texto, eles devem ser usados em conjunto com
outras técnicas de PNL para construir modelos robustos e precisos.
Word2Vec
Word2Vec é uma família de modelos de incorporação de palavras introduzida por Mikolov et al. em 2013.
Consiste em duas arquiteturas principais: saco contínuo de palavras (CBOW) e skip-gram:
Word2Vec usa uma rede neural superficial com uma única camada oculta para aprender a palavra
incorporações. Os embeddings aprendidos colocam palavras semanticamente semelhantes mais próximas
no espaço vetorial.
19
Machine Translated by Google
GloVe é outra técnica popular de incorporação de palavras introduzida por Pennington et al. em 2014. Ao
contrário do Word2Vec, o GloVe usa uma matriz de coocorrência de pares de palavras para aprender a
incorporação de palavras. A matriz de coocorrência representa a frequência com que duas palavras aparecem
juntas em um determinado corpus.
GloVe visa fatorar esta matriz de coocorrência para obter embeddings de palavras que
capturar as relações globais palavra a palavra em todo o corpus. Ele aproveita informações de contexto
global e local para criar representações de palavras mais significativas.
Agora, vamos retomar detalhadamente a evolução das redes neurais para LLMS.
Modelos Probabilísticos
O modelo probabilístico n-gram é uma abordagem simples e amplamente utilizada para modelagem de
linguagem em processamento de linguagem natural (PNL). Ele estima a probabilidade de uma palavra com
base nas n-1 palavras anteriores em uma sequência. O “n” em n-grama representa o número de palavras
consideradas juntas como uma unidade. O modelo n-grama é construído na suposição de Markov, que assume
que a probabilidade de uma palavra depende apenas de uma janela fixa das palavras anteriores:
20
Machine Translated by Google
Apesar de sua simplicidade e limitações, o modelo probabilístico n-gram fornece uma linha de base
útil para tarefas de modelagem de linguagem e tem sido um conceito fundamental para modelos de
linguagem mais sofisticados, como redes neurais recorrentes (RNNs) e modelos baseados em Transformers.
21
Machine Translated by Google
A ideia principal por trás desses modelos é treinar uma rede neural para prever a próxima
palavra em uma frase com base nas palavras que a precedem. Ao apresentar à rede uma
grande quantidade de dados de texto e ensiná-la a reconhecer padrões e relações entre
palavras, ela aprende a fazer previsões probabilísticas sobre qual palavra provavelmente virá a seguir.
Depois que a rede neural é treinada em um vasto conjunto de dados, ela pode usar os padrões
aprendidos para gerar texto, completar frases ou até mesmo responder perguntas com base no contexto
que aprendeu durante o treinamento.
Ao capturar efetivamente as relações e dependências entre palavras em uma frase, esses modelos
de linguagem melhoraram drasticamente a capacidade dos computadores de compreender e gerar
linguagem humana, levando a avanços significativos em vários aplicativos de PNL, como tradução
automática, análise de sentimento, chatbots e muito mais. .
ÿÿÿ
ÿÿÿ
Neste diagrama:
22
Machine Translated by Google
Redes de memória de longo e curto prazo (LSTM) são um tipo especializado de arquitetura de rede
neural recorrente (RNN) projetada para resolver o problema do gradiente evanescente e capturar
dependências de longo prazo em dados sequenciais. Eles foram introduzidos por Hochreiter e Schmidhuber
em 1997 e desde então ganharam popularidade para modelar dados sequenciais em diversas aplicações.
23
Machine Translated by Google
A principal característica que diferencia o LSTM dos RNNs tradicionais é sua capacidade de
incorporar uma célula de memória que pode reter ou esquecer seletivamente informações ao longo do tempo.
Esta célula de memória é controlada por três portas: a porta de entrada, a porta de esquecimento e a porta
de saída:
Esse mecanismo de controle permite que o LSTM capture dependências de longo alcance em
dados sequenciais, tornando-o particularmente eficaz para tarefas que envolvem processamento de
linguagem natural, como modelagem de linguagem, tradução automática e análise de sentimento.
Além disso, os LSTMs foram aplicados com sucesso em outras tarefas, como reconhecimento de voz e
legendagem de imagens.
Ao abordar o problema do gradiente evanescente e fornecer uma maneira melhor de reter e utilizar
informações importantes ao longo do tempo, as redes LSTM tornaram-se uma ferramenta poderosa para lidar
com dados sequenciais e melhoraram significativamente o desempenho de várias aplicações na área de
aprendizado de máquina e inteligência artificial.
Redes GRU (gated recurrent unit) são um tipo de arquitetura de rede neural comumente usada em
aprendizado profundo e processamento de linguagem natural (PNL). Eles são projetados para resolver o
problema do gradiente evanescente, assim como as redes LSTM.
Semelhante aos LSTMs, os GRUs também incorporam um mecanismo de controle, permitindo que a rede
atualize e esqueça informações seletivamente ao longo do tempo. Esse mecanismo de controle é crucial para
capturar dependências de longo prazo em dados sequenciais e torna as GRUs eficazes para tarefas que
envolvem linguagem e dados sequenciais.
A principal vantagem dos GRUs sobre os LSTMs reside no seu design mais simples e em menos
parâmetros. Essa simplicidade torna as GRUs mais rápidas de treinar e mais simples de implantar,
tornando-as uma escolha popular em diversas aplicações.
24
Machine Translated by Google
Embora tanto GRUs quanto LSTMs tenham um mecanismo de portas, a principal diferença está no
número de portas usadas para regular o fluxo de informações. Os LSTMs usam três portas: a porta de entrada,
a porta de esquecimento e a porta de saída. Em contraste, as GRUs usam apenas duas portas: a porta de
reinicialização e a porta de atualização.
A porta de reinicialização controla quais informações descartar do intervalo de tempo anterior,
enquanto a porta de atualização determina quanto das novas informações adicionar à célula de
memória. Essas duas portas permitem que as GRUs controlem o fluxo de informações de forma eficaz, sem
a complexidade de ter uma porta de saída.
As redes GRU são uma adição valiosa à família de redes neurais recorrentes.
Seu design mais simples e treinamento eficiente fazem deles uma escolha prática para diversas tarefas
relacionadas a sequências, e eles provaram ser altamente eficazes em processamento de linguagem natural,
reconhecimento de fala e outras aplicações de análise de dados sequenciais.
Redes Codificador-Decodificador
A arquitetura codificador-decodificador é um tipo de rede neural usada para lidar com tarefas sequenciais como
tradução de idiomas, chatbot, reconhecimento de áudio e legenda de imagens. É composto por dois
componentes principais: a rede do codificador e a rede do decodificador.
Durante a tradução do idioma, por exemplo, a rede codificadora processa a frase de entrada no idioma
de origem. Ele percorre a frase palavra por palavra, gerando uma representação de comprimento fixo chamada
vetor de contexto. Este vetor de contexto contém informações importantes sobre a frase de entrada e
serve como uma versão condensada da frase original.
utiliza o vetor de contexto junto com seus estados internos para começar a gerar a sequência de saída,
que neste caso é a tradução no idioma de destino. O decodificador gera uma palavra por vez, utilizando
o vetor de contexto e as palavras geradas anteriormente para prever a próxima palavra na tradução.
Codificador
O codificador pega a sequência de entrada e a processa palavra por palavra, produzindo uma representação de
tamanho fixo (vetor de contexto) que codifica toda a sequência de entrada. O vetor de contexto captura as
informações essenciais da sequência de entrada e serve como estado oculto inicial para o decodificador.
Decodificador
O decodificador toma o vetor de contexto como seu estado oculto inicial e gera a sequência de saída palavra por
palavra. A cada etapa, ele prevê a próxima palavra na sequência com base no vetor de contexto e nas palavras
geradas anteriormente. O decodificador está condicionado à entrada do codificador, permitindo produzir saídas
significativas.
Mecanismo de Atenção
representação vetorial de comprimento fixo. Esta etapa de codificação condensa todas as informações da sequência
de entrada em um único vetor de tamanho fixo, comumente conhecido como “vetor de contexto”.
O decodificador então toma esse vetor de contexto como entrada e gera a sequência de saída, passo
a passo. O decodificador usa o vetor de contexto e seus estados internos para prever cada elemento da
sequência de saída.
Embora esta abordagem funcione bem para sequências de entrada mais curtas, ela pode enfrentar desafios
ao lidar com sequências de entrada longas. A codificação de comprimento fixo pode levar à perda de
informação porque o vetor de contexto tem capacidade limitada de capturar todas as nuances e detalhes
Em essência, quando as sequências de entrada são longas, a codificação de comprimento fixo pode
ter dificuldades para reter todas as informações relevantes, resultando potencialmente em uma sequência de
saída menos precisa ou incompleta.
Para resolver esse problema, técnicas mais avançadas foram desenvolvidas, como o uso de
mecanismos de atenção na arquitetura codificador-decodificador. Mecanismos de atenção
permitir que o modelo se concentre em partes específicas da sequência de entrada enquanto gera cada elemento
da sequência de saída. Dessa forma, o modelo pode lidar efetivamente com longas sequências de entrada e
26
Machine Translated by Google
estado (consulta) e o estado oculto de cada codificador (chave). Essas pontuações de atenção determinam a
importância de diferentes partes da sequência de entrada, e o vetor de contexto é então formado como uma
soma ponderada dos estados ocultos do codificador, com pesos determinados pelas pontuações de atenção.
Os modelos Seq2Seq são treinados usando pares de sequências de entrada e suas sequências de saída
correspondentes. Durante o treinamento, o codificador processa a sequência de entrada e o decodificador
gera a sequência de saída. O modelo é otimizado para minimizar a diferença entre o resultado gerado e o
resultado da verdade básica usando técnicas como forçamento do professor ou aprendizagem por reforço.
Os modelos Seq2Seq apresentam alguns desafios, como lidar com sequências longas, lidar com palavras fora
do vocabulário e manter o contexto em longas distâncias. Técnicas como mecanismos de atenção e busca de
feixe foram introduzidas para resolver esses problemas
Transformador
A arquitetura Transformer foi introduzida por Vaswani et al. em 2017 como um projeto de rede
neural inovador amplamente utilizado em tarefas de processamento de linguagem natural, como categorização
de texto, modelagem de linguagem e tradução automática.
27
Machine Translated by Google
processo começa com o codificador, que pega a sequência de entrada e gera uma representação oculta dela.
Esta representação oculta contém informações essenciais sobre a sequência de entrada e serve como uma
representação contextualizada.
A representação oculta é então passada para o decodificador, que a utiliza para gerar
a sequência de saída. Tanto o codificador quanto o decodificador consistem em múltiplas camadas de
redes neurais de autoatenção e feed-forward.
28
Machine Translated by Google
Google, T5 aborda todas as tarefas de PNL como problemas de texto para texto.
Essa estrutura unificadora mostrou excelente desempenho em tarefas como
tradução, resumo e resposta a perguntas.
29
Machine Translated by Google
Conclusão
O desenvolvimento de redes neurais para grandes modelos de linguagem trouxe avanços significativos
no campo do processamento de linguagem natural (PNL).
Desde modelos probabilísticos tradicionais, como n-gramas e modelos ocultos de Markov, até
modelos mais avançados baseados em redes neurais, como redes neurais recorrentes
(RNNs), redes de memória de longo e curto prazo (LSTM) e unidades recorrentes fechadas (GRUs), os
pesquisadores melhoraram continuamente esses modelos para superar desafios como o desaparecimento
de gradientes e o manuseio eficiente de grandes conjuntos de dados.
Um avanço notável é a introdução de técnicas baseadas na atenção, particularmente a arquitetura
Transformer. Os transformadores mostraram desempenho excepcional em vários aplicativos de PNL,
permitindo que o modelo se concentrasse em partes específicas da sequência de entrada usando
mecanismos de autoatenção.
Esses modelos alcançaram um sucesso notável na modelagem de linguagem por causa de
sua capacidade de atender efetivamente a diferentes regiões da sequência de entrada, capturando padrões
e dependências complexas.
Por último, o foco mudou para grandes modelos de linguagem (LLMs), que utilizam redes neurais
profundas para gerar texto em linguagem natural. LLMs como o GPT-3 demonstraram capacidades
surpreendentes, gerando texto semelhante ao humano, respondendo a perguntas e executando
várias tarefas relacionadas ao idioma.
30
Machine Translated by Google
31
Machine Translated by Google
CAPÍTULO 3
LLMs e transformadores
Neste capítulo, embarcamos em uma jornada esclarecedora pelo mundo dos LLMs e pelas
complexidades da arquitetura do Transformer, desvendando os mistérios por trás de suas capacidades
extraordinárias. Esses avanços pioneiros não apenas impulsionaram o campo da PNL a novos patamares,
mas também revolucionaram a forma como as máquinas percebem, compreendem e geram a linguagem.
33
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4_3
Machine Translated by Google
À medida que os modelos linguísticos continuam a evoluir, eles mantêm a promessa de impulsionar
avanços ainda mais profundos na compreensão e geração de idiomas impulsionados pela IA.
No entanto, com esse poder vem a responsabilidade de abordar questões éticas relacionadas com
preconceitos, desinformação e privacidade. Encontrar um equilíbrio entre ultrapassar os limites da modelagem
linguística e, ao mesmo tempo, defender considerações éticas é crucial para garantir a implantação responsável
e o impacto dessas ferramentas poderosas.
Nas seções seguintes, nos aprofundamos nas complexidades arquitetônicas de grandes
modelos de linguagem e o Transformer, explorando como eles operam, suas aplicações no mundo real, os
desafios que apresentam e o potencial que possuem para remodelar o futuro da PNL e da inteligência artificial.
Arquitetura do Transformador
Conforme mencionado anteriormente, a arquitetura Transformer é um componente crucial de muitos
modelos de processamento de linguagem natural (PNL) de última geração, incluindo ChatGPT. Foi
apresentado no artigo intitulado “Attention Is All You Need” de Vaswani et al. em 2017. O Transformer
revolucionou a PNL ao fornecer uma maneira eficiente de processar e gerar linguagem usando mecanismos
de autoatenção. Vamos nos aprofundar em uma explicação detalhada da arquitetura central do Transformer.
34
Machine Translated by Google
ineficiências de modelos sequenciais tradicionais, como redes neurais recorrentes (RNNs) e redes de
memória de longo e curto prazo (LSTM). Esses modelos sequenciais processam a entrada da
linguagem, um token por vez, o que leva a vários problemas ao lidar com dependências e paralelização de
longo alcance.
As principais motivações para o desenvolvimento da arquitetura Transformer foram as seguintes:
Arquitetura
A arquitetura do Transformer representada anteriormente na Figura 3-1 usa uma combinação de autoatenção
empilhada e camadas totalmente conectadas e pontuais no codificador e no decodificador, conforme
representado nas metades esquerda e direita da figura, respectivamente.
35
Machine Translated by Google
Arquitetura do codificador-decodificador
A arquitetura do Transformer emprega a pilha do codificador e a pilha do decodificador, cada uma consistindo
em múltiplas camadas, para processar sequências de entrada e gerar sequências de saída de maneira
eficaz.
Codificador
O codificador representado anteriormente na Figura 3-2 é construído com uma pilha de N = 6 camadas
idênticas, com cada camada compreendendo duas subcamadas. A primeira subcamada emprega um
36
Machine Translated by Google
mecanismo de autoatenção com múltiplas cabeças, permitindo que o modelo atenda a diferentes partes da
sequência de entrada simultaneamente. A segunda subcamada é uma rede feedforward simples, totalmente
conectada e posicionada, que processa ainda mais a saída do mecanismo de autoatenção.
Para garantir um fluxo tranquilo de informações e facilitar o aprendizado, uma conexão residual
é adotado em torno de cada uma das duas subcamadas. Isso significa que a saída de cada subcamada é
adicionada à entrada original, permitindo que o modelo aprenda e atualize as representações de forma eficaz.
para a saída de cada subcamada. Isto padroniza e normaliza as representações, evitando que elas se tornem
Além disso, para permitir a incorporação de conexões residuais, todas as subcamadas do modelo, incluindo
as camadas de incorporação, produzem saídas de dimensão dmodel = 512. Essa dimensionalidade ajuda a
capturar os intrincados padrões e dependências dentro dos dados, contribuindo para o desempenho geral do
modelo. desempenho.
Decodificador
O decodificador mostrado anteriormente na Figura 3-3 em nosso modelo é estruturado de forma semelhante
ao codificador, consistindo em uma pilha de N = 6 camadas idênticas. Cada camada decodificadora, assim
como a camada codificadora, contém duas subcamadas para autoatenção de múltiplas cabeças e posição inteligente.
37
Machine Translated by Google
redes feed-forward. Por outro lado, o decodificador introduz uma terceira subcamada adicional, que utiliza
atenção de múltiplas cabeças para processar a saída da pilha do codificador.
38
Machine Translated by Google
Em essência, a autorregressão é o mecanismo que permite ao decodificador “lembrar” o que gerou até o
momento, garantindo que cada token subsequente seja contextualmente relevante e posicionado adequadamente
dentro da sequência. Ele desempenha um papel fundamental no sucesso de tarefas sequência a sequência, onde
manter a ordem correta de geração de tokens é de extrema importância.
Para conseguir isso, as incorporações de saída do decodificador são deslocadas em uma posição.
Como resultado, as previsões para a posição “i” na sequência de saída só podem depender das saídas
conhecidas em posições inferiores a “i”. Esse mecanismo garante que o modelo gere os tokens de saída de
forma autorregressiva, um token por vez, sem acesso às informações dos tokens futuros.
Atenção
Uma função de atenção no contexto da arquitetura Transformer pode ser definida
39
Machine Translated by Google
Entradas
40
Machine Translated by Google
Soma Ponderada
• O vetor de saída é calculado como a soma ponderada dos vetores de valor (V),
usando os pesos de atenção como pesos.
• Cada vetor de valor é multiplicado por seu peso de atenção correspondente e todos os
vetores ponderados são somados para produzir o vetor de saída final.
• O vetor de saída captura as informações contextuais dos vetores de valor com base nos
pesos de atenção, representando as informações atendidas relevantes para a
consulta.
O mecanismo de atenção permite que o modelo se concentre seletivamente nos assuntos mais relevantes.
partes da sequência de entrada durante o processamento de cada elemento (consulta). Essa capacidade
de atender informações relevantes de diferentes partes da sequência é um fator chave para o sucesso do
Transformer em diversas tarefas de processamento de linguagem natural, pois permite que o modelo
capture dependências de longo alcance e relacionamentos contextuais de maneira eficaz.
Entrada e Matrizes
• A entrada para Scaled Dot-Product Attention consiste em consultas (Q), chaves (K) e
valores (V), cada um representado como vetores de dimensão dk e dv.
• Para cada palavra na sequência de entrada, criamos três vetores: uma consulta
vetor, um vetor chave e um vetor de valor.
42
Machine Translated by Google
• Pesos de atenção mais elevados indicam que o valor correspondente contribuirá mais
para o vetor de contexto final.
Atenção Multi-Cabeça
No artigo original do Transformer (“Atenção é tudo que você precisa”), os autores introduziram
o conceito de atenção multicabeça para superar as limitações da atenção unidirecional, como a restrição a
um único padrão de atenção para todas as palavras. A atenção multicabeças permite que o modelo atenda a
diferentes partes da entrada simultaneamente, permitindo capturar diversos padrões e dependências.
consultas (Q), chaves (K) e valores (V), com cada um representado como vetores de
dimensão dk e dv.
44
Machine Translated by Google
• Cada cabeça de atenção tem seu próprio conjunto de projeções lineares para criar
vetores distintos de consulta, chave e valor.
• Isso significa que para cada cabeçalho, um vetor de contexto separado é derivado usando
os pesos de atenção.
• Depois de calcular os vetores de contexto para cada núcleo de atenção, eles são
concatenados em uma única matriz.
Flexibilidade do modelo
45
Machine Translated by Google
1. Atenção do codificador-decodificador:
2. Autoatenção do codificador:
46
Machine Translated by Google
1. Arquitetura Feed-Forward:
*
FFN_1(X) = máx(0, X W1 + b1)
FFN_Saída = FFN_1(X) * W2 + b2
47
Machine Translated by Google
2. Dimensionalidade:
3. Compartilhamento de parâmetros:
Codificação de posição
48
Machine Translated by Google
49
Machine Translated by Google
Onde
Interpretação
O uso das funções seno e cosseno na codificação posicional introduz um padrão cíclico,
permitindo ao modelo aprender diferentes distâncias posicionais e generalizando para sequências
de comprimentos variados. A codificação posicional é adicionada aos embeddings de entrada antes
de ser passada pelas camadas codificadora e decodificadora do Transformer.
A codificação posicional enriquece os embeddings de palavras com informações posicionais,
permitindo que o Transformer capture as relações temporais da sequência e processe
efetivamente os dados de entrada, tornando-o um dos componentes essenciais que contribui
para o sucesso do Transformer em tarefas de processamento de linguagem natural.
50
Machine Translated by Google
Vantagens
1. Paralelização e Eficiência: O mecanismo de autoatenção do Transformer
permite o processamento paralelo de sequências de entrada, tornando-o
altamente eficiente e adequado para computação distribuída, levando a tempos
de treinamento mais rápidos em comparação com modelos sequenciais.
como RNNs.
51
Machine Translated by Google
Limitações
52
Machine Translated by Google
Conclusão
Concluindo, grandes modelos de linguagem (LLMs) baseados na arquitetura Transformer surgiram
como um avanço inovador no domínio do processamento de linguagem natural. Sua capacidade
de capturar dependências de longo alcance, combinada com um extenso pré-treinamento em vastos
conjuntos de dados, revolucionou as tarefas de compreensão de linguagem natural. Os LLMs
demonstraram um desempenho notável em vários desafios relacionados ao idioma, superando
as abordagens tradicionais e estabelecendo novos padrões de referência.
Além disso, apresentam grande potencial na geração de linguagem e criatividade, capazes de
produzir textos humanizados e histórias envolventes. No entanto, juntamente com as suas inúmeras
vantagens, as considerações éticas são importantes, incluindo preocupações relativas a
preconceitos, desinformação e potencial utilização indevida. Pesquisadores e engenheiros estão
trabalhando ativamente para enfrentar esses desafios para garantir a implantação responsável da
IA. Olhando para o futuro, o futuro dos LLMs e dos Transformers promete oportunidades
interessantes, com aplicações potenciais em diversos domínios, como educação, saúde, suporte
ao cliente e geração de conteúdo. À medida que o campo continua a evoluir, os LLMs estão preparados
para remodelar a forma como interagimos e compreendemos a linguagem, abrindo novas
possibilidades de impacto transformador nos próximos anos.
53
Machine Translated by Google
CAPÍTULO 4
A arquitetura ChatGPT:
Uma exploração aprofundada
da conversação do OpenAI
Modelo de linguagem
Nos últimos anos, avanços significativos no processamento de linguagem natural (PNL) abriram caminho
para agentes conversacionais mais interativos e humanos. Entre esses desenvolvimentos inovadores
está o ChatGPT, um modelo de linguagem avançado criado pela OpenAI. ChatGPT é baseado na arquitetura
GPT (Generative Pre-trained Transformer) e foi projetado para envolver-se em conversas dinâmicas e
contextualmente relevantes com os usuários.
55
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4_4
Machine Translated by Google
56
Machine Translated by Google
Ao longo desta evolução, um dos temas principais tem sido o poder da escala:
de modo geral, modelos maiores treinados com mais dados tendem a ter melhor desempenho. No entanto,
também tem havido um reconhecimento crescente dos desafios associados a modelos maiores, tais como o
potencial para resultados prejudiciais, o aumento dos recursos computacionais necessários para a
formação e a necessidade de métodos robustos para controlar o comportamento destes modelos.
57
Machine Translated by Google
Aqui estão algumas dicas importantes a serem lembradas sobre a arquitetura do Transformer:
58
Machine Translated by Google
Arquitetura do ChatGPT
A arquitetura GPT desempenha um papel fundamental na habilitação dos recursos do ChatGPT como
uma IA conversacional interativa. Embora já tenhamos explorado a arquitetura do Transformer no
capítulo anterior, esta seção investiga como ela é especificamente adaptada e otimizada para
interações baseadas em chat no ChatGPT. ChatGPT, como todos os modelos da série GPT, é
baseado em uma arquitetura Transformer, aproveitando especificamente uma estrutura “somente
decodificador” do modelo Transformer original. Além disso, ChatGPT incorpora um componente
crucial conhecido como “aprendizado por reforço com feedback humano (RLHF)”. RLHF é uma
técnica avançada que aprimora o desempenho do ChatGPT e será abordada em detalhes
posteriormente neste capítulo, proporcionando uma compreensão abrangente de sua importância,
conforme mostrado na Figura 4-2.
A Figura 4-2 apresenta um diagrama da arquitetura do ChatGPT, ilustrando detalhadamente
seu processo de treinamento. Este diagrama fornece uma visão abrangente de como o ChatGPT
aprende e refina seus recursos durante a fase de treinamento. Ele mostra o fluxo de dados, os
componentes internos do modelo e o pipeline de treinamento, oferecendo insights sobre o
desenvolvimento do modelo.
59
Machine Translated by Google
1. Modelos de transformadores:
foram introduzidos por Vaswani et al. no artigo “Atenção é tudo que você precisa”. A
60
Machine Translated by Google
61
Machine Translated by Google
62
Machine Translated by Google
63
Machine Translated by Google
64
Machine Translated by Google
• Codificação posicional: Para lidar com a natureza sequencial dos dados de entrada, a
codificação posicional é incorporada em cada camada. Essa codificação
fornece informações sobre a ordem e a posição dos tokens no histórico da
conversa, garantindo que o modelo possa diferenciar os tokens e compreender
suas posições no diálogo.
65
Machine Translated by Google
dados. Para explicar isso, os modelos GPT utilizam codificações posicionais, que
fornecem informações sobre a posição de cada palavra na sequência. Isso permite que
o modelo entenda a ordem das palavras e faça previsões precisas com base nessa
Transformer.
O mecanismo é modificado para evitar que os tokens atendam aos tokens futuros na
mascarada permite que o modelo atenda apenas aos tokens relevantes dentro
causalidade e garantir que o modelo gere texto sequencialmente, um token por vez.
diagonal principal são definidos como infinito negativo (ou um valor negativo muito
66
Machine Translated by Google
67
Machine Translated by Google
Aprendizagem por reforço de feedback humano (RLHF) mostrada anteriormente na Figura 4-4
é um componente essencial da arquitetura ChatGPT, desempenhando um papel crucial em seu processo
de ajuste fino e elevando suas capacidades de conversação. A abordagem RLHF permite que o ChatGPT
aprenda com avaliadores humanos e adapte sua geração de linguagem com base em seu feedback. RL, ou
aprendizado por reforço, é um tipo de aprendizado de máquina em que um agente aprende interagindo com
seu ambiente e recebendo feedback na forma de recompensas. Ao contrário da aprendizagem não
supervisionada, onde o modelo aprende com dados não rotulados sem qualquer orientação específica, e da
aprendizagem supervisionada, onde é treinado em dados rotulados com respostas corretas predefinidas, RL
envolve aprendizagem por tentativa e erro:
68
Machine Translated by Google
respostas geradas por qualidade. Este conjunto de dados é usado como um modelo
por reforço por meio de otimização de políticas proximais é uma etapa crucial
Durante esta fase, o modelo utiliza dados de comparação para melhorar a sua
PPO é uma técnica que otimiza a política do chatbot com o objetivo de aumentar a
ajuste fino, onde refina suas habilidades com base no feedback humano.
A fase de aprendizagem por reforço com PPO faz parte desse processo de
chatbot para garantir que ele forneça respostas de alta qualidade. Então, em
refina ainda mais a “política” do ChatGPT para torná-lo melhor na geração de conversas
naturais e envolventes.
comparação e usando o PPO para melhorar as respostas que gera. Este ciclo é
69
Machine Translated by Google
A fase de pré-treinamento é a etapa inicial na criação do ChatGPT. Durante esta fase, o modelo passa
por aprendizagem não supervisionada em conjuntos de dados extensos e diversos contendo uma ampla
variedade de textos de diversas fontes. Usando a arquitetura Transformer, o ChatGPT aprende a prever a
próxima palavra em uma sequência com base no contexto das palavras anteriores. Ao absorver
grandes quantidades de dados de texto, o modelo internaliza gramática, sintaxe, semântica e relações
contextuais, permitindo gerar respostas coerentes e contextualmente apropriadas durante as interações.
70
Machine Translated by Google
Embora o pré-treinamento forneça ao ChatGPT uma ampla compreensão do idioma, ele não é diretamente
adaptado a tarefas específicas ou interações do usuário. A fase de ajuste fino preenche esta lacuna,
adaptando o modelo pré-treinado a domínios e tarefas específicos. Durante o ajuste fino, o ChatGPT é
exposto a conjuntos de dados específicos de domínio, que podem incluir exemplos rotulados para
aprendizagem supervisionada ou demonstrações de comportamento desejado:
A pré-formação e o aperfeiçoamento não são eventos isolados, mas sim parte de um processo contínuo
de aprendizagem e melhoria contínua. À medida que o ChatGPT interage com os usuários e recebe
feedback, ele pode ajustar ainda mais suas respostas às preferências específicas do usuário e ao contexto
em evolução, melhorando seu desempenho geral e capacidade de resposta.
71
Machine Translated by Google
72
Machine Translated by Google
entidade; em vez disso, consiste em pesos e parâmetros aprendidos inerentes ao modelo. Esses pesos representam
a compreensão do modelo sobre padrões de linguagem, contexto e comportamento adequado, todos obtidos durante
o treinamento. Portanto, ao discutir os métodos de seleção de palavras, trata-se de uma exploração de como esses
pesos aprendidos influenciam o comportamento do ChatGPT dentro de uma única estrutura integrada.
Em essência, a geração de respostas do ChatGPT aproveita essa arquitetura unificada e sua política para
prever e gerar palavras, culminando em respostas que demonstram coerência contextual e relevância. É importante
esclarecer que a geração de respostas do modelo não é orientada por entendimento ou planejamento explícito;
em vez disso, baseia-se no seu conhecimento adquirido de padrões de linguagem estatística, todos
Modelos de linguagem como o ChatGPT aprendem com grandes conjuntos de dados que contêm texto da
Internet. Dada a natureza destes conjuntos de dados, os modelos podem captar e propagar os preconceitos presentes
nos dados de treino. Estes preconceitos podem manifestar-se de várias formas, tais como preconceitos de género,
preconceitos raciais ou preconceitos em relação a tópicos controversos ou sensíveis. Os preconceitos podem afetar
a forma como o sistema de IA interage com os utilizadores, muitas vezes conduzindo a resultados que podem ser
Reconhecer os danos potenciais que estes preconceitos podem causar é crucial. Se não forem verificados, eles
grupos de usuários.
A OpenAI está plenamente consciente do potencial de preconceitos nos resultados do sistema de IA e tem
• Ajuste fino com supervisão humana: Após o pré-treinamento inicial, a OpenAI utiliza um
processo de ajuste fino com revisores humanos, que seguem as diretrizes fornecidas
pela OpenAI. As diretrizes afirmam explicitamente não favorecer nenhum grupo político. Os
73
Machine Translated by Google
processo de ajuste fino exige muitos recursos, impactando tanto os custos quanto o
• Atualizações regulares das diretrizes: As diretrizes para revisores humanos não são estáticas
como o ChatGPT gera respostas para várias entradas. Isto inclui melhorias na clareza
atualize para ChatGPT que permite aos usuários personalizar facilmente seu
comportamento, dentro de amplos limites sociais. Desta forma, a IA pode ser uma
ferramenta útil para utilizadores individuais, sem impor um modelo único para todos.
IA.
74
Machine Translated by Google
No entanto, é evidente que abordar os preconceitos na IA não é uma tarefa simples, mas
em vez disso, um empreendimento matizado e intrincado. A abordagem da OpenAI envolve
ajuste fino com supervisão humana, atualizações regulares das diretrizes, transparência, pesquisa
e desenvolvimento e introdução de opções de personalização.
No entanto, é crucial reconhecer que a procura de respostas de IA isentas de preconceitos acarreta
compromissos. Isso inclui aumento de custos, possíveis implicações de desempenho e o desafio de
alinhar sistemas de IA com nuances linguísticas em constante evolução. Além disso, o desafio
fundamental de definir e alcançar conjuntos de dados e processos imparciais persiste neste cenário
dinâmico.
A OpenAI continua comprometida com o aprendizado e a melhoria contínua na área de mitigação
de preconceitos. A organização reconhece que embora estes esforços ajudem a mitigar preconceitos,
podem não eliminá-los totalmente. À medida que avançamos, é importante participar em
discussões colaborativas, partilhar feedback e trabalhar coletivamente para construir sistemas de IA
que respeitem diversas perspetivas e valores.
75
Machine Translated by Google
Limitações do ChatGPT
• Falta de conhecimento do mundo: embora o ChatGPT possa gerar respostas sobre uma
ampla variedade de tópicos, ele não conhece o mundo da mesma forma que os
humanos. Ele não tem acesso a informações atualizadas ou em tempo real, e suas
respostas são inteiramente baseadas em padrões que aprendeu durante o
treinamento, que incluem dados apenas até o limite do treinamento.
• Vieses: Às vezes, o ChatGPT pode apresentar preconceitos presentes nos dados nos quais foi
treinado. Apesar dos esforços para minimizar estes preconceitos durante o processo de
ajuste fino, eles ainda podem aparecer ocasionalmente nos resultados do modelo.
76
Machine Translated by Google
Conclusão
Concluindo, a arquitetura do ChatGPT representa um avanço inovador no campo do processamento
de linguagem natural e IA. Sua arquitetura baseada em GPT, juntamente com seu processo de pré-
treinamento e ajuste fino, permite compreender e gerar texto humano em uma ampla gama de
tópicos. No entanto, como acontece com qualquer modelo de IA, não está isento de limitações,
que incluem possíveis preconceitos, potencial para produzir respostas inadequadas e
incapacidade de verificar factos ou demonstrar compreensão profunda.
O compromisso da OpenAI em enfrentar estes desafios através de investigação contínua,
transparência e feedback dos utilizadores mostra a importância das considerações éticas na
implementação da IA. À medida que continuamos a fazer progressos na tecnologia de IA, modelos
como o ChatGPT desempenharão um papel fundamental, iluminando tanto as imensas possibilidades
como as complexidades inerentes à criação de sistemas de IA responsáveis, fiáveis e úteis.
77
Machine Translated by Google
CAPÍTULO 5
• Usar um conjunto de dados maior de texto e código: isso permite que o Google Bard
aprenda relações mais complexas entre palavras e frases, aprenda mais sobre o mundo
em geral e aprenda mais sobre uma gama mais ampla de tarefas.
• Usando uma rede neural mais poderosa: isso permite que o Google Bard
aprenda relações mais complexas entre palavras e frases, o que pode levar
a um melhor desempenho em uma variedade de tarefas.
79
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4_5
Machine Translated by Google
A Arquitetura do Transformador
A arquitetura que sustenta Google Bard e Claude 2 deve suas origens à arquitetura inovadora do
Transformer. Uma exploração detalhada do funcionamento interno do Transformer pode ser encontrada no
Capítulo 2, onde nos aprofundamos nas complexidades dos mecanismos de autoatenção, redes
neurais feed-forward posicionadas e seu impacto transformador nas tarefas de processamento de
linguagem.
Bard é construído sobre os alicerces estabelecidos pela arquitetura Transformer, aproveitando
sua capacidade de capturar relações contextuais e dependências dentro do texto. Ao aproveitar esses
princípios, “Bard” demonstra uma capacidade notável de gerar respostas, composições e outras formas de
criação cativantes e contextualmente relevantes.
contente.
80
Machine Translated by Google
rede neural do que a arquitetura Google Bard. Isso torna o treinamento da arquitetura
do Transformer mais rápido, mas também limita sua capacidade de aprender
relações complexas entre palavras e frases. A arquitetura Transformer
normalmente usa uma rede neural com algumas centenas de milhões de parâmetros,
enquanto a arquitetura Google Bard usa uma rede neural com 137 bilhões de parâmetros.
O mecanismo permite que o Google Bard atenda a várias partes diferentes do texto
de entrada ao mesmo tempo, o que o torna mais poderoso e capaz. A arquitetura
Transformer normalmente usa um único cabeçote de atenção, enquanto a arquitetura
Google Bard usa 12 cabeçotes de atenção.
No geral, a arquitetura Google Bard é uma versão mais poderosa e capaz da arquitetura Transformer. É
capaz de aprender relações mais complexas entre palavras e frases e de gerar textos mais criativos e
informativos.
A Tabela 5-1 resume as diferenças entre a arquitetura original do Transformer
e a arquitetura do Google Bard.
Conjunto de dados Conjunto de dados menor de texto Grande conjunto de dados de texto e código
81
Machine Translated by Google
e código que inclui texto de diversas fontes, incluindo livros, artigos, sites e repositórios de código. Isso permite que o
Google Bard aprenda as relações estatísticas entre palavras e frases em uma ampla variedade de contextos.
O conjunto de dados no qual o Google Bard é treinado inclui textos de diversas fontes, incluindo
compreendendo vários gêneros literários, como romances, livros de não ficção e livros
didáticos. Essa gama diversificada de fontes contribui para sua base de conhecimento
rica e abrangente.
incluindo artigos de notícias, postagens em blogs e trabalhos acadêmicos. Isso permite que
o Google Bard aprenda as relações estatísticas entre palavras e frases em vários estilos.
sites. Isso permite que o Google Bard aprenda as relações estatísticas entre palavras e frases
discussões em fóruns.
de repositórios de código. Isso permite que o Google Bard aprenda as relações estatísticas
entre palavras e frases no código, como nomes de variáveis, nomes de funções e palavras-
chave.
O tamanho e a diversidade do conjunto de dados no qual o Google Bard foi treinado permitem que ele aprenda
Isso torna o Google Bard mais preciso e informativo do que os modelos de linguagem que são
treinado em conjuntos de dados menores.
Além do tamanho e da diversidade do conjunto de dados, a forma como o Google Bard é treinado
também contribui para sua precisão e informatividade. O Google Bard é treinado usando uma técnica chamada
aprendizagem autossupervisionada.
82
Machine Translated by Google
Aprendizagem Auto-Supervisionada
A aprendizagem auto-supervisionada envolve treinar um modelo em uma tarefa que não requer supervisão
humana. No caso do Google Bard, o modelo é treinado para prever a próxima palavra em uma sequência de
palavras. Esta tarefa requer que o modelo aprenda as relações estatísticas entre palavras e frases.
Forças
• Precisão e Informatividade: o Google Bard é um modelo de linguagem muito
preciso e informativo. Ele pode gerar texto gramaticalmente correto e
factualmente preciso. Também pode gerar texto criativo e interessante.
• Criatividade: Google Bard é um modelo de linguagem criativa. Ele pode gerar texto em
vários formatos, incluindo poemas, códigos e scripts. Também pode gerar textos
engraçados ou instigantes.
• Acessibilidade: o Google Bard é acessível a todos. Pode ser usado por pessoas de todas
as idades e habilidades.
83
Machine Translated by Google
Fraquezas
• Privacidade: o Google Bard coleta e armazena dados sobre seus usuários. Esse
os dados podem ser usados para rastrear usuários ou direcioná-los com publicidade.
84
Machine Translated by Google
Em geral, o GPT-4 é melhor em tarefas que exigem um conhecimento profundo do idioma, como
tradução e resumo. Bard é melhor em tarefas que exigem acesso a informações do mundo real, como
responder perguntas e gerar formatos de texto criativos.
Aqui estão algumas fontes que podem ajudá-lo com isso:
• ChatGPT vs. Bard: Qual modelo de linguagem grande é melhor? por Jonathan
Morgan (médio)
• ChatGPT vs. Bard: uma comparação de dois grandes modelos líderes de linguagem
por Siddhant Sinha (Towards Data Science)
• ChatGPT vs. Bard: Qual modelo de linguagem grande é ideal para você? por
o Blog de IA (Google AI)
Essas fontes fornecem uma comparação mais detalhada entre ChatGPT e Bard, incluindo
seus pontos fortes, fracos e desempenho em diferentes tarefas. Eles também discutem os possíveis vieses
de cada modelo.
É importante notar que estas fontes são todas relativamente novas, e o desempenho
do ChatGPT e Bard está melhorando constantemente. É possível que o desempenho do ChatGPT ou
Bard mude significativamente no futuro.
85
Machine Translated by Google
Cláudio 2
Preenchendo a lacuna entre a humanidade e as máquinas. O rápido avanço da inteligência artificial (IA) na
última década conferiu capacidades notáveis às máquinas. No entanto, persiste um abismo
duradouro entre o intelecto dos humanos e o das máquinas.
A seguir está uma seleção dos atributos de destaque que distinguem o Claude 2 de seus equivalentes
chatbot:
86
Machine Translated by Google
87
Machine Translated by Google
88
Machine Translated by Google
Guiada por estes princípios fundamentais, a filosofia de design centrada no ser humano de Claude molda
as suas interações e contribuições, promovendo uma relação simbiótica entre a IA e a humanidade.
Para oferecer esta experiência de IA centrada no ser humano, Claude é meticulosamente elaborado com
recursos de processamento de linguagem natural de última geração:
IA Constitucional
Claude 2 usa IA constitucional. Os princípios da Constituição são utilizados para orientar a formação de Claude
2 e garantir que ela não gere conteúdos nocivos ou ofensivos.
A Figura 5-1 refere-se ao funcionamento interno da IA constitucional, com base no artigo publicado
por Yuntao Bai e seus colegas da Anthropic.
89
Machine Translated by Google
90
Machine Translated by Google
sociedade.
• Justiça: Claude 2 deveria tratar todos os seres humanos de forma justa e igual.
No entanto, é importante notar que a IA constitucional não é uma solução perfeita. Os sistemas de IA
são complexos e podem, por vezes, gerar conteúdos prejudiciais ou ofensivos, mesmo quando são
treinados com recurso à IA constitucional. É, portanto, importante implementar outras salvaguardas, tais
como diretrizes de segurança, para evitar que os sistemas de IA sejam utilizados para fins prejudiciais ou
antiéticos.
91
Machine Translated by Google
Claude 2 vs.
Claude 2 e GPT 3.5 são grandes modelos de linguagem (LLMs) capazes de gerar texto, traduzir idiomas e responder
• Dados de treinamento: Claude 2 foi treinado em um enorme conjunto de dados de texto e código, enquanto
o GPT 3.5 foi treinado apenas em um conjunto de dados de texto. Isto significa que Claude 2 é capaz de
gerar resultados mais exatos e precisos, pois tem acesso a uma gama mais ampla de informações.
Esses recursos incluem um filtro para polarização e um mecanismo para detectar e prevenir loops
prejudiciais. O GPT 3.5 não possui esses mesmos recursos de segurança, o que aumenta a
Moldar a IA com características como bom senso, perspicácia de conversação e valores humanos marca a fronteira
inexplorada do avanço tecnológico. Através da arquitetura centrada no ser humano de Claude e das proezas avançadas da
linguagem natural, avanços substanciais são alcançados na redução das disparidades duradouras entre a inteligência
92
Machine Translated by Google
À medida que a evolução de Claude se desenrola, ela abre o caminho para um cenário de IA que
não suplanta as habilidades humanas, mas as aprimora sinergicamente. O horizonte de um futuro colaborativo,
onde humanos e máquinas se unem como parceiros harmoniosos, está tentadoramente próximo.
Falcão IA
Falcon AI é um modelo de linguagem grande (LLM) desenvolvido pelo Technology Innovation Institute (TII)
nos Emirados Árabes Unidos. É um modelo somente de decodificador autorregressivo de 180 bilhões de
parâmetros treinado em 1 trilhão de tokens. Ele foi treinado continuamente na nuvem AWS por dois
meses com 384 GPUs conectadas.
Falcon AI é um modelo de linguagem poderoso que pode ser usado para uma variedade de tarefas,
incluindo
forma informativa.
93
Machine Translated by Google
O Falcon AI ainda está em desenvolvimento, mas tem potencial para ser uma ferramenta poderosa para uma variedade de
aplicações. É importante observar que o Falcon AI é um modelo de linguagem amplo e, como tal, pode ser tendencioso. É importante
• Falcon 180B: Um modelo de 180 bilhões de parâmetros capaz de realizar tarefas complexas,
especialista.
• Falcon AI também está sendo usado para desenvolver aplicações nas áreas de
saúde, educação e finanças.
Falcon AI é uma nova tecnologia promissora que tem o potencial de revolucionar a forma como interagimos
com os computadores. É importante continuar a desenvolver e pesquisar esta tecnologia para que possa ser utilizada
Isso significa que ele pode gerar texto, mas não consegue compreender o significado do
• Ele foi treinado em um enorme conjunto de dados de texto e código. Isso lhe confere
• Ainda está em desenvolvimento, mas tem potencial para ser uma ferramenta poderosa para
94
Machine Translated by Google
• Ele ainda está em desenvolvimento, portanto pode não ser capaz de realizar todas as tarefas
perfeitamente.
No geral, o Falcon AI é um modelo de linguagem poderoso que tem potencial para ser uma ferramenta
valiosa para uma variedade de aplicações. No entanto, é importante utilizá-lo com responsabilidade e estar ciente de
suas limitações.
LLaMa 2
LLaMa 2 é uma família de grandes modelos de linguagem (LLMs) lançada pela Meta AI em julho de 2023. É um sucessor
O LLaMa 2 é treinado em um enorme conjunto de dados de texto e código e possui dois trilhões de
fichas. Isto é significativamente mais do que o LLaMa original, que foi treinado em um trilhão de tokens. O conjunto
de dados maior permite que o LLaMa 2 aprenda uma gama mais ampla de conhecimentos e habilidades.
LLaMa 2 também possui um comprimento de contexto maior que o LLaMa original. Isso significa que ele pode
compreender o significado do texto em um contexto mais longo, o que é importante para tarefas como resposta a perguntas
e resumo.
A arquitetura LLaMa 2 mostrada na Figura 5-3 é uma modificação da arquitetura Transformer. A arquitetura
Transformer é uma arquitetura de rede neural que é bem
adequado para tarefas de processamento de linguagem natural. É composto por uma pilha de camadas codificadoras
e decodificadoras. As camadas codificadoras codificam o texto de entrada em uma representação oculta e as camadas
95
Machine Translated by Google
Figura 5-3. Treinamento do LLaMa 2-Chat Este processo começa com o pré-treinamento do LLaMa
2 usando fontes online disponíveis publicamente. Em seguida, criamos uma versão inicial do
LLaMa 2-Chat através da aplicação de ajuste fino supervisionado. Posteriormente, o modelo
é refinado iterativamente usando metodologias de aprendizagem por reforço com feedback
humano (RLHF), especificamente por meio de amostragem de rejeição e otimização de
política proximal (PPO). Ao longo do estágio RLHF, o acúmulo de dados iterativos de modelagem
de recompensas em paralelo com melhorias no modelo é crucial para garantir que os modelos de
recompensa permaneçam dentro da distribuição.
96
Machine Translated by Google
Além dessas modificações, a arquitetura LLaMa 2 também utiliza uma janela de contexto maior
e atenção de consulta agrupada. A janela de contexto maior permite que o modelo processe mais
informações, e a atenção da consulta agrupada permite que o modelo atenda com mais eficiência ao
texto de entrada. No geral, a arquitetura LLaMa 2 é uma arquitetura de modelo de linguagem de última
geração que demonstrou alcançar excelente desempenho em uma variedade de tarefas de processamento
de linguagem natural.
A arquitetura LLaMa 2 é composta por uma pilha de camadas codificadoras e decodificadoras.
As camadas codificadoras codificam o texto de entrada em uma representação oculta e as camadas
decodificadoras geram o texto de saída a partir da representação oculta.
A arquitetura LLaMa 2 também utiliza uma série de outras técnicas para melhorar seu
desempenho, como pré-normalização, função de ativação SwiGLU, incorporações posicionais
rotativas e uma janela de contexto maior.
Foi demonstrado que o LLaMa 2 supera o LLaMa original em vários benchmarks, incluindo
geração de texto, tradução, resposta a perguntas e geração de código. Também é mais útil e seguro
do que o LLaMa original, graças ao uso de aprendizagem por reforço a partir de feedback humano (RLHF).
LLaMa 2 tem potencial para ser uma ferramenta poderosa para uma variedade de aplicações. Já
está sendo usado para tarefas como diálogo, geração de código e resposta a perguntas.
No futuro, é provável que seja usado para ainda mais aplicações, como educação, saúde e
atendimento ao cliente.
Aqui estão alguns dos principais recursos do LLaMa 2:
97
Machine Translated by Google
No geral, o LLaMa 2 é um modelo de linguagem poderoso que tem potencial para ser um valioso
ferramenta para diversas aplicações. No entanto, é importante utilizá-lo com responsabilidade e estar ciente de
suas limitações.
Boneca 2
Dolly 2 é da Databricks. É um modelo de linguagem causal de 175 bilhões de parâmetros criado pela
Databricks, uma empresa de análise de dados corporativos e IA. Ele é treinado em um enorme conjunto de
dados de texto e código e é capaz de executar uma ampla gama de tarefas, incluindo
• Geração de texto
• Tradução
• Resposta a perguntas
• Geração de código
• Análise de dados
• Resumo
• Escrita criativa
Dolly 2 ainda está em desenvolvimento, mas tem potencial para ser uma ferramenta poderosa para
uma variedade de aplicações. Já está sendo usado para tarefas como diálogo, geração de código e
resposta a perguntas.
Aqui estão alguns dos principais recursos do Dolly 2:
• Ainda está em desenvolvimento, mas tem potencial para ser uma ferramenta poderosa
para uma variedade de aplicações.
98
Machine Translated by Google
Conclusão
Além de ChatGPT, Google Bard e Claude, existem muitos outros grandes modelos de linguagem (LLMs)
que estão sendo desenvolvidos atualmente. Esses modelos são treinados em grandes conjuntos de dados
de texto e código e são capazes de executar uma ampla gama de tarefas, incluindo geração de texto,
tradução, resposta a perguntas e geração de código.
Os LLMs que discuti neste capítulo são apenas alguns exemplos dos muitos que estão disponíveis.
À medida que esta tecnologia continua a evoluir, podemos esperar ver modelos de linguagem ainda mais
poderosos e versáteis sendo desenvolvidos no futuro.
Esses modelos têm potencial para ser uma ferramenta valiosa para uma variedade de aplicações.
No entanto, é importante utilizá-los com responsabilidade e estar ciente das suas limitações.
Os LLMs podem ser tendenciosos e usados para fins maliciosos. É importante utilizá-los de forma ética e
benéfica para a sociedade.
99
Machine Translated by Google
CAPÍTULO 6
101
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4_6
Machine Translated by Google
representação vetorial.
• Tradução de texto: permite traduzir texto de um idioma para outro usando o LLM. Scikit-
LLM fornece a classe GPTTranslator para traduzir texto de um idioma para outro.
• Sumarização de texto: permite resumir um documento de texto em uma versão mais curta
e concisa. Scikit-LLM fornece a classe GPTSummarizer para resumir
documentos de texto.
102
Machine Translated by Google
https://platform.openai.com/account/api-keys
https://platform.openai.com/account/org-settings
OPENAI_API_KEY = "sk-****"
OPENAI_ORG_ID = "org-****"
103
Machine Translated by Google
X, y = get_classification_dataset()
lente(X)
Saída: 30
Saída:
sim
104
Machine Translated by Google
Saída:
105
Machine Translated by Google
Agora, vamos usar as variáveis Xey como parâmetro para a função training_data:
X_train = dados_treinamento(X)
print(len(X_train))
X_trem
Saída:
106
Machine Translated by Google
Saída:
X_teste = testes_dados(X)
imprimir(len(X_teste))
X_teste
Saída:
teste_y = dados_teste(y)
print(len(y_teste))
y_teste
107
Machine Translated by Google
Saída:
# ajustando os dados
clf.fit(X_train, y_train)
%%tempo
# prevendo os dados
preditos_labels = clf.predict(X_test)
Saída:
108
Machine Translated by Google
Saída:
Avaliar modelo:
Saída:
O Scikit-LLM vai além, garantindo que as respostas que recebe contenham rótulos válidos.
Quando encontra uma resposta sem um rótulo válido, o Scikit-LLM não o deixa na dúvida. Em
vez disso, ele intervém e seleciona um rótulo aleatoriamente, levando em consideração as
probabilidades baseadas na frequência com que esses rótulos aparecem nos dados de treinamento.
Simplificando, o Scikit-LLM cuida dos detalhes técnicos, garantindo que você
sempre tenha rótulos significativos para trabalhar. Ele o protege, mesmo que falte um rótulo em
uma resposta, pois ele escolherá um para você de maneira inteligente, com base em seu
conhecimento das frequências dos rótulos nos dados de treinamento.
#definindo o modelo
clf_no_label=ZeroShotGPTClassifier()
109
Machine Translated by Google
# prevendo os rótulos
previu_labels_without_training_data = clf_no_label.predict(X_test)
previu_labels_without_training_data
Saída:
Saída:
Avaliar modelo:
110
Machine Translated by Google
Saída:
Até agora exploramos como usar os modelos Scikit-LLM para classificação de texto, a seguir
exploraremos os outros recursos do Scikit-LLM.
Nota: Nos próximos exemplos, não dividiremos os dados em treinar e testar ou avaliar
o modelo, como fizemos para classificação de texto, concentra-se na parte de uso.
Implementação
# importando módulo zeroshot Multi-Label e conjunto de dados de classificação
de skllm importar MultiLabelZeroShotGPTClassifier
de skllm.datasets importar get_multilabel_classification_dataset
#obtém o conjunto de dados de classificação do sklearn
X, y = get_multilabel_classification_dataset()
#definindo o modelo
clf = MultiLabelZeroShotGPTClassifier(max_labels=3)
#adequando o modelo
clf.fit(X, y)
# fazendo previsões
rótulos = clf.predict(X)
classificação zero-shot multilabel, você especifica o número máximo de rótulos que deseja atribuir a
cada amostra, como a configuração max_labels=3 como exemplo. Este parâmetro permite controlar
quantos rótulos o modelo pode atribuir a uma determinada amostra de texto durante
classificação.
111
Machine Translated by Google
Implementação
# obtendo conjunto de dados de classificação para previsão apenas de
skllm.datasets import get_multilabel_classification_dataset from skllm import
MultiLabelZeroShotGPTClassifier = get_multilabel_classification_dataset()
X, _
# Definindo todos os rótulos que precisam ser previstos candidate_labels
= [ "Qualidade", "Preço",
"Entrega",
"Serviço",
"Variedade de
Produtos"
# prevendo os rótulos de
dados = clf.predict(X)
112
Machine Translated by Google
Vetorização de texto
A vetorização de texto é um processo crucial que envolve a transformação de informações textuais em
formato numérico, permitindo que as máquinas as compreendam e analisem de forma eficaz. Dentro da
estrutura Scikit-LLM, você encontrará uma ferramenta valiosa chamada GPTVectorizer. Este módulo
tem como objetivo converter texto, independentemente do seu comprimento, em um conjunto de valores
numéricos de tamanho fixo conhecido como vetor. Essa transformação permite que os modelos de
aprendizado de máquina processem e dêem sentido aos dados baseados em texto com mais eficiência.
Implementação
# Importando a classe GPTVectorizer do módulo skllm.preprocessing
de skllm.preprocessing importar GPTVectorizer
modelo = GPTVectorizer()
#transformando o
vetores = model.fit_transform(X)
113
Machine Translated by Google
yh = clf.predict(X_test)
Resumo de texto
Na verdade, o GPT é excelente em resumo de texto, e essa força é aproveitada no Scikit-
LLM por meio do módulo GPTSummarizer. Você pode utilizar este módulo de duas maneiras
distintas:
114
Machine Translated by Google
Implementação
# Importando a classe GPTSummarizer do módulo skllm.preprocessing
de skllm.preprocessing importar GPTSummarizer
# Ajusta o modelo aos dados e gera os resumos, que são atribuídos à variável 'resumos'
resumos = s.fit_transform(X)
É importante entender que o hiperparâmetro “max_words” serve como uma diretriz flexível
para limitar o número de palavras nos resumos gerados. Não é estritamente aplicado além do
prompt inicial fornecido. Em termos práticos, isto significa que poderá haver casos em que o
número real de palavras nos resumos gerados exceda ligeiramente o limite especificado.
Em termos mais simples, embora “max_words” forneça uma meta aproximada para o
comprimento do resumo, o resumidor pode ocasionalmente produzir resumos um pouco mais longos.
Este comportamento depende do contexto específico e do conteúdo do texto de entrada,
uma vez que o resumidor visa manter a coerência e a relevância na sua saída.
Conclusão
Basicamente, o Scikit-LLM pode ser usado para análise de texto e foi projetado para ser fácil de
usar e fornecer uma variedade de recursos, incluindo classificação de texto zero-shot, classificação
de texto zero-shot multirrótulo, vetorização de texto, tradução de texto e texto resumo.
O mais importante é que você não precisa de dados pré-rotulados para treinar qualquer
modelos. Essa é a beleza dos Scikit-LLMs.
115
Machine Translated by Google
Para começar a usar LLMs para análise de texto facilmente. Scikit-LLM fornece uma API simples e intuitiva que
facilita o início do uso de LLMs para análise de texto, mesmo se você não estiver familiarizado com LLMs ou aprendizado
de máquina.
Combinar LLMs com outros algoritmos de aprendizado de máquina. O Scikit-LLM pode ser integrado aos
pipelines do scikit-learn, o que facilita a combinação de LLMs com outros algoritmos de aprendizado de máquina. Isso
pode ser útil para tarefas complexas de análise de texto que exigem várias etapas.
Experimentar LLMs para análise de texto. Scikit-LLM é um projeto de código aberto, o que significa que seu
uso e modificação são gratuitos. Isso o torna uma boa opção para pesquisadores e desenvolvedores que desejam
• Você pode usar o Scikit-LLM para classificar o feedback do cliente em diferentes categorias,
como positivo, negativo ou neutro. Essas informações podem ser usadas para melhorar
• Você pode usar o Scikit-LLM para classificar artigos de notícias em diferentes tópicos, como
política, negócios ou esportes. Essas informações podem ser usadas para criar feeds de
para outro. Isto pode ser útil para empresas que operam em vários países ou para pessoas
• Você pode usar o Scikit-LLM para resumir documentos de texto longo. Isto pode ser útil para
obter rapidamente os pontos principais de um documento ou para criar uma versão mais
Além do mencionado anteriormente, o Scikit-LLM também oferece uma série de outros benefícios, como
Escalabilidade: o Scikit-LLM pode ser dimensionado para lidar com grandes quantidades de dados de texto.
116
Machine Translated by Google
CAPÍTULO 7
LLMs para
empresas e LLMOps
Neste capítulo, apresentamos uma estrutura de referência para a pilha emergente de aplicativos de
grandes modelos de linguagem (LLMs). A estrutura ilustra os sistemas, ferramentas e abordagens de
design predominantes que foram observados na prática entre startups e empresas de IA. É
importante observar que essa pilha está em seus estágios iniciais e provavelmente passará por
transformações significativas com o progresso da tecnologia subjacente.
No entanto, nossa intenção é que este recurso forneça orientação valiosa aos desenvolvedores
que estão atualmente envolvidos com LLMs.
Existem inúmeras abordagens para aproveitar as capacidades dos LLMs no desenvolvimento,
que abrangem a criação de modelos do zero, o refinamento de modelos de código aberto por meio de
ajustes finos ou a utilização de APIs hospedadas. A estrutura que apresentamos aqui é centrada no
aprendizado no contexto, uma estratégia de design predominante pela qual a maioria dos
desenvolvedores opta, especialmente viabilizada por meio de modelos fundamentais.
A seção subsequente oferece uma elucidação sucinta dessa estratégia, com
desenvolvedores experientes de LLM têm a opção de ignorá-lo.
O poder dos LLMs reside não apenas nas suas capacidades, mas também na sua utilização
responsável e ética, que é fundamental em ambientes empresariais. Discutiremos como as organizações
estão navegando no intrincado cenário de privacidade de dados, mitigação de preconceitos e transparência,
ao mesmo tempo em que aproveitam o potencial transformador desses modelos de linguagem.
Agora, enquanto nos preparamos para concluir a nossa exploração, é importante destacar
um facilitador crucial desta transformação: os serviços em nuvem. A nuvem, com seu poder
computacional, escalabilidade e alcance global incomparáveis, tornou-se a infraestrutura preferida
para implantação e gerenciamento de LLMs. Proporciona um ambiente dinâmico onde as empresas
podem aproveitar todo o potencial destes modelos linguísticos, ao mesmo tempo que desfrutam de
uma série de benefícios. Abordaremos brevemente como os serviços em nuvem complementam a adoção
de LLMs, oferecendo escalabilidade, economia, segurança e integração perfeita com fluxos de
trabalho existentes. Aqui estão três maneiras de habilitar LLMs na empresa.
117
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4_7
Machine Translated by Google
• Segundo, uma API LLM generalizada privada é mais segura do que usar uma API LLM
pública. Isso ocorre porque os dados da empresa não são compartilhados com
mais ninguém. Isto é importante para empresas que estão preocupadas com a
segurança dos seus dados.
• Terceiro, uma API LLM generalizada privada é mais escalável do que usar uma API
LLM pública. Isso ocorre porque a empresa pode aumentar a quantidade de
poder computacional usado para treinar e executar o LLM. Isso permite que
a empresa use o LLM para tarefas mais exigentes.
No entanto, também existem alguns desafios no uso de uma API LLM generalizada privada:
• Pode ser caro desenvolver e manter uma API LLM privada. Isso ocorre porque a
empresa precisa ter experiência e recursos para treinar e administrar o LLM.
118
Machine Translated by Google
• Uma API LLM privada pode ser mais lenta do que usar uma API LLM pública. Isso
ocorre porque os dados da empresa precisam ser transferidos para o LLM antes de
serem processados.
• Uma API LLM privada pode ser menos flexível do que usar uma API LLM pública.
Isso ocorre porque a empresa está limitada aos recursos e capacidades
fornecidos pela API.
No geral, uma API LLM generalizada privada é uma boa opção para empresas que precisam usar um
LLM para suas tarefas específicas e que estão preocupadas com a segurança de seus dados. No entanto, é
importante avaliar os benefícios e desafios de usar uma API LLM privada antes de tomar uma decisão.
Aqui estão alguns exemplos de como as empresas podem usar uma API LLM generalizada privada:
• Atendimento ao Cliente: Uma empresa pode usar um LLM para gerar respostas
personalizadas às dúvidas dos clientes.
• Gestão de Risco: Uma empresa pode usar um LLM para identificar potenciais
riscos e vulnerabilidades.
• Detecção de fraude: uma empresa pode usar um LLM para detectar fraudes
transações.
Em sua essência, a aprendizagem em contexto envolve o emprego de LLMs prontos para uso (sem
ajuste fino) e a manipulação de seu comportamento por meio de instruções astutas e condicionamento com
base em dados “contextuais” privados.
Considere o cenário de criação de um chatbot para responder a dúvidas relacionadas a uma coleção
de documentos legais. Uma abordagem direta pode envolver a inserção de todos os documentos em um
prompt ChatGPT ou GPT-4, seguido de perguntas sobre eles. Enquanto isso
119
Machine Translated by Google
pode ser suficiente para conjuntos de dados minúsculos, não é escalonável. O maior modelo GPT-4 pode lidar
apenas com cerca de 50 páginas de texto de entrada, e seu desempenho em termos de tempo de inferência e precisão
A aprendizagem contextual aborda esse dilema de forma engenhosa, adotando um estratagema: em vez
de fornecer todos os documentos com cada prompt do LLM, ela envia apenas um conjunto selecionado dos documentos
mais pertinentes. Esses documentos pertinentes são determinados com a ajuda de – você adivinhou – LLMs.
uma questão jurídica), o aplicativo gera uma sequência de prompts para o modelo de
Embora isto possa parecer complicado, muitas vezes é mais simples do que a alternativa: treinar ou
aperfeiçoar o próprio LLM. O aprendizado contextual não exige uma equipe dedicada de engenheiros de aprendizado
de máquina. Além disso, você não é obrigado a gerenciar sua própria infraestrutura ou investir em instâncias
dedicadas e dispendiosas da OpenAI. Esta abordagem transforma essencialmente um desafio de IA numa tarefa de
engenharia de dados, um domínio com o qual muitas startups e empresas estabelecidas já estão familiarizadas.
Geralmente supera o ajuste fino para conjuntos de dados moderadamente pequenos – dado que informações
específicas precisam estar presentes no conjunto de treinamento várias vezes para que um LLM as retenha por
meio do ajuste fino – e pode incorporar rapidamente novos dados quase em tempo real.
120
Machine Translated by Google
Uma questão fundamental sobre a aprendizagem no contexto diz respeito à alteração do modelo subjacente
para expandir a janela de contexto. Esta é realmente uma possibilidade e é uma área ativa de pesquisa.
No entanto, isto introduz uma série de compensações, principalmente a escalada quadrática dos custos e
do tempo de inferência com a extensão do comprimento imediato. Mesmo a expansão linear (o resultado teórico
mais favorável) seria hoje um custo proibitivo para muitas aplicações. Atualmente, a execução de uma única
consulta GPT-4 em 10.000 páginas resultaria em centenas de dólares com base nas taxas de API vigentes.
Pré-processamento/incorporação de dados
Os dados contextuais para aplicativos LLM abrangem vários formatos, incluindo documentos de texto,
PDFs e dados estruturados como tabelas CSV ou SQL. Os métodos para carregar e transformar esses dados
apresentam uma diversidade considerável entre os desenvolvedores com quem trabalhamos. Muitos optam
por ferramentas ETL convencionais como Databricks ou Airflow. Um subconjunto também utiliza
carregadores de documentos integrados em estruturas de orquestração, como LangChain (desenvolvido por
Unstructured) e LlamaIndex (desenvolvido por Llama Hub).
No entanto, percebemos que este aspecto da estrutura está relativamente subdesenvolvido, apresentando assim
uma oportunidade para soluções de replicação de dados especialmente desenvolvidas e adaptadas para
aplicações LLM.
121
Machine Translated by Google
No domínio dos embeddings, a maioria dos desenvolvedores faz uso da API OpenAI, particularmente o modelo
text-embedding-ada-002. Este modelo é fácil de usar, especialmente para aqueles que já estão familiarizados com
outras APIs OpenAI, produzindo resultados razoavelmente satisfatórios e progressivamente mais rentáveis. Em
determinados contextos, empresas maiores também estão explorando o Cohere, uma plataforma mais
uma escolha padrão. Além disso, existe o potencial para gerar tipos distintos de incorporações personalizadas
para diversos casos de uso – um aspecto que atualmente representa uma prática de nicho, mas é promissor
dados vetorial. Sua função envolve o armazenamento, comparação e recuperação eficiente de inúmeros
embeddings (ou vetores). A Pinecone surge como a seleção mais predominante no mercado, principalmente devido
à sua natureza hospedada na nuvem, facilitando o início fácil e oferecendo uma variedade de recursos
que as empresas maiores exigem para a produção, incluindo escalabilidade louvável, SSO (Single Sign-On) e
Sistemas de código aberto como Weaviate, Vespa e Qdrant: Esses sistemas geralmente
apresentam excelente desempenho em nós únicos e podem ser adaptados para aplicações específicas, sendo
assim preferidos por equipes experientes de IA inclinadas a construir plataformas sob medida.
experiência positiva ao desenvolvedor e podem ser rapidamente configuradas para aplicativos menores e
experimentos de desenvolvimento. No entanto, podem não substituir completamente uma base de dados abrangente
em escalas maiores.
Extensões OLTP como Pgvector: Esta é uma opção adequada para desenvolvedores que tentam integrar
Postgres para todos os requisitos de banco de dados ou empresas que obtêm predominantemente sua
infraestrutura de dados de um único provedor de nuvem. No entanto, a integração a longo prazo de cargas de
Em termos de perspectivas futuras, muitos provedores de bancos de dados vetoriais de código aberto
estão se aventurando em ofertas de nuvem. Nossa pesquisa sugere que alcançar um desempenho robusto
substanciais, são prováveis mudanças a longo prazo. A questão central gira em torno de se os bancos de dados
vetoriais serão paralelos aos seus equivalentes OLTP e OLAP, convergindo em torno de um ou dois sistemas
amplamente adotados.
122
Machine Translated by Google
Outra questão não resolvida diz respeito a como os embeddings e os bancos de dados vetoriais
evoluirão juntamente com a expansão da janela de contexto utilizável para a maioria dos modelos. Pode
parecer intuitivo presumir que os embeddings se tornarão menos essenciais à medida que os dados contextuais
puderem ser integrados diretamente nos prompts. Contrariamente, os insights de especialistas neste domínio
sugerem o oposto – que a importância do pipeline de incorporação pode intensificar-se ao longo do tempo.
Embora extensas janelas de contexto ofereçam utilidade considerável, elas também acarretam custos
computacionais notáveis, necessitando, portanto, de utilização eficiente. Poderemos testemunhar um aumento
na popularidade de diversos tipos de modelos de incorporação, treinados explicitamente para a relevância do
modelo, juntamente com bancos de dados vetoriais criados para facilitar e capitalizar esses avanços.
Construção/Recuperação imediata
Interagir com grandes modelos de linguagem (LLMs) envolve um processo estruturado que se
assemelha a uma chamada de API generalizada. Os desenvolvedores criam solicitações na forma
de modelos de prompt, enviam-nas ao modelo e, posteriormente, analisam a saída para garantir
a correção e a relevância. Este processo de interação tornou-se cada vez mais sofisticado,
permitindo aos desenvolvedores integrar dados contextuais e orquestrar respostas diferenciadas, o que
é crucial para diversas aplicações.
Abordagens para obter respostas de LLMs e integrar dados contextuais são
crescendo progressivamente em complexidade e importância, emergindo como um caminho
fundamental para distinguir produtos. Durante o início de novos projetos, a maioria dos
desenvolvedores começa com experimentações envolvendo prompts descomplicados. Esses
prompts podem envolver diretivas explícitas (prompts de disparo zero) ou até mesmo instâncias
de saídas esperadas (prompts de poucos disparos). Embora essas solicitações muitas vezes
produzam resultados favoráveis, elas tendem a ficar aquém dos limites de precisão necessários
para implantações de produção reais.
O nível subsequente de estratégia de estímulo, muitas vezes referido como “jiu-jitsu de estímulo”,
é voltado para ancorar as respostas do modelo em alguma forma de informação verificável e
introduzir um contexto externo ao qual o modelo não foi exposto durante o treinamento.
O Guia de Engenharia de Prompt delineia nada menos que 12 estratégias avançadas de
prompt, que incluem cadeia de pensamento, autoconsistência, conhecimento gerado, árvore de
pensamentos, estímulo direcional e vários outros. Essas estratégias também podem ser empregadas
de forma sinérgica para atender a diversas aplicações de LLM, abrangendo desde respostas a perguntas
baseadas em documentos até chatbots e muito mais.
123
Machine Translated by Google
provar sua coragem. Essas estruturas abstraem inúmeras complexidades associadas ao encadeamento
imediato, à interface com APIs externas (incluindo discernir quando uma chamada de API é garantida), à
recuperação de dados contextuais de bancos de dados vetoriais e à manutenção da coerência entre múltiplas
interações LLM. Além disso, eles fornecem modelos adaptados para vários aplicativos comumente
encontrados. A saída que eles fornecem assume a forma de um prompt ou de uma sequência de prompts a
serem enviados a um modelo de linguagem. Essas estruturas são amplamente adotadas por hobbyistas e
startups que se esforçam para iniciar suas aplicações, com LangChain reinando como líder.
instâncias de aplicativos construídos com ele já estão em transição para a fase de produção. Alguns
desenvolvedores, especialmente aqueles que adotaram LLMs em seus estágios iniciais, podem optar por mudar
para Python bruto na produção para contornar dependências adicionais. No entanto, prevemos que essa abordagem
do tipo “faça você mesmo” diminuirá com o tempo na maioria dos casos de uso, muito semelhante à evolução
todos os desenvolvedores com quem interagimos iniciam novos aplicativos LLM usando a API OpenAI, optando
predominantemente por modelos como gpt-4 ou gpt-4-32k. Essa escolha oferece um cenário ideal para o
À medida que os projetos avançam para a fase de produção e visam a escalabilidade, surge uma gama mais
Transição para gpt-3.5-turbo: Esta opção se destaca pela redução de custos de aproximadamente 50
vezes e velocidade significativamente melhorada em comparação com GPT-4. Muitos aplicativos não exigem
os níveis de precisão do GPT-4, mas exigem inferência de baixa latência e suporte econômico para usuários
gratuitos.
modelos Claude fornecem inferência rápida, precisão semelhante ao GPT-3.5, maior flexibilidade de personalização
para uma clientela substancial e o potencial para acomodar uma janela de contexto de até 100k (embora tenhamos
Priorizando Certas Solicitações de Modelos de Código Aberto: Esta tática pode ser especialmente
eficaz para cenários B2C de alto volume, como pesquisa ou bate-papo, onde a complexidade da consulta varia
amplamente e há necessidade de atender usuários gratuitos de maneira econômica. Esta abordagem muitas vezes
124
Machine Translated by Google
combina bem com modelos básicos de código aberto de ajuste fino. Embora não nos aprofundemos nas
especificidades desta pilha de ferramentas neste artigo, plataformas como Databricks, Anyscale, Mosaic,
Modal e RunPod são cada vez mais adotadas por inúmeras equipes de engenharia.
Existem diversas opções de inferência para modelos de código aberto, desde simples
Interfaces API fornecidas por Hugging Face e Replicate para recursos computacionais brutos dos principais
provedores de nuvem e ofertas de nuvem mais opinativas, como as mencionadas anteriormente.
Atualmente, os modelos de código aberto ficam atrás dos seus homólogos proprietários, mas a
diferença está diminuindo. Os modelos LLaMa da Meta estabeleceram uma nova referência para precisão
de código aberto, provocando uma proliferação de variações. Como o licenciamento do LLaMa o restringe
apenas ao uso em pesquisa, vários novos fornecedores intervieram para desenvolver modelos básicos
alternativos (exemplos incluem Together, Mosaic, Falcon e Mistral). A Meta também está contemplando
uma versão potencialmente totalmente aberta do LLaMa 2.
Antecipando a eventualidade de os LLMs de código aberto atingirem níveis de precisão equivalentes ao
GPT-3.5, prevemos um momento semelhante à Difusão Estável para texto, marcado por extensa experimentação,
compartilhamento e operacionalização de modelos ajustados. Empresas de hospedagem como a
Replicate já estão incorporando ferramentas para facilitar o consumo desses modelos pelos
desenvolvedores. Há uma crença crescente entre os desenvolvedores de que modelos menores e
ajustados podem atingir precisão de ponta em casos de uso específicos.
A maioria dos desenvolvedores com quem trabalhamos não se aprofundou nas questões operacionais
ferramentas para LLMs neste momento. O cache, normalmente criado no Redis, é relativamente
difundido, pois melhora os tempos de resposta dos aplicativos e, ao mesmo tempo, é econômico. Ferramentas
como Weights & Biases e MLflow (adaptadas do aprendizado de máquina tradicional) ou soluções focadas
em LLM como PromptLayer e Helicone também são comumente utilizadas. Essas ferramentas permitem
registrar, rastrear e avaliar os resultados do LLM, geralmente para fins como aprimorar a construção imediata,
refinar pipelines ou selecionar modelos. Além disso, diversas novas ferramentas estão em desenvolvimento
para validar resultados do LLM (por exemplo, Guardrails) ou identificar ataques de injeção imediata
(por exemplo, Rebuff). A maioria dessas ferramentas operacionais incentiva o uso de seus próprios
clientes Python para iniciar chamadas LLM, despertando a curiosidade sobre como essas soluções irão
coexistir ao longo do tempo.
125
Machine Translated by Google
Afinação
O ajuste fino com aprendizagem por transferência é uma técnica que usa um LLM pré-treinado
como ponto de partida para treinar um novo modelo em uma tarefa ou domínio específico. Isso pode ser
feito congelando algumas das camadas do LLM pré-treinado e treinando apenas as camadas restantes.
Isso ajuda a evitar que o modelo se ajuste demais aos novos dados e garante que ele ainda retenha o
conhecimento geral que aprendeu com o LLM pré-treinado.
A seguir estão as etapas envolvidas no ajuste fino da aprendizagem por transferência:
3. Prepare o conjunto de dados para ajuste fino: isso pode envolver a limpeza dos
dados, a remoção de entradas duplicadas e a divisão dos dados em
conjuntos de treinamento e teste.
4. Congelar algumas das camadas do LLM pré-treinado: Isso pode ser feito
definindo a taxa de aprendizado das camadas congeladas como zero.
6. Avalie o modelo ajustado no conjunto de testes: isso lhe dará uma ideia de quão
bem o modelo aprendeu a executar a tarefa.
O ajuste fino com a aprendizagem por transferência pode ser uma forma muito eficaz de
melhorar o desempenho dos LLMs em uma ampla variedade de tarefas. No entanto, é importante notar que
o desempenho do modelo ajustado ainda dependerá da qualidade do conjunto de dados usado para ajustar
o modelo. Aqui está um exemplo de ajuste fino na Figura 7-3.
126
Machine Translated by Google
Aqui estão alguns dos benefícios do ajuste fino com a aprendizagem por transferência:
• Isso pode economizar tempo e recursos. A aprendizagem por transferência pode ser
usada para ajustar um modelo em uma nova tarefa sem ter que treinar o modelo do
zero.
No entanto, existem também alguns desafios associados ao ajuste fino da aprendizagem por transferência:
• Pode ser difícil escolher os hiperparâmetros corretos para o processo de ajuste fino.
• Pode ser difícil encontrar um LLM pré-treinado que seja adequado para a nova tarefa.
• Pode ser difícil evitar que o modelo se ajuste demais aos novos dados.
127
Machine Translated by Google
No geral, o ajuste fino com a aprendizagem por transferência é uma técnica poderosa que pode ser usada
para melhorar o desempenho dos LLMs em uma ampla variedade de tarefas. No entanto, é importante pesar
os benefícios e os desafios do ajuste fino da aprendizagem por transferência antes de tomar uma decisão.
Pilha de tecnologia
Teste Gen AI/LLM
Para aproveitar todo o potencial dos LLMs e garantir o seu desenvolvimento responsável, é crucial
estabelecer um banco de testes LLM dedicado. Este ambiente de teste serve como um ambiente controlado
ambiente para pesquisar, testar e avaliar LLMs, facilitando a inovação e ao mesmo tempo abordando questões
éticas, de segurança e de desempenho. Aqui está um exemplo de teste que pode ser usado.
Projetar uma pilha de tecnologia para IA generativa envolve selecionar e integrar várias ferramentas,
estruturas e plataformas que facilitam o desenvolvimento, o treinamento e a implantação de modelos
generativos. A Figura 7-5 mostra um esboço de uma pilha de tecnologia que você pode considerar.
128
Machine Translated by Google
Fontes de dados
As fontes de dados são um componente crítico de qualquer projeto generativo de IA. A qualidade, a
diversidade e a quantidade de dados que você usa podem impactar significativamente o desempenho e os
recursos dos seus modelos generativos.
Processamento de dados
Na jornada para viabilizar grandes modelos de linguagem (LLMs) para aplicativos empresariais,
aproveitar serviços especializados de processamento de dados é fundamental para gerenciar com
eficiência as complexidades da preparação e transformação de dados. Embora vários serviços
contribuam para esse domínio, três se destacam como atores principais: Databricks, Apache Airflow
e ferramentas como Unstructured.io para processar dados não estruturados. É imperativo reconhecer
que, juntamente com estas opções, uma infinidade de alternativas também moldam o panorama dos
serviços de processamento de dados.
129
Machine Translated by Google
Incorporações, representações numéricas compactas de palavras e documentos, são fundamentais para permitir
que os LLMs compreendam contexto, relacionamentos e significados. Esta seção investiga como as
incorporações de fontes proeminentes como Cohere, OpenAI e Hugging Face podem ser aproveitadas para amplificar
Na busca pela otimização de grandes modelos de linguagem (LLMs) para aplicações empresariais, a integração
de bancos de dados vetoriais surge como uma estratégia revolucionária. Bancos de dados vetoriais,
pesquisa semântica e recuperação de conteúdo. Esta subseção investiga como esses bancos de dados vetoriais
podem ser perfeitamente integrados aos fluxos de trabalho do LLM, aumentando assim a velocidade
(LLM) emergiu como uma estratégia fundamental. Essas APIs, incluindo ofertas da OpenAI, Anthropic, Palm,
ponta. Esta seção investiga como essas APIs LLM podem ser aproveitadas para elevar a comunicação, a geração
de conteúdo e a tomada de decisões em contextos empresariais.
No entanto, você também pode usar uma API LLM generalizada privada para seu próprio caso de uso,
130
Machine Translated by Google
LLMOps
O que é LLMOps?
A plataforma LLMOps (grandes operações de modelo de linguagem) oferece um fluxo de
trabalho abrangente e bem definido que abrange treinamento, otimização, implantação e
monitoramento contínuo de LLMs, sejam eles de código aberto ou proprietários. Esta abordagem
simplificada foi projetada para agilizar a implementação de modelos generativos de IA e suas
aplicações.
À medida que as organizações integram cada vez mais os LLMs nas suas operações, torna-se
essencial para estabelecer LLMOps robustos e eficientes. Esta seção investiga a importância
dos LLMOps e como eles garantem a confiabilidade e a eficiência dos LLMs em ambientes
empresariais.
131
Machine Translated by Google
132
Machine Translated by Google
133
Machine Translated by Google
134
Machine Translated by Google
Plataforma/ Descrição
Estrutura
Lago profundo Transmita grandes conjuntos de dados multimodais para atingir quase 100% de utilização da GPU.
Consulte, visualize e controle de versão dados. Acesse os dados sem a necessidade de recalcular
LangFlow Uma maneira simples de experimentar e prototipar fluxos LangChain usando componentes de arrastar e
LMFflows LLMFlows é uma estrutura para construir aplicativos LLM simples, explícitos e transparentes, como
OrçamentoML Configure um serviço de inferência de aprendizado de máquina econômico com uma base de
código concisa de menos de dez linhas.
ZenML Uma estrutura de código aberto para coordenar, experimentar e implantar soluções de aprendizado de
máquina adequadas para ambientes de produção, com integrações integradas para LangChain e
LlamaIndex.
Modificar Essa estrutura de código aberto foi projetada para capacitar desenvolvedores e não
Ele garante que esses aplicativos sejam fáceis de usar, funcionais e capazes de melhoria contínua.
xTuring Crie e controle seus LLMs pessoais com ajuste fino rápido e eficiente.
Palheiro Criação de aplicativos com facilidade usando agentes LLM, pesquisa semântica, resposta a perguntas
e recursos adicionais.
GPTCache Estabelecer um cache semântico para armazenar respostas geradas por consultas LLM.
IncorporarChain Uma estrutura para desenvolver bots do tipo ChatGPT usando seu próprio conjunto de dados.
135
Machine Translated by Google
1. Correção:
2. Desempenho:
136
Machine Translated by Google
3. Custo:
4. Robustez:
5. Monitoramento imediato:
6. Latência:
7. Transparência:
137
Machine Translated by Google
8. Viés:
respostas do modelo.
9. Teste A/B:
métricas importantes.
do modelo de IA.
cozinha, mas concentre-se apenas no seu sabor picante e mencione que é muito
pode ser intolerável para muitos, o que não é uma representação justa ou precisa
da comida indiana.
138
Machine Translated by Google
Ao incorporar esses aspectos em sua estratégia de monitoramento, você pode supervisionar com
eficácia a correção, o desempenho, a relação custo-benefício, a robustez, a rapidez, a latência, a transparência,
a mitigação de preconceitos, os testes A/B e a segurança dos modelos generativos de IA. Revise e atualize
regularmente suas práticas de monitoramento para enfrentar os desafios emergentes e garantir o uso responsável
da IA.
Nota adicional:
Embora a seção forneça uma visão geral holística das dimensões de monitoramento para
modelos generativos de IA, vale a pena notar que alguns leitores podem achar benéfico categorizar
essas dimensões com base no fato de elas estarem relacionadas principalmente ao monitoramento da
solicitação ou da resposta. Isto pode fornecer uma perspectiva mais granular sobre o processo de monitoramento
e sua aplicação no fluxo de trabalho do modelo de IA.
Os leitores interessados em tal categorização podem considerar abordar sua estratégia de
monitoramento identificando quais aspectos pertencem às solicitações recebidas e quais se concentram
na avaliação das respostas geradas pelo modelo de IA.
Modelos proprietários de IA generativa são desenvolvidos por organizações para fins específicos e
normalmente são protegidos por acordos de licenciamento comercial. Eles oferecem vantagens em termos de
qualidade, controle e suporte, mas podem apresentar restrições de uso e custos associados.
139
Machine Translated by Google
A Tabela 7-1 mostra alguns dos modelos proprietários de IA generativa que estão disponíveis no momento em que
T5 11B 2k
UL2 20B 2k
MPT-7B 7B 84k
RedPijama-INCITE 7B 2k
Falcão 40B 2k
MPT-30B 30B 8k
LLaMa 2 70B 4k
140
Machine Translated by Google
Métricas de avaliação
141
e
142
Tabela
Links
generalização
de
Habilidades
bench
BIG-
google/
github.com/
https://
textual
inferência,
texto,
de
semelhança
paráfrase,
Gramática, gluebenchmark.com/
https://
pronomes
de
referências
resolvendo
vinculação,
=
E
Machine Translated by Google
SuperCOLA
Referência
Capítulo 7 LLMs para Empresas e Operações LLM
inseguro
ou
prejudicial
conteúdo
Filtre moderations
reference/
api-
docs/
platform.openai.com/
https://
API
Moderação
test
hendrycks/
github.com/
https://
domínios
e
tarefas
várias
em
linguística
Compreensão
rápida
aprendizagem
abordagem
uma
usando
mínimo
ajuste
com
tarefas
de
diversificado
conjunto
um
em
desempenho
o
avaliar
e
Avaliar harness
eavaliação-
lm-
EleutherAI/
github.com/
https://
MMLU Avaliação
justiça
eficiência
transferibilidade,
robustez,
consistência,
diversidade,
precisão,
incluindo
gerado,
texto
do
atributos
os
e
qualidade
a
Avaliar evals
openai/
github.com/
https://
Avaliações
recursos
utilização
termos
eficiência
semelhantes,
exemplos
em
raciocínio
de
consistência
inferências,
para
coerentes
explicações
generalização,
Robustez, facebookresearch/
github.com/
https://
NLI
anli
(ANLI)
preconceitos
possíveis
e
fracos
fortes,
pontos
seus
sobre
Insights
usuário.
pelo
definidas
métricas
avaliar
para
Plataforma lit/
code.github.io/
pair-
https://
LIT
critérios
nos
humana
avaliação
perplexidade,
F1,
pontuação
Precisão, facebookresearch/
github.com/
https://
Ferramenta
ParlAI
generalização
robustez,
recursos,
de
utilização
velocidade
coerência,
e
fluência
relevância,
como ParlAI
Machine Translated by Google
conversa
em
aparecem
que
interligadas
perguntas
série
a
responder
e
texto
de
passagem
uma
Compreender coqa/
stanfordnlp.github.io/
https://
CoQA
final
resultado
o
prevendo
prazo
longo
compreensão
a
Alcançar 2630551#.
record/
zenodo.org/
https://
passagem
determinada
uma
de
palavra zML0p
ZFUKS-
LAMBADA
raciocínio
de
Habilidades hellaswag/
rowanzellers.com/
https://
lógico
raciocínio
de
Habilidades dataset
LogiQA-
lgw863/
github.com/
https://
HellaSwag
LogiQA
gêneros
diferentes
em
frases
entre
relações
as
Compreender ~sbowman/
cims.nyu.edu/
https://
multinli/
MultiNLI
leitura
compreensão
de
Tarefas explorer/
SQuAD-
rajpurkar.github.io/
https://
ESQUADRÃO
Capítulo 7 LLMs para Empresas e Operações LLM
143
Machine Translated by Google
segurança e uso ético desses poderosos modelos de linguagem. Aqui estão alguns motivos importantes para validar a
saída do LLM:
1. Garantia de qualidade:
Os LLMs são capazes de gerar uma grande quantidade de texto, mas nem todo ele pode ser
de alta qualidade. A validação da produção do LLM ajuda a garantir que o conteúdo gerado
2. Considerações Éticas:
3. Segurança:
Para proteger os utilizadores e evitar danos, é crucial validar os resultados do LLM para
garantir que não contêm instruções ou informações que possam levar a ações perigosas ou
automutilação.
4. Mitigação de preconceito:
A validação dos resultados do LLM inclui detectar e mitigar preconceitos para garantir justiça e
5. Confiança do usuário:
e seguro.
144
Machine Translated by Google
7. Melhoria Contínua:
tempo.
8. Responsabilidade:
disputas.
A validação pode ser usada para orientar a geração de conteúdo do LLM com base
para capturar e filtrar conteúdo prejudicial ou de baixa qualidade antes de ser apresentado
aos usuários.
145
Machine Translated by Google
146
Machine Translated by Google
pessoal treinado que possua experiência em LLMs, incluindo ajuste fino, considerações
11. Integração com sistemas existentes: A integração perfeita de LLMs com infraestrutura e
necessita de suporte para vários idiomas ou entradas multimodais (por exemplo, texto e
imagens), garantindo que o LLM possa lidar com isso de forma eficaz e fornecer
15. Manutenção de longo prazo: a implantação do LLM requer manutenção contínua, incluindo
147
Machine Translated by Google
Implementação
Usando a API OpenAI com Python
No cenário digital acelerado de hoje, a capacidade de compreender e interagir com a
linguagem humana tornou-se um divisor de águas. A API OpenAI surge como uma ferramenta
poderosa que capacita desenvolvedores e empresas a integrar perfeitamente as capacidades do
processamento de linguagem natural em seus aplicativos. Ao aproveitar os modelos de
linguagem de ponta da OpenAI, os desenvolvedores podem aproveitar os recursos de
compreensão, geração de linguagem orientada por IA e muito mais.
Nesta seção, nos aprofundamos no mundo da API OpenAI e revelamos as etapas para
aproveitar efetivamente seu potencial usando Python. Esteja você criando chatbots
inteligentes, gerando conteúdo criativo ou conduzindo interações criteriosas baseadas em linguagem,
a API OpenAI abre portas para possibilidades infinitas. Vamos desvendar o funcionamento
complexo dessa API, desde a configuração do seu ambiente até a criação de aplicativos atraentes
que interagem de forma inteligente com os usuários. Vamos explorar juntos o futuro da interação
humano-computador.
Pré-requisitos
• Instalação do ChromaDB
148
Machine Translated by Google
Instalação
Substitua “your_openai_api_key_here” pela chave API real que você obteve de sua conta OpenAI.
Teste o ambiente
Verifique se seu ambiente está configurado corretamente executando uma chamada de API simples. Por
149
Machine Translated by Google
LangChain oferece uma estrutura conveniente para a prototipagem rápida de aplicativos locais
baseados em LLM (grandes modelos de linguagem). Além disso, o Chroma apresenta um banco de
dados integrado de armazenamento e incorporação de vetores que opera perfeitamente
durante os estágios de desenvolvimento local, capacitando esses aplicativos.
150
Machine Translated by Google
151
Machine Translated by Google
Consulta 3: O que acontece com o tamanho de Alice quando ela come ou bebe?
Se você notar que a resposta à pergunta anterior está incorreta, a resposta da OpenAI sugere que
Alice permanece do mesmo tamanho quando come ou bebe. No entanto, em “Alice no País das Maravilhas”,
seu tamanho realmente muda. Isso pode ser devido ao contexto e às informações disponíveis no trecho
específico do texto que foi analisado. Tenha em mente que a precisão da resposta depende do conteúdo e
do contexto do texto que está sendo processado pelo modelo OpenAI.
Observe que reescrever a consulta com mais contexto nos dá um resultado melhor.
Concluindo, este guia demonstra a integração da API OpenAI, LangChain e ChromeDb para
extrair insights do PDF “Alice no País das Maravilhas” e realizar consultas direcionadas. Esta combinação de
tecnologia contemporânea com literatura clássica oferece uma abordagem única e inovadora, mostrando
o poder das ferramentas modernas na análise de contos intemporais.
152
Machine Translated by Google
Conclusão
No cenário em constante evolução da tecnologia empresarial, os grandes modelos de linguagem
(LLMs) surgiram como aliados formidáveis, oferecendo uma transformação profunda na
forma como as empresas operam, interagem e inovam. Ao concluirmos este capítulo,
encontramo-nos na intersecção entre oportunidade e inovação, onde o poder dos LLMs converge
com as ambições das empresas com visão de futuro.
Ao longo deste capítulo, exploramos três abordagens convincentes para
aproveitando os recursos dos LLMs em ambientes empresariais:
153
Machine Translated by Google
API LLM Generalizada Privada: Investigamos o conceito de uma API privada generalizada
API LLM, destacando o valor que ela agrega por meio da privacidade, personalização e controle de
dados. Testemunhamos como isso capacita as empresas a criar soluções personalizadas,
ampliar o envolvimento do cliente e navegar no intrincado terreno das interações de linguagem natural.
Ao incorporar esta abordagem, as empresas estão preparadas para criar experiências
transformadoras, ao mesmo tempo que protegem dados sensíveis.
Arquitetura de injeção de contexto: nos aventuramos no domínio da arquitetura de injeção de
contexto, uma estratégia engenhosa para aumentar LLMs com conhecimento e contexto específicos de
domínio. À medida que exploramos seu potencial, revelamos como ele melhora o suporte ao
cliente, eleva a curadoria de conteúdo e aprimora os processos de tomada de decisão.
As empresas que adotam essa abordagem podem fortalecer suas ofertas, proporcionando aos clientes e
usuários interações enriquecidas e conscientes do contexto.
LLMs de ajuste fino para casos de uso corporativo: O conceito de LLMs de ajuste fino abriu
portas para precisão e adaptabilidade. Observamos como essa prática eleva os LLMs, otimizando sua
precisão, imbuindo-os de linguagem específica de domínio e melhorando seu desempenho específico de
tarefas. Em cenários que abrangem análise de sentimento, revisão de documentos jurídicos e geração
de código, as empresas podem aproveitar LLMs ajustados para alcançar resultados incomparáveis,
adaptados às suas necessidades exclusivas.
Ao refletirmos sobre estas abordagens, somos lembrados de que a jornada com os LLMs não é
um destino, mas uma exploração contínua. Num mundo onde a tecnologia evolui incessantemente, as
empresas que adotam os LLMs e se adaptam ao seu potencial estão mais bem equipadas para
enfrentar os desafios e aproveitar as oportunidades que se avizinham.
O casamento entre LLMs e soluções empresariais não é apenas um vislumbre do futuro; é um
passo ousado para moldá-lo. As possibilidades são ilimitadas e o caminho a seguir promete inovações
ainda inimagináveis. Convidamos as empresas a embarcar nesta jornada transformadora, munidas de
conhecimento e estratégias para aproveitar todo o potencial da tecnologia LLM.
À medida que avançamos para uma era em que os modelos linguísticos são mais do que ferramentas – são parceiros
na inovação – as empresas que adotam os LLMs não só navegarão no futuro, mas também liderarão o caminho, inaugurando uma era
de experiências enriquecidas para os clientes, operações simplificadas e oportunidades inexploradas. possibilidades. A jornada
154
Machine Translated by Google
CAPÍTULO 8
Modelo de Difusão e
IA generativa para imagens
Os dois modelos generativos proeminentes, nomeadamente redes adversárias generativas (GANs)
e autoencoders variacionais (VAEs), ganharam reconhecimento substancial. Veremos uma breve
explicação de ambos neste capítulo, seguida por um modelo de difusão detalhado. As GANs
exibiram versatilidade em várias aplicações, mas sua complexidade de treinamento e
diversidade limitada de resultados, causadas por desafios como colapso de modo e
desaparecimento de gradiente, têm sido evidentes. Por outro lado, os VAE, embora tenham uma base
teórica sólida, encontram dificuldades na concepção de funções de perda eficazes, resultando
em resultados sub-óptimos.
Outra categoria de técnicas, inspirada na estimativa de probabilidade probabilística e no
estabelecimento de paralelos com fenômenos físicos, surgiu – são conhecidas como modelos de
difusão. O conceito central dos modelos de difusão está enraizado em princípios semelhantes
ao movimento das moléculas de gás na termodinâmica, onde as moléculas se dispersam de regiões
de alta densidade para baixa densidade, representando um aumento na entropia ou dissipação de calor.
No domínio da teoria da informação, isto está relacionado com a introdução progressiva de ruído
que leva à perda de informação.
No cerne da modelagem de difusão está a noção intrigante de que se pudermos construir
um modelo de aprendizagem capaz de capturar a degradação gradual da informação devido ao
ruído, deveria teoricamente ser viável reverter esse processo, recuperando assim a informação
original do ruído. Este conceito tem uma semelhança com VAEs, em que uma função objetivo
é otimizada projetando dados em um espaço latente e posteriormente recuperando-os ao seu
estado inicial. No entanto, a distinção reside no fato de que os modelos de difusão não se esforçam
para aprender diretamente a distribuição dos dados. Em vez disso, eles se concentram na
modelagem de uma série de distribuições de ruído dentro de uma estrutura de cadeia de Markov,
“decodificando” efetivamente os dados, removendo iterativamente o ruído de maneira hierárquica.
155
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4_8
Machine Translated by Google
Antes de entrarmos nos modelos de difusão, vejamos uma breve explicação dos VAEs
e GANs.
156
Machine Translated by Google
6. Geração e Interpolação: Uma vez treinado, um VAE pode gerar novas amostras
de dados por amostragem do espaço latente e passando as amostras através
do decodificador. Além disso, como o espaço latente tem uma estrutura suave,
as interpolações entre pontos neste espaço resultam em interpolações
significativas no espaço de dados.
GANs têm sido usados para diversas aplicações, incluindo síntese de imagens, estilo
transferência, super-resolução, aumento de dados e muito mais. Eles demonstraram a capacidade de
criar amostras de dados altamente realistas e foram responsáveis por avanços impressionantes
em modelagem generativa e visão computacional. No entanto, pode ser difícil treinar GANs devido
a problemas como colapso de modo (quando o gerador se concentra em um subconjunto limitado
de dados de destino) e instabilidade de treinamento.
Modelos de Difusão
Os modelos de difusão são uma classe relativamente nova de modelos generativos que se inspiram
em processos físicos como a difusão de partículas e conceitos da teoria da informação. Eles visam
gerar dados transformando iterativamente o ruído em informação estruturada, revertendo
essencialmente o processo de introdução do ruído.
158
Machine Translated by Google
ruído mínimo até o ruído mais significativo. Cada nível de ruído representa uma compensação
distorcendo-os gradualmente.
nível, dados os dados do nível anterior. Isso captura efetivamente a degradação dos dados
devido ao ruído.
4. Processo reverso: Após os dados terem sido processados através da cadeia de Markov
no cronograma de ruído.
processo.
O conceito por trás dos modelos de difusão é representar a perda gradual de informação devido ao ruído e então
usar esse conhecimento para recuperar a informação original, desfazendo a introdução do ruído. Ao contrário dos modelos
generativos tradicionais que modelam diretamente a distribuição de dados, os modelos de difusão concentram-se
Os modelos de difusão têm se mostrado promissores na geração de amostras de dados de alta qualidade com
características diversas. Eles têm o potencial de capturar distribuições de dados complexas e lidar com cenários em
que a qualidade dos dados se degrada com o tempo, o que pode ser particularmente útil para aplicações em geração
159
Machine Translated by Google
No entanto, desde a minha última atualização em setembro de 2021, os modelos de difusão podem não ser
tão amplamente estudados ou implementados como outros modelos generativos, como GANs ou VAEs.
tipo de modelo de difusão que começa com uma imagem com ruído e remove
gradualmente o ruído para revelar a imagem subjacente. Os DDPMs são treinados usando
eles são treinados para minimizar a distância entre as imagens geradas e as imagens
forward_and_backward_equations-1536x846.png
160
Machine Translated by Google
161
Machine Translated by Google
Os modelos de difusão têm sido usados com sucesso para uma variedade de tarefas, incluindo as
seguintes:
• Geração de Imagens: Modelos de difusão podem ser usados para gerar imagens realistas
a partir de descrições de texto.
• Síntese de texto para imagem: modelos de difusão podem ser usados para sintetizar
imagens a partir de descrições de texto.
• Transferência de estilo: modelos de difusão podem ser usados para transferir o estilo
de uma imagem para outra imagem.
Arquitetura
Os modelos de difusão são uma ferramenta poderosa para gerar conteúdo realista e criativo. Ainda estão
em desenvolvimento, mas têm o potencial de revolucionar a forma como criamos e interagimos com
imagens.
A arquitetura dos modelos de difusão é relativamente simples. Eles consistem em dois principais
componentes.
A Figura 8-4 ilustra o modelo de representação latente em modelos de difusão.
162
Machine Translated by Google
O modelo de representação latente pode ser implementado usando qualquer tipo de rede neural,
mas redes neurais convolucionais (CNNs) são frequentemente utilizadas. As CNNs são adequadas para
tarefas de processamento de imagens porque podem aprender a extrair características de imagens em diferentes
escalas.
163
Machine Translated by Google
• Processo de Difusão: O processo de difusão é uma cadeia de Markov que toma uma
representação latente como entrada e a modifica gradualmente para gerar uma
nova imagem. O processo de difusão é um processo probabilístico, o que significa
que só pode passar de um estado para outro de uma determinada maneira. O
processo de difusão é treinado para gerar imagens indistinguíveis de imagens
reais.
O processo de difusão pode ser implementado usando qualquer tipo de cadeia de Markov, mas
uma abordagem comum é usar um processo de difusão gaussiana. Um processo de difusão gaussiana é
uma cadeia de Markov que adiciona ruído gaussiano à representação latente em cada etapa.
O processo de difusão é treinado por meio de uma técnica chamada treinamento adversário.
O treinamento adversário é uma técnica de treinamento de modelos generativos que coloca dois modelos
um contra o outro. No caso de modelos de difusão, os dois modelos são o processo de difusão e um
discriminador. O discriminador é uma rede neural treinada para distinguir entre imagens reais e
imagens geradas.
O objetivo do treinamento adversário é treinar o processo de difusão para gerar imagens
que são tão realistas que o discriminador não consegue distingui-los das imagens reais.
Isso é feito atualizando iterativamente os parâmetros do processo de difusão e do discriminador até
que o discriminador seja incapaz de distinguir entre imagens reais e imagens geradas com alta confiança.
O processo de decodificação pode ser implementado usando qualquer tipo de rede neural,
mas as CNNs são frequentemente usadas. As CNNs são adequadas para tarefas de
reconstrução de imagens porque podem aprender a inverter as operações que foram realizadas
pelo modelo de representação latente.
164
Machine Translated by Google
O processo de decodificação é treinado usando uma técnica chamada perda de erro quadrático médio
(MSE). A perda MSE é uma função de perda que mede a diferença entre o reconstruído
imagem e a imagem original. O objetivo da perda MSE é minimizar a diferença entre a imagem
reconstruída e a imagem original.
Nos últimos anos, o campo da inteligência artificial (IA) testemunhou progressos significativos,
introduzindo diversas inovações. Uma adição notável ao cenário da IA é o surgimento de geradores de
imagens de IA. Essas ferramentas sofisticadas possuem a capacidade de transformar entradas textuais em
imagens vívidas ou representações artísticas. Entre a infinidade de opções disponíveis para soluções de IA
de texto para imagem, várias têm recebido atenção especial, as que se destacam são DALL-E 2, difusão
estável e Midjourney.
de imagem-linguagem (CLIP):
165
Machine Translated by Google
166
Machine Translated by Google
167
Machine Translated by Google
Conecta visualmente o treinamento do CLIP para representação conjunta de texto-imagem (parte superior)
com o posterior processo de geração de imagens a partir de texto utilizando DALL-E 2 (parte inferior).
Destaca a relação entre os embeddings aprendidos e a conversão desses embeddings em imagens concretas,
mostrando a interação entre informações textuais e visuais no contexto das operações do DALL-E 2.
168
Machine Translated by Google
3. Treinamento e Otimização:
169
Machine Translated by Google
Benefícios e Significância
– Eficiência Computacional: LDMs oferecem a vantagem de treinamento
A difusão estável aproveita o potencial dos modelos de difusão latente para criar
uma estrutura inovadora que combina o poder dos modelos de difusão, representações latentes e
síntese condicionada. Esta tecnologia exemplifica a evolução contínua dos métodos de síntese de imagens
baseados em IA, oferecendo uma abordagem eficiente e eficaz para a criação de visuais atraentes a partir
de descrições textuais.
170
Machine Translated by Google
GANs condicionais
Processo de Treinamento
• O gerador visa criar imagens que o discriminador não consegue distinguir das
reais, enquanto o discriminador visa melhorar a sua capacidade de
discriminação.
171
Machine Translated by Google
Mecanismos de Atenção
Benefícios e aplicações
• A tecnologia da Midjourney permite a criação de imagens realistas baseadas em
Em essência, a tecnologia da Midjourney capitaliza o poder dos GANs, especialmente dos GANs condicionais,
para transformar entradas textuais em imagens atraentes e contextualmente relevantes. Esta abordagem mostra a
sinergia entre linguagem e síntese de imagens, abrindo caminhos para aplicações inovadoras no domínio da IA
generativa.
172
Machine Translated by Google
– Caso de uso: adequado para uso em nível empresarial devido ao seu refinado
qualidade de saída.
2. Meio da jornada:
– Estilo Artístico: Reconhecida pelo seu estilo artístico, produzindo imagens que mais
– Operação: Utiliza um bot Discord para enviar e receber chamadas para servidores de
– Caso de uso: Ideal para empreendimentos artísticos e criativos, mas pode não ser
3. Difusão Estável:
173
Machine Translated by Google
Resumindo:
A escolha entre essas ferramentas depende do caso de uso específico, do estilo de imagem desejado e
do nível de detalhe necessário. Cada ferramenta tem seus pontos fortes únicos, tornando-as adequadas para
diversas aplicações criativas e práticas.
Formulários
As ferramentas de IA do gerador de imagens têm uma ampla gama de aplicações em vários setores e domínios.
Aqui estão algumas aplicações notáveis:
– Essas ferramentas podem ser utilizadas para gerar conteúdo visual para sites,
mídias sociais, anúncios e campanhas de marketing.
2. Visualização de conceito:
– Arquitetos e designers podem usar essas ferramentas para dar vida a conceitos,
gerando imagens baseadas em descrições textuais de edifícios, interiores e
paisagens.
174
Machine Translated by Google
3. Arte e Entretenimento:
– Os autores podem usar essas ferramentas para ilustrar cenas de suas histórias
6. Materiais Educacionais:
8. Visualização do protótipo:
175
Machine Translated by Google
• Os artistas podem usar estas ferramentas para gerar obras de arte novas e
únicas, explorando novos estilos e composições.
Essas aplicações destacam a versatilidade dos modelos de difusão e das ferramentas de IA geradoras
de texto para imagem, demonstrando seu potencial para transformar descrições textuais em ativos visuais
valiosos em diversos campos.
Conclusão
O domínio das ferramentas de criação de imagens testemunhou uma evolução notável, com modelos
de difusão e ferramentas de IA geradoras de texto para imagem na vanguarda da inovação.
Os modelos de difusão, inspirados em processos físicos, oferecem uma nova abordagem para a
geração de imagens, adicionando ruído e posteriormente reconstruindo os dados originais. Esses
modelos, sejam empregados de forma independente ou dentro do espaço latente dos autoencoders,
176
Machine Translated by Google
177
Machine Translated by Google
CAPÍTULO 9
1. Suporte ao Cliente:
179
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4_9
Machine Translated by Google
4. Recomendações personalizadas:
180
Machine Translated by Google
181
Machine Translated by Google
182
Machine Translated by Google
5. Descrições do produto:
fortalecedora. ChatGPT gera postagens nas redes sociais que inspiram os usuários a
saudável.
tempo para elaboração de estratégias e garante um fluxo constante de conteúdo de alta qualidade. No
entanto, é importante revisar e editar o conteúdo gerado pelo ChatGPT para alinhá-lo ao estilo e à mensagem
únicos da marca. Além disso, a supervisão humana garante que o conteúdo represente com precisão a visão
ChatGPT prova ser uma ferramenta valiosa para desenvolvedores que buscam
183
Machine Translated by Google
Conceitos técnicos complexos podem ser difíceis de entender. ChatGPT atua como
um companheiro experiente, dividindo ideias, algoritmos e teorias intrincadas
em explicações de fácil digestão.
184
Machine Translated by Google
site de comércio eletrônico. ChatGPT os orienta pela documentação da API e fornece trechos
ter cautela e usar o seu próprio julgamento, especialmente em cenários críticos, já que as soluções do ChatGPT nem
“Análise Avançada de Dados” significa uma evolução significativa em suas capacidades. Com esse aprimoramento, tornou-
se um recurso poderoso para profissionais e analistas de dados, capaz não apenas de compreender e gerar
código, mas também de oferecer insights avançados sobre técnicas de análise de dados, modelagem estatística,
visualização de dados e muito mais. Essa funcionalidade expandida permite que os usuários extraiam insights mais profundos
de seus dados, fornecendo assistência valiosa em uma ampla gama de tarefas baseadas em dados e tornando-os um ativo
ChatGPT transcreve as respostas dos formulários em papel para uma planilha digital.
185
Machine Translated by Google
5. Análise Comparativa:
186
Machine Translated by Google
187
Machine Translated by Google
O jargão médico pode ser intimidante para indivíduos sem formação médica.
ChatGPT simplifica a terminologia médica, explicando termos, siglas e abreviações.
188
Machine Translated by Google
189
Machine Translated by Google
3. Análise do Concorrente:
de mercado e estratégias.
Exemplo: um varejista on-line deseja entender por que determinados produtos são
190
Machine Translated by Google
191
Machine Translated by Google
4. Redação de Diálogos:
192
Machine Translated by Google
Educação e Aprendizagem
193
Machine Translated by Google
5. Assistência à Pesquisa:
As aplicações do ChatGPT em educação e aprendizagem vão além das salas de aula tradicionais,
oferecendo assistência personalizada, promovendo a aprendizagem autodirigida e auxiliando os alunos em sua
jornada acadêmica. Embora o ChatGPT melhore as experiências de aprendizagem, a orientação dos
educadores, a estrutura curricular e o desenvolvimento do pensamento crítico continuam a ser componentes
essenciais de uma educação eficaz.
Jurídico e Conformidade
1. Pesquisa Jurídica e Análise Jurisprudencial:
194
Machine Translated by Google
195
Machine Translated by Google
Exemplo: um artista deseja proteger sua obra de arte contra uso não
RH e Recrutamento
1. Triagem de Candidatos e Entrevistas Iniciais:
empresa.
Exemplo: uma empresa está contratando um gerente de mídia social. ChatGPT gera
a marca da empresa.
196
Machine Translated by Google
da empresa. ChatGPT fornece uma visão geral da política e como solicitar folga.
relatórios.
Para quem procura emprego, o ChatGPT oferece orientações para preparação para
197
Machine Translated by Google
2. Coordenação do Calendário:
3. Recuperação de informações:
198
Machine Translated by Google
4. Anotação e resumo:
Ele também pode resumir documentos extensos, resumindo pontos-chave para fácil
referência.
Exemplo: Um viajante precisa de ajuda para traduzir placas de rua e cardápios enquanto
6. Recomendações personalizadas:
ChatGPT sugere livros, filmes, músicas, restaurantes e muito mais com base nas
Exemplo: um usuário deseja iniciar uma rotina de exercícios em casa. ChatGPT elabora
199
Machine Translated by Google
Exemplos
Até agora vimos o caso de uso por domínio usando ChatGPT. Agora vamos pegar alguns exemplos de casos
de uso e perguntar ao ChatGPT:
1. Domínio – RH e Recrutamento:
200
Machine Translated by Google
201
Machine Translated by Google
202
Machine Translated by Google
if arr[meio] == x:
retornar meio
outro:
retornar pesquisa_binária(arr, médio + 1, alto, x)
outro:
retornar -1
203
Machine Translated by Google
204
Machine Translated by Google
4. Resposta a perguntas:
Conclusão
As aplicações versáteis do ChatGPT em vários domínios mostram seu potencial
transformador. Seja melhorando as interações de atendimento ao cliente, simplificando a
criação de conteúdo e os esforços de marketing, facilitando tarefas linguísticas e de
comunicação, capacitando o desenvolvimento de software e suporte técnico,
revolucionando o gerenciamento de informações médicas e de saúde ou impulsionando o mercado
205
Machine Translated by Google
206
Machine Translated by Google
Índice
207
© Akshay Kulkarni, Adarsha Shivananda, Anoosh Kulkarni, Dilip Gudivada 2023
A. Kulkarni et al., IA generativa aplicada para iniciantes, https://doi.org/10.1007/978-1-4842-9994-4
Machine Translated by Google
ÍNDICE
DALL-E 2, 165
embeddings, 165
F
processos de codificação, 166 Falcão AI, 93–95
posicional, incorporações de 48 a 50
palavras, 47
D
Aprendizado profundo, 2, 15
G
rede natural, 16 Unidade recorrente fechada (GRU), 23, 24
Modelos probabilísticos de difusão de eliminação de ruído Redes adversárias generativas (GANs), 155, 157, 158
(DDPM), 160
208
Machine Translated by Google
ÍNDICE
design/criatividade, 11
educação/treinamento, 12
entretenimento/mídia, 11 ambientes H, eu, J, K
de jogo, 12 saúde/medicina, 12 Modelo oculto de Markov (HMM), 21
de imagem, tradução de
eu
4 idiomas, 12 imagem
(LLMOps),
Transformador generativo pré-treinado desafios 146, 147 fluxo de
(GPT), 16, 29, 55 trabalho abrangente, 131 recursos
209
Machine Translated by Google
ÍNDICE
(LLMs), 29, 30, 101 capacidades, 117 Claude 2, 87, 92 169 componentes/conceitos principais,
modelo de ancoragem de
aprendizagem em
contexto, 123 arquitetura de injeção de
M
contexto, 120, 121 dados contextuais, Erro quadrático médio (MSE), 165
119 pré- Mecanismos de atenção
processamento de dados/ tecnológica no meio da jornada,
172 benefícios/aplicações, 172
210
Machine Translated by Google
ÍNDICE
NÃO S
Processamento de linguagem natural (PNL), 2, 13, 33 Scikit-LLM
ChatGPT, 55, 60
benefícios, 116
definição, 16
recursos, 101, 102
conceitos fundamentais de representação/ instalação, 102
incorporação de linguagem, 19
Chave de API OpenAI,
Luva, 20
resumo 103, 114, análise de
Word2Vec, 19
texto 115, vetorização
modelos de redes neurais
de texto 116, 113, 114
aplicações, 22
Classificador ZeroShotGPT, 103–112
diagramas de classes, Modelos de difusão baseados em pontuação
22 estruturas computacionais, 21
(SBM), 161
vetores de contexto,
Mecanismo de atenção de modelos sequência a
25 arquitetura codificador-decodificador, 25
sequência (Seq2Seq), 27
Redes GRU, 24
desafios, 27 vetor
grandes modelos de linguagem, 29, 30 de contexto, 26
Redes LSTM, 23, 24 redes
decodificadores,
neurais recorrentes, 22, 23
26 definições,
Modelos Seq2Seq, arquitetura
25
de transformador 25–27, 27, 28 n-
codificadores, 26 processos de treinamento, 27
gramas, modelo
Equação Diferencial Estocástica (SDE), 161
probabilístico 17–21, tokenização
20, 21, arquitetura
de transformador 17, 34 T, você
vantagens, 51
arquitetura, 35
R função de atenção
Redes neurais recorrentes (RNNs), 15, 21–23, concatenação/projeção linear, 45 definição,
25 redes 39 produto
feed-forward, 48 escalar/escala, 42
211
Machine Translated by Google
ÍNDICE
codificador-decodificador, 46 limitações, 52
47 formulação/eficiência de matriz, 43
flexibilidade de modelo, 45
estrutura de múltiplos cabeçotes, 44–
V, W, X, Y
Autoencoders variacionais (VAEs), 155–157
47 cabeçotes múltiplos,
45 pontos em escala -estrutura de
atenção do
212