Pular para o conteúdo
fernando.moretes.com
BlogEstudosCursosE-booksOpen SourcePodcasts
Loading…
Fernando Azevedo

Arquiteto de TI Especialista

Arquitetura, AWS, IA em produção, sistemas financeiros e FinOps, escritos a partir do que foi operado, com os números.

  • LinkedIn
  • GitHub
  • E-mail

Conteúdo

  • Blog
  • Estudos de arquitetura
  • Cursos
  • E-books
  • Open Source
  • Podcasts
  • Assuntos
  • Trilhas

Ferramentas

  • Well-Architected self-check
  • Arquitetura deste site
  • Números públicos
  • Histórico de estudo

Sobre

  • Comunidade
  • IA Builder
  • Perfil
  • Currículo (CV)
  • Trabalhe comigo
  • Media kit
  • RSS do blog
  • RSS dos estudos
  • Artigos narrados (podcast)
  • llms.txt
  • Termos, privacidade e uso de IA

(c) 2026 Fernando Francisco Azevedo

Trilha Arquiteto de IA/Prompting: o contrato com o modelo
Módulo 1 · Fundamentos· Aula 05/22

Prompting: o contrato com o modelo

System vs user, instruções claras, few-shot e os limites do que prompt resolve.

5 min de leitura

Escolha como aprender

combine como quiser

Dica: o vídeo é um resumo visual rápido; o áudio e o texto trazem a aula completa. Terminar o áudio ou o vídeo, ou passar no quiz, já conta a aula como concluída.

Assista a esta aula
Narrado por Fernando AzevedoMP4PDF
Ouça esta aula
0:008:54
Velocidade
Baixar

Você já tem um modelo capaz, mas ele não sabe o que você quer até você dizer. O prompt é o contrato: define papel, regras, formato e exemplos antes de qualquer resposta aparecer. Entender essa estrutura é o que separa quem 'tenta até funcionar' de quem projeta comportamento de forma previsível.

Os três papéis de uma conversa

Todo LLM moderno recebe mensagens rotuladas com um papel (role). Os três que importam são system, user e assistant.

System é onde você, arquiteto, fala com o modelo antes do usuário. É o espaço para definir identidade, tom, restrições e formato de saída. Pense nele como o briefing que um gerente dá a um funcionário antes da reunião com o cliente: o funcionário (modelo) vai interagir com o cliente (user), mas as regras já estão estabelecidas.

User é a mensagem de quem usa o sistema, pode ser um humano digitando ou sua aplicação montando uma string programaticamente. Assistant é a resposta do modelo; em few-shot (veremos adiante) você também injeta mensagens de assistant para mostrar exemplos de resposta esperada.

Um erro comum é colocar tudo no user e não usar o system. O resultado é um modelo que ignora restrições porque elas chegaram misturadas ao pedido, sem autoridade de configuração. Regras de negócio, persona e formato pertencem ao system. O user deve carregar apenas o dado variável, a pergunta, o texto a processar, o contexto da sessão.

Anatomia de um prompt bem estruturado

Fluxo de montagem do prompt até a resposta do modelo

📝 Prompt Assembly
  • system · papel, regras, formato
  • assistant (exemplos) · few-shot opcional
  • user · dado variável da sessão
🧠 Model
  • Context Window · tokens concatenados
  • LLM Inference · next-token prediction
📤 Output
  • Resposta · no formato definido
  • Validação · (app / schema)

O que faz um prompt ser bom

Um bom prompt tem quatro ingredientes: contexto, instrução clara, formato de saída e, quando necessário, exemplos.

Contexto é o que o modelo precisa saber para não inventar: quem é o usuário, qual o domínio, quais restrições existem. Sem contexto, o modelo preenche lacunas com probabilidade, e probabilidade nem sempre é o que você quer.

Instrução clara significa verbo de ação + escopo + restrição. "Resuma" é fraco. "Resuma em até três frases, focando em impacto financeiro, sem mencionar nomes de pessoas" é um contrato.

Formato de saída reduz pós-processamento. Se você precisa de JSON, diga no system. Se precisa de lista numerada, diga. O modelo segue formato quando instruído, não por padrão.

Exemplos (few-shot) são o atalho mais poderoso quando a instrução por si só é ambígua. Mostrar dois ou três pares input/output esperados calibra o modelo melhor do que qualquer adjetivo como "detalhado" ou "profissional". Zero-shot funciona para tarefas simples e bem definidas; few-shot entra quando o padrão de saída é específico demais para descrever só com palavras.

Um padrão que uso em produção: system define persona + regras + formato; user traz apenas {{variavel}}. Isso torna o prompt versionável, testável e separado do dado.

Montando um prompt estruturado, exemplo prático

  1. 1

    System: persona e regras

    `` system: Você é um assistente de triagem de suporte técnico. Responda SOMENTE em JSON com as chaves: { "categoria": string, "prioridade": "alta|media|baixa", "resumo": string }. Não invente informações ausentes no ticket. ``

  2. 2

    Few-shot: dois exemplos no histórico

    `` user: "Não consigo fazer login desde ontem, erro 401." assistant: {"categoria":"autenticacao","prioridade":"alta","resumo":"Falha de login com erro 401 há mais de 24h."} user: "Quero mudar a cor do botão no dashboard." assistant: {"categoria":"ui","prioridade":"baixa","resumo":"Solicitação estética no dashboard."} ``

  3. 3

    User: dado variável da sessão

    `` user: "{{ticket_texto}}" `` Só isso. O dado muda; o contrato não.

