O que são LLMs?

Na seção anterior aprendemos que todo Agente precisa de um modelo de IA no seu núcleo, e que os LLMs são o tipo mais comum de modelo usado para isso.
Agora vamos entender o que são LLMs e como eles dão poder aos Agentes.
Esta seção é uma explicação técnica concisa. Se quiser se aprofundar, veja o curso gratuito de Processamento de Linguagem Natural da Hugging Face.
O que é um Grande Modelo de Linguagem?
Um LLM (Large Language Model) é um tipo de modelo de IA que se destaca em entender e gerar linguagem humana. Eles são treinados em quantidades enormes de texto, o que lhes permite aprender padrões, estrutura e até nuances da língua. Esses modelos costumam ter muitos milhões — ou bilhões — de parâmetros.
A maioria dos LLMs de hoje é construída sobre a arquitetura Transformer, uma arquitetura de aprendizado profundo baseada no algoritmo de "Atenção", que ganhou destaque desde o lançamento do BERT pelo Google em 2018.
Existem 3 tipos de Transformer:
- Codificadores (Encoders) Recebem texto (ou outro dado) como entrada e produzem uma representação densa desse texto (um embedding).
- Exemplo: BERT, do Google
- Usos: classificação de texto, busca semântica, reconhecimento de entidades nomeadas
- Tamanho típico: milhões de parâmetros
- Decodificadores (Decoders) Focam em gerar novos tokens para completar uma sequência, um token por vez.
- Exemplo: Llama, da Meta
- Usos: geração de texto, chatbots, geração de código
- Tamanho típico: bilhões de parâmetros
- Seq2Seq (Codificador–Decodificador) Combinam os dois. O codificador processa a sequência de entrada em uma representação de contexto; o decodificador gera a sequência de saída.
- Exemplo: T5, BART
- Usos: tradução, sumarização, paráfrase
- Tamanho típico: milhões de parâmetros
Embora existam várias formas, LLMs são tipicamente modelos baseados em decodificador com bilhões de parâmetros. Alguns dos mais conhecidos:
| Modelo | Fornecedor |
|---|---|
| GPT | OpenAI |
| Llama 3 | Meta |
| Gemma | |
| Mistral | Mistral |
| DeepSeek-R1 | DeepSeek |
| Qwen2 | Alibaba — é o que usamos neste curso |
O princípio por trás de um LLM é simples e muito eficaz: seu objetivo é prever o próximo token, dada uma sequência de tokens anteriores.
Um "token" é a unidade de informação com que o LLM trabalha. Você pode pensar em "token" como se fosse uma "palavra", mas por eficiência os LLMs não usam palavras inteiras.
Por exemplo: o português tem centenas de milhares de palavras, mas um LLM pode ter um vocabulário de apenas 32.000 tokens. A tokenização normalmente opera em pedaços de palavra que se combinam.
Pense em como os tokens "interess" e "ante" se combinam para formar "interessante", ou como "ado" pode ser acrescentado para formar "interessado".
Guarde esta frase, porque ela explica quase todo comportamento estranho que você vai ver daqui em diante: o modelo prevê o token mais provável, não o token verdadeiro.
Ele não tem um banco de fatos que consulta. Ele tem uma noção estatística de que palavras costumam seguir quais palavras. Quando o texto provável coincide com o verdadeiro — o que acontece na maior parte do tempo — parece que o modelo "sabe". Quando não coincide, ele produz uma resposta igualmente fluente, igualmente confiante e errada. É o fenômeno que se chama de alucinação, e ele não é um defeito que será corrigido em versão futura: é uma consequência direta de como o modelo funciona.
É por isso que a resposta de um agente serve para te levar mais rápido até a fonte, nunca para substituir a leitura da fonte.
Tokens especiais
Cada LLM tem alguns tokens especiais, próprios do modelo. Eles servem para abrir e fechar os componentes estruturados da geração — indicar o início ou o fim de uma sequência, de uma mensagem ou de uma resposta. Os prompts que enviamos ao modelo também são estruturados com esses tokens.
O mais importante deles é o token de fim de sequência (EOS, End Of Sequence).
As formas variam bastante entre fornecedores:
| Modelo | Fornecedor | Token EOS | Função |
|---|---|---|---|
| GPT-4 | OpenAI | <\|endoftext\|> |
Fim do texto da mensagem |
| Llama 3 | Meta | <\|eot_id\|> |
Fim da sequência |
| DeepSeek-R1 | DeepSeek | <\|end_of_sentence\|> |
Fim do texto da mensagem |
| Gemma | <end_of_turn> |
Fim do turno de conversa | |
| Qwen2 | Alibaba | <\|im_end\|> |
Fim da mensagem |
Vendo isso no seu próprio modelo
Você não precisa acreditar na tabela — dá para conferir no modelo que está rodando na sua máquina. Com o Ollama ativo:
ollama show qwen2:7b --template
A saída é longa e cheia de {{ }} — não se assuste. Esse é o template de chat do modelo: a peça que transforma uma lista de mensagens em uma única string de texto, que é o que o modelo de fato recebe. Os {{ }} são os buracos onde o conteúdo é encaixado.
Destacando a parte essencial dela:
<|im_start|>system
{{ .System }}<|im_end|>
<|im_start|>user
{{ .Content }}<|im_end|>
<|im_start|>assistant
Repare em dois detalhes:
- Cada mensagem é cercada por
<|im_start|>papele<|im_end|>. É assim que o modelo distingue quem falou o quê — não existe "campo" de papel, existe marcação dentro do texto. - O template termina em
<|im_start|>assistante para ali. É exatamente essa deixa em aberto que faz o modelo continuar escrevendo como se fosse o assistente. Ele não está "respondendo a você": está completando um texto que foi deixado no meio.
Para ver quais tokens fazem o modelo parar de gerar:
ollama show qwen2:7b --parameters
Saída:
stop "<|im_start|>"
stop "<|im_end|>"
Você não precisa memorizar esses tokens. O importante é entender que o modelo não recebe "mensagens" — ele recebe uma string única, montada pelo template. A biblioteca faz essa montagem para você. Quando algo estranho acontecer no comportamento do seu agente, esse é um dos primeiros lugares para olhar.
Entendendo a previsão do próximo token
LLMs são autorregressivos: a saída de uma passagem vira a entrada da próxima. O laço continua até que o modelo preveja o token EOS, quando então ele para.

Em outras palavras: o LLM decodifica texto até chegar ao EOS. Mas o que acontece dentro de um único laço de decodificação?
- Uma vez que o texto de entrada é tokenizado, o modelo calcula uma representação da sequência que captura o significado e a posição de cada token.
- Essa representação entra no modelo, que produz pontuações ranqueando a probabilidade de cada token do vocabulário ser o próximo da sequência.

A partir dessas pontuações, há várias estratégias para escolher o token:
- A mais simples é sempre pegar o token de maior pontuação.
- Estratégias mais elaboradas, como a beam search, exploram várias sequências candidatas para encontrar a de maior pontuação total — mesmo que alguns tokens individuais tenham pontuação menor.
Este é o momento de entender o parâmetro temperatura, que você vai encontrar em toda biblioteca de LLM: ele controla o quanto a escolha se afasta do token mais provável. Temperatura baixa (perto de 0) torna a saída mais determinística e repetitiva; temperatura alta a torna mais variada e mais propensa a erro. Para agentes, temperatura baixa costuma ser o certo — você quer que ele escolha a Tool correta, não que seja criativo.
"Atenção é tudo o que você precisa"
Um aspecto central da arquitetura Transformer é a Atenção. Ao prever a próxima palavra, nem toda palavra da frase tem o mesmo peso: em "A capital da França é ...", as palavras "capital" e "França" carregam quase todo o significado.

