Apresentação
🤖 Large Language Models
Aqui a vaga realmente se foca.
Self-Attention (fórmula)
Attention(Q,K,V) = softmax(QKᵀ / √d) V
Elementos: query, key, value, attention score.
Pipeline dentro do LLM (prompt → resposta)
text → tokenization → embedding → transformer layers → probability distribution → token sampling
Porque hallucinations?
Geram probabilidades de tokens; não têm acesso a conhecimento real; podem inferir padrões errados. Mitigação: RAG, verification loops, constrained generation.
Embeddings
Representações vetoriais densas que capturam relações semânticas. Ex: rei − homem + mulher ≈ rainha
Instruction tuning & RLHF
Instruction tuning: treinar para seguir instruções (datasets prompt/resposta, RL).
RLHF: pretraining → supervised fine-tuning → reward model → RL optimization.
Tokenization
Dividir texto em unidades (tokens). BPE, WordPiece. Ex: "ChatGPT is amazing" → ["Chat", "GPT", "is", "amazing"]
Temperature vs Top-p
Temperature: controla aleatoriedade.
Top-p: controla corte da distribuição de probabilidade.
Context window
Máximo de tokens processáveis. GPT-4 ~128k, Claude ~200k+. Solução para docs grandes: chunking, hierarchical retrieval.
Fine-tuning vs RAG (senior)
Fine-tuning altera o comportamento do modelo; RAG aumenta com conhecimento externo.
API vs self-hosted
| API (OpenAI, Anthropic, etc.) | Self-hosted (vLLM, Ollama) |
|---|---|
| Sem infra, paga por token | Controlo total, custo fixo |
| Modelos mais recentes | Modelos open (Llama, Mistral) |
| Latência variável | Latência previsível |
| Dados enviados ao provider | Dados ficam on-prem |
Quando self-host: volume alto, dados sensíveis, latência crítica.
Latência em LLMs
- TTFT (Time To First Token): quanto até o primeiro token. Importante para UX — utilizador vê que algo acontece.
- Tokens/sec: velocidade de geração. Streaming melhora perceived latency mesmo com tokens/sec baixo.
- Reduzir latência: modelos menores, caching, batch, especulação (speculative decoding)
Structured outputs / JSON mode
APIs (OpenAI, etc.) permitem forçar output em JSON. Reduz parsing errors e hallucinations em formatos. Útil para extração de dados, tool calling, pipelines.
Zona de prática
Sem perguntas. Clica em Editar para adicionar.