Ligar

Papéis em uma conversa com o modelo

Toque num conceito e depois na definição.

FA
Na prática: chain-of-thought não é mágica, é instrução
Arquiteto de TI Especialista

Você vai ouvir muito sobre 'pense passo a passo' (chain-of-thought). O que isso faz é simples: força o modelo a gerar tokens intermediários de raciocínio antes de dar a resposta final. Como o modelo prediz o próximo token com base em tudo que veio antes (aula 03), ter o raciocínio escrito na janela de contexto melhora a resposta final em tarefas que exigem múltiplos passos lógicos. Não é um truque, é consequência direta de como o modelo funciona. Eu uso em tarefas de classificação complexa e análise de causa raiz; evito em respostas curtas onde o raciocínio extra só aumenta latência e custo.

Os limites do prompt, o que ele não resolve

Aqui está a parte que mais vejo ser ignorada: prompt não dá conhecimento novo ao modelo. Se o modelo foi treinado até março de 2024 e você precisa que ele responda sobre um evento de outubro de 2024, nenhum prompt resolve isso. O modelo vai alucinar ou dizer que não sabe, e ambos são comportamentos corretos dado o que ele tem.

Da mesma forma, prompt não dá ferramentas. Você pode instruir o modelo a "consultar o banco de dados", mas ele não tem como fazer isso sozinho. A capacidade de agir no mundo, chamar APIs, buscar documentos, executar código, vem de arquitetura: RAG para conhecimento externo, tool calling para ações. Essas são as duas próximas aulas.

O que o prompt controla: comportamento (tom, formato, restrições), estratégia de raciocínio (chain-of-thought, decomposição de problema) e calibração de exemplos (few-shot). O que o prompt não controla: fatos além do treino, dados em tempo real e execução de código ou chamadas externas.

Entender esse limite é fundamental para não projetar sistemas frágeis. Quando um requisito não cabe no prompt, a resposta de arquitetura é RAG ou tools, não um prompt maior.

Zero-shot vs Few-shot: quando usar cada um

CritérioZero-shotFew-shot
Quando usarTarefa simples e bem definidaPadrão de saída específico ou ambíguo
Custo de tokensBaixoMédio–alto (exemplos ocupam contexto)
Consistência de formatoDepende da instrução escritaAlta, o exemplo mostra exatamente o esperado
ManutençãoMais simplesExemplos precisam ser revisados com o modelo

O que fixar desta aula

System define comportamento e regras; user traz o dado variável. Não misture os dois.
Um bom prompt tem: contexto, instrução com verbo+escopo+restrição, formato de saída e exemplos quando necessário.
Few-shot supera zero-shot quando o padrão de saída é difícil de descrever só com palavras.
'Pense passo a passo' melhora tarefas lógicas complexas porque o raciocínio escrito alimenta a próxima predição.
Prompt não resolve falta de conhecimento nem falta de ferramentas, isso é RAG e tool calling.

Dúvidas frequentes

Prompt engineering vai desaparecer com modelos melhores?

Modelos melhores reduzem a necessidade de truques, mas não eliminam a necessidade de instrução clara. Quanto mais capaz o modelo, mais importante é dizer exatamente o que você quer, porque ele vai fazer exatamente isso, com mais fidelidade.

Posso colocar regras de segurança só no system prompt?

Não como única camada. System prompt é importante, mas pode ser contornado por prompt injection. A aula 10 cobre guardrails e por que segurança precisa de defesa em profundidade, não só instrução.

Quantos exemplos few-shot são suficientes?

Em geral, dois a cinco cobrem a maioria dos casos. Mais do que isso raramente ajuda e consome contexto que poderia ser usado para o dado real. Teste com dois e adicione só se a consistência piorar.

Checkpoint do Módulo 1

Módulo 1 completo

Você chegou ao fim do primeiro módulo. Passamos por o que é IA e onde o LLM se encaixa, como um modelo aprende e o que são parâmetros, como tokens e contexto funcionam, o que são embeddings e busca semântica, e agora como estruturar o contrato com o modelo via prompt. Esses cinco conceitos são a base de tudo que vem a seguir: RAG, tools, agentes, avaliação. A seguir, um exercício de associação para consolidar os papéis de uma conversa, e depois o quiz do módulo. Se você conseguir responder sem consultar, está pronto para o Módulo 2.

Quiz

Checkpoint: Módulo 1

1. O que o prompt NÃO resolve sozinho?
2. O system prompt serve para…

Referências

Prompt Engineering Guide: DAIR.AIChain-of-Thought Prompting Elicits Reasoning in Large Language Models: Wei et al., 2022Amazon Bedrock: System prompts documentationAnthropic: Claude prompt engineering overview
Concluir e ir para a próxima Aula anterior