Anteriormente, aprendemos que cada Agente precisa de um Modelo de IA em seu núcleo, e que os LLMs são o tipo mais comum de modelos de IA para esse propósito.
Agora, vamos aprender o que são LLMs e como eles impulsionam os Agentes. Esta seção oferece uma explicação técnica concisa sobre o uso de LLMs.
O que é um Modelo de Linguagem de Grande Escala?
Um LLM é um tipo de modelo de IA que se destaca em compreender e gerar linguagem humana. Eles são treinados com grandes quantidades de dados textuais, permitindo que aprendam padrões, estruturas e até nuances na linguagem. Esses modelos geralmente consistem em muitos milhões de parâmetros.
A maioria dos LLMs atualmente é construída com base na arquitetura Transformer — uma arquitetura de aprendizado profundo baseada no algoritmo de “Attention”, que ganhou destaque desde o lançamento do BERT pelo Google em 2018.
Tipos de Transformers:
- Codificadores (Encoders)
Um Transformer baseado em codificador recebe texto (ou outros dados) como entrada e produz uma representação densa (ou embedding) desse texto.- Exemplo: BERT do Google
- Casos de uso: Classificação de texto, busca semântica, reconhecimento de entidades nomeadas
- Tamanho típico: Milhões de parâmetros
- Decodificadores (Decoders)
Um Transformer baseado em decodificador foca na geração de novos tokens para completar uma sequência, um token por vez.- Exemplo: Llama da Meta
- Casos de uso: Geração de texto, chatbots, geração de código
- Tamanho típico: Bilhões de parâmetros
- Seq2Seq (Codificador–Decodificador)
Um Transformer de sequência para sequência combina um codificador e um decodificador. O codificador processa a sequência de entrada em uma representação de contexto, e o decodificador gera uma sequência de saída.- Exemplo: T5, BART
- Casos de uso: Tradução, sumarização, parafraseamento
- Tamanho típico: Milhões de parâmetros
Embora os Modelos de Linguagem de Grande Escala existam em várias formas, os LLMs são tipicamente modelos baseados em decodificadores com bilhões de parâmetros. Aqui estão alguns dos LLMs mais conhecidos:
Modelo | Provedor |
---|---|
Deepseek-R1 | DeepSeek |
GPT-4 | OpenAI |
Llama 3 | Meta (Facebook AI Research) |
SmolLM2 | Hugging Face |
Gemma | |
Mistral | Mistral |
O princípio subjacente de um LLM é simples, mas altamente eficaz: seu objetivo é prever o próximo token, dada uma sequência de tokens anteriores. Um “token” é a unidade de informação com a qual um LLM trabalha. Você pode pensar em um “token” como se fosse uma “palavra”, mas, por razões de eficiência, os LLMs não usam palavras inteiras.
Por exemplo, enquanto o inglês possui cerca de 600.000 palavras, um LLM pode ter um vocabulário de cerca de 32.000 tokens (como é o caso do Llama 2). A tokenização frequentemente trabalha com unidades sublexicais que podem ser combinadas.
Por exemplo, considere como os tokens “interest” e “ing” podem ser combinados para formar “interesting”, ou “ed” pode ser adicionado para formar “interested”.
Cada LLM possui alguns tokens especiais que são específicos do modelo. O LLM utiliza esses tokens para abrir e fechar componentes estruturados da sua geração. Por exemplo, para indicar o início ou o fim de uma sequência, mensagem ou resposta. Além disso, os prompts de entrada que passamos ao modelo também são estruturados com tokens especiais. O mais importante deles é o token de Fim de Sequência (End of Sequence, ou EOS).
As formas desses tokens especiais variam bastante entre os diferentes provedores de modelos.
A tabela abaixo ilustra a diversidade desses tokens especiais.
Modelo | Provedor | EOS Token | Função |
---|---|---|---|
GPT4 | OpenAI | <|endoftext|> |
Texto de fim de mensagem |
Llama 3 | Meta (Facebook AI Research) | <|eot_id|> |
Fim de sequência |
Deepseek-R1 | DeepSeek | <|end_of_sentence|> |
Texto de fim de mensagem |
SmolLM2 | Hugging Face | <|im_end|> |
Fim da instrução ou mensagem |
Gemma | <end_of_turn> |
Fim do turno de conversa |
Compreendendo a previsão do próximo token
Diz-se que os LLMs são autoregressivos, o que significa que a saída de uma passada se torna a entrada para a próxima. Esse ciclo continua até que o modelo preveja que o próximo token seja o token EOS, momento em que o modelo pode parar.
- Uma vez que o texto de entrada é tokenizado, o modelo calcula uma representação da sequência que captura informações sobre o significado e a posição de cada token na sequência de entrada.
- Essa representação é alimentada no modelo, que gera pontuações que classificam a probabilidade de cada token em seu vocabulário ser o próximo na sequência.
Com base nessas pontuações, temos várias estratégias para selecionar os tokens para completar a frase. A estratégia de decodificação mais simples seria sempre escolher o token com a pontuação máxima. Mas existem estratégias de decodificação mais avançadas. Por exemplo, a busca em feixe (beam search) explora várias sequências candidatas para encontrar a que possui a pontuação total máxima — mesmo que alguns tokens individuais tenham pontuações mais baixas.
Atenção é tudo o que você precisa
Um aspecto fundamental da arquitetura Transformer é a Attention. Ao prever a próxima palavra, nem todas as palavras em uma frase têm a mesma importância; palavras como “França” e “capital” na frase “A capital da França é …” carregam o maior significado.
Esse processo de identificar as palavras mais relevantes para prever o próximo token se mostrou incrivelmente eficaz. Embora o princípio básico dos LLMs — prever o próximo token — tenha permanecido consistente desde o GPT-2, houve avanços significativos na ampliação das redes neurais e na otimização do mecanismo de atenção para lidar com sequências cada vez mais longas.
Se você já interagiu com LLMs, provavelmente está familiarizado com o termo context length (comprimento de contexto), que se refere ao número máximo de tokens que o LLM pode processar, e à capacidade máxima de atenção que ele possui.
A forma como você fornece o prompt ao LLM é importante
Considerando que o único trabalho de um LLM é prever o próximo token olhando para cada token de entrada e escolher quais tokens são “importantes”, a redação da sua sequência de entrada é fundamental.
A sequência de entrada que você fornece a um LLM é chamada de prompt. O design cuidadoso do prompt facilita a orientação da geração do LLM em direção ao resultado desejado.
Para saber mais sobre prompts, veja este material.
Como os LLMs são treinados?
Os LLMs são treinados em grandes conjuntos de dados textuais, onde aprendem a prever a próxima palavra em uma sequência por meio de um objetivo de modelagem de linguagem auto-supervisionada ou mascarada.
A partir desse aprendizado não supervisionado, o modelo aprende a estrutura da linguagem e os padrões subjacentes no texto, permitindo que o modelo generalize para dados não vistos.
Após esse treinamento inicial, os LLMs podem ser ajustados por meio de aprendizado supervisionado para realizar tarefas específicas. Por exemplo, alguns modelos são treinados para estruturas de conversação ou uso de ferramentas, enquanto outros se concentram em classificação ou geração de código.
Como posso usar os LLMs?
Você tem duas opções principais:
- Executar localmente (se você tiver hardware suficiente).
- Usar uma nuvem/API (por exemplo, via a API da OpenAI).
Ao longo deste curso, usaremos principalmente modelos por meio de APIs. Mais adiante, exploraremos como executar esses modelos localmente no seu hardware.
Como os LLMs são usados em Agentes de IA?
Os LLMs são um componente chave dos Agentes de IA, fornecendo a base para entender e gerar a linguagem humana. Eles podem interpretar instruções do usuário, manter o contexto em conversas, definir um plano e decidir quais ferramentas usar.
Exploraremos essas etapas com mais detalhes adiante, mas por agora, o que você precisa entender é que o LLM é o cérebro do Agente.
Prática: Usando APIs de LLM
Agora vamos ver como usar LLMs na prática, via APIs acessíveis por Python no Google Colab. Veremos três serviços populares: ChatGPT (OpenAI), Gemini (Google) e DeepSeek.
1. ChatGPT (OpenAI)
- Acesse auth.openai.com/create-account e crie uma conta gratuita (pode usar Gmail). Após cadastro, vá para a área de API para gerar uma chave de API.
- No Google Colab, defina sua chave como variável de ambiente ou secret para maior segurança.
- Instale a biblioteca oficial e faça uma chamada simples.
- Por exemplo, o modelo pode responder: “A história econômica do Brasil é marcada por ciclos de exploração de recursos naturais, como o açúcar, ouro e café, seguidos por industrialização, crises e uma crescente abertura econômica, refletindo mudanças políticas e sociais ao longo dos séculos.”
Limites e custos: A OpenAI costuma oferecer US$5 de crédito grátis para novos usuários. Depois, cobra por tokens: o gpt-3.5-turbo custa cerca de $0.002 por 1.000 tokens, enquanto o gpt-4 custa em torno de $0.03–$0.06 por 1.000 tokens. Ou seja, respostas mais sofisticadas (GPT-4) saem dezenas de vezes mais caras que o GPT-3.5.
2. Gemini (Google)
- Com sua Conta Google, acesse o Google AI Studio aistudio.google.com/app/apikey e crie um novo projeto. Pesquise por “Gemini API” e crie/baixe uma chave de API.
- No Google Colab, instale o SDK do Google Generative AI e faça uma requisição de exemplo.
3. DeepSeek
DeepSeek é uma alternativa relativamente nova, compatível com a API da OpenAI. Para usar:
- Acesse platform.deepseek.com/sign_in e crie uma conta. Em seguida, gere uma chave de API.
- No Google Colab, use a biblioteca
openai
mas configure o endereço para a API da DeepSeek e faça uma requisição.
Limites e custos: DeepSeek não possui um nível gratuito permanente. Ele cobra por token: no modelo padrão (DeepSeek-V3) o custo típico é cerca de $0.27 por 1M de tokens de entrada e $1.10 por 1M de tokens de saída. Há descontos fora do horário de pico (até 50% off). DeepSeek também oferece o modelo deepseek-reasoner (R1) que produz raciocínios explícitos antes da resposta, útil em tarefas analíticas.
Quer aprender mais?
Conheça nossa Formação do Zero à Análise de Dados Econômicos e Financeiros usando Python e Inteligência Artificial. Aprenda do ZERO a coletar, tratar, construir modelos e apresentar dados econômicos e financeiros com o uso de Python e IA.