Esse mecanismo de identificar as palavras mais relevantes se mostrou extremamente eficaz.
Embora o princípio básico — prever o próximo token — não tenha mudado desde o GPT-2, houve avanços significativos em escalar redes neurais e em fazer a atenção funcionar para sequências cada vez mais longas.
Se você já usou um LLM, provavelmente conhece o termo janela de contexto (context length): o número máximo de tokens que o modelo consegue processar de uma vez. É exatamente o num_ctx=8192 que configuramos na Unidade 0.
Contexto é um recurso finito, e agentes consomem contexto rápido. A cada passo do ciclo, o histórico de pensamentos, ações e observações vai se acumulando no prompt. Quando estoura a janela, o começo da conversa é descartado — e o agente literalmente esquece o que estava fazendo. Se o seu agente começa a se repetir ou a perder o objetivo depois de alguns passos, suspeite disso primeiro.
O prompt importa
Considerando que o único trabalho do LLM é prever o próximo token olhando para todos os tokens de entrada, e decidir quais são "importantes", a forma como você escreve a entrada importa muito.
A sequência de entrada que você fornece ao LLM é chamada de prompt. Um prompt bem projetado torna mais fácil guiar a geração do modelo na direção da saída desejada.
Como os LLMs são treinados?
LLMs são treinados em grandes conjuntos de texto, onde aprendem a prever a próxima palavra de uma sequência através de um objetivo auto-supervisionado.
Desse aprendizado não supervisionado, o modelo aprende a estrutura da língua e os padrões subjacentes do texto, o que lhe permite generalizar para dados que nunca viu.
Depois desse pré-treinamento inicial, os LLMs podem ser ajustados (fine-tuning) para tarefas específicas. Alguns modelos são treinados para estrutura conversacional ou para uso de Tools; outros focam em classificação ou geração de código.
O qwen2:7b que você baixou é um modelo ajustado para instrução e para uso de Tools. Isso não é detalhe: um modelo apenas pré-treinado completaria seu texto em vez de responder a ele, e não saberia produzir o formato de chamada de Tool que os Agents precisam.
Como posso usar um LLM?
Há dois caminhos:
- Rodar localmente, se você tem hardware suficiente.
- Usar uma API na nuvem, como a da OpenAI ou a Inference API da Hugging Face.
O curso original da Hugging Face segue o caminho 2. Nesta versão seguimos o caminho 1 — é o que você já configurou na Unidade 0.
| Local (Ollama) | Nuvem (API) | |
|---|---|---|
| Dados enviados a terceiros | Nenhum | Todo o prompt |
| Custo | Zero após instalar | Por token processado |
| Velocidade | Segundos, na CPU | Milissegundos |
| Qualidade do modelo | Limitada pelo seu hardware | Os maiores modelos disponíveis |
| Funciona offline | Sim | Não |
| Precisa de conta/token | Não | Sim |
Nenhum dos dois é melhor em abstrato. Para aprender e para trabalhar com material sensível, local ganha. Para tarefas que exigem o máximo de capacidade de raciocínio e não envolvem dado restrito, a nuvem ganha.
Como você viu na Unidade 0, trocar de um para o outro é uma linha de código. Aprenda com o local; se um dia precisar da nuvem, o resto do seu código continua igual.
Como LLMs são usados em Agentes?
O LLM é o componente central de um Agente de IA, fornecendo a base para entender e gerar linguagem humana.
Ele interpreta instruções do usuário, mantém contexto na conversa, define um plano e decide quais Tools usar.
Vamos detalhar cada uma dessas etapas nesta unidade. Por ora, o que você precisa guardar é: o LLM é o cérebro do Agente — e um cérebro que só sabe produzir texto. Tudo o que o agente faz de fato acontece porque um programa ao redor interpretou esse texto e executou algo.
Fixando o capítulo
Três perguntas para responder antes de seguir. Sem nota, sem registro — servem para descobrir o que passou batido.
Q1: Mecanicamente, o que um LLM faz?
Q2: Por que o modelo não conhece nenhum processo do acervo do Tribunal?
Q3: Um modelo pergunta a si mesmo quando deve parar de gerar. Como isso funciona de verdade?
Foi bastante informação. Cobrimos o que são LLMs, como funcionam e qual é o papel deles nos agentes.
Agora que entendemos como LLMs funcionam, é hora de ver como eles estruturam suas gerações em um contexto conversacional: siga para Mensagens e tokens especiais.