Pular para o conteúdo principal

Capítulo 3: Formatação e Estrutura

🎯 Objetivos de Aprendizagem​

Após concluir este capítulo, você será capaz de:

  • Utilizar formatação markdown de forma eficaz em prompts
  • Criar templates de saída para resultados consistentes
  • Especificar estruturas complexas (tabelas, JSON, código)
  • Construir frameworks reutilizáveis de prompt

📚 Introdução​

O formato da sua saída é tão importante quanto o conteúdo. Uma resposta bem estruturada é mais fácil de ler, usar e processar. Este capítulo ensina como obter exatamente o formato que você precisa.

Markdown em Prompts​

Por que usar Markdown?​

Modelos de IA entendem e geram markdown muito bem. Usá-lo ajuda a:

  • Organizar prompts complexos
  • Solicitar formatação específica
  • Obter saídas consistentes e legíveis

Elementos Comuns de Markdown​

# Títulos para seções
## Subtítulos
### Sub-subtítulos

**Negrito** para ênfase
*Itálico* para termos
`code` para código em linha

- Pontos para listas

1. Listas numeradas
2. Para sequências

> Blocos de citação para citações

| Tabelas | Para | Dados |
|---------|------|-------|

```code blocks```

Solicitando Saída em Markdown​

Escreva um resumo de machine learning. Formate usando:
- Títulos H2 para seções principais
- Pontos para conceitos-chave
- Negrito para termos importantes
- Uma tabela de comparação para tipos de ML

Templates de Saída​

O que é um Template de Saída?​

Uma estrutura predefinida que a IA preenche:

Gere uma avaliação de produto usando este template:

---
Nome do Produto: [nome]
Avaliação: [X/5 estrelas]
Preço Pago: [valor]

Prós:
• [pró 1]
• [pró 2]
• [pró 3]

Contras:
• [contra 1]
• [contra 2]

Resumo: [um parágrafo]
Recomendação: [Comprar/Considerar/Evitar]
---

Benefícios dos Templates​

BenefícioDescrição
ConsistênciaMesma estrutura sempre
CompletudeGarante todas as informações
Extração fácilFácil de extrair dados
ProfissionalismoSaída limpa e organizada

Exemplos de Templates​

Template de Ata de Reunião:

Formate a discussão como ata de reunião:

## Reunião: [Título]
**Data:** [Data]
**Participantes:** [Nomes]

### Decisões Principais
1. [Decisão 1]
2. [Decisão 2]

### Ações
| Item | Responsável | Prazo |
|--------|-------------|-----------|
| [Tarefa] | [Pessoa] | [Data] |

### Próximos Passos
- [Próximo passo 1]
- [Próximo passo 2]

Template de Relato de Bug:

Documente este bug usando o template:

**ID do Bug:** AUTO-[número]
**Gravidade:** [Crítico/Alta/Média/Baixa]
**Status:** Aberto

**Descrição:**
[Resumo em uma frase]

**Passos para Reproduzir:**
1. [Passo 1]
2. [Passo 2]
3. [Passo 3]

**Comportamento Esperado:**
[O que deveria acontecer]

**Comportamento Atual:**
[O que acontece em vez disso]

**Ambiente:**
- SO: [Sistema Operacional]
- Navegador: [Navegador + versão]
- Versão do App: [Versão]

Formatos de Dados Estruturados​

Saída em JSON​

Extraia informações de contato e retorne em JSON:

{
"name": "",
"email": "",
"phone": "",
"company": "",
"role": ""
}

Texto: "Oi, sou Sarah Chen da TechCorp. Sou VP de
Engenharia. Contate-me em sarah.chen@techcorp.com ou
ligue para 555-0123."

Saída:

{
"name": "Sarah Chen",
"email": "sarah.chen@techcorp.com",
"phone": "555-0123",
"company": "TechCorp",
"role": "VP of Engineering"
}

Saída em XML/HTML​

Converta estes dados para o formato HTML:

Produto: Mouse sem fio
Preço: R$29,99
Características: Ergonômico, Cliques silenciosos, Bateria de 12 meses

Saída como um card de produto HTML com tags semânticas apropriadas.

Saída em CSV​

Converta estes registros de vendas para o formato CSV com cabeçalhos:

"John vendeu 15 unidades do Produto A por R$500 na segunda-feira.
Mary vendeu 20 unidades do Produto B por R$800 na terça-feira.
Bob vendeu 10 unidades do Produto A por R$350 na quarta-feira."

CSV:

Estruturas de Tabela​

Solicitação de Tabela Simples​

Compare Python, JavaScript e Java em uma tabela com
colunas: Linguagem, Melhor Uso, Curva de Aprendizagem, Mercado de Trabalho.

Solicitação de Tabela Complexa​

Crie uma matriz de decisão para escolha de banco de dados:

Linhas: PostgreSQL, MongoDB, Redis, MySQL
Colunas:
- Caso de Uso (melhor aplicação)
- Escalabilidade (nota 1-5)
- Curva de Aprendizagem (Fácil/Média/Difícil)
- Custo (Disponibilidade de plano gratuito)
- Quando Escolher

Adicione uma linha de cabeçalho e notas breves abaixo da tabela.

Especificações de Saída de Código​

Solicitação Básica de Código​

Escreva uma função Python para calcular fatorial.
Inclua:
- Type hints
- Docstring com exemplos
- Tratamento de erro para números negativos

Solicitação Detalhada de Código​

Escreva uma função JavaScript com esta especificação:

Nome da Função: validateEmail
Parâmetros: email (string)
Retorna: { valid: boolean, reason: string }

Requisitos:
- Verificar símbolo @
- Verificar domínio
- Verificar TLD válido
- Retornar motivo específico para qualquer falha

Inclua:
- Comentários JSDoc
- 3 casos de teste como comentários
- Apenas sintaxe ES6+

Estruturas de Resposta em Múltiplas Partes​

Seções Sequenciais​

Analise esta proposta de negócio em três partes:

PARTE 1: RESUMO EXECUTIVO (2-3 frases)
[Análise aqui]

PARTE 2: FORÇAS E FRAQUEZAS
Forças:
- [Ponto 1]
- [Ponto 2]

Fraquezas:
- [Ponto 1]
- [Ponto 2]

PARTE 3: RECOMENDAÇÕES
[Lista numerada de recomendações]

Detalhamento em Camadas​

Explique computação quântica em três níveis:

NÍVEL 1 - PARA UMA CRIANÇA (2 frases):
[Explicação simples]

NÍVEL 2 - PARA UM ESTUDANTE DO ENSINO MÉDIO (1 parágrafo):
[Explicação intermediária]

NÍVEL 3 - PARA UM ESTUDANTE DE CIÊNCIA DA COMPUTAÇÃO (2-3 parágrafos):
[Explicação técnica com terminologia]

Construindo Frameworks Reutilizáveis​

Estrutura de Framework​

┌─────────────────────────────────────────────────────────────┐
│ REUSABLE PROMPT FRAMEWORK │
├─────────────────────────────────────────────────────────────┤
│ │
│ [ROLE] │
│ You are a {role} with expertise in {domain}. │
│ │
│ [TASK] │
│ Your task is to {action} the following {input_type}. │
│ │
│ [CONTEXT] │
│ Audience: {audience} │
│ Purpose: {purpose} │
│ Constraints: {constraints} │
│ │
│ [INPUT] │
│ {actual_input} │
│ │
│ [OUTPUT FORMAT] │
│ {template_structure} │
│ │
└─────────────────────────────────────────────────────────────┘

Exemplo de Framework: Revisão de Conteúdo​

FRAMEWORK DE REVISÃO DE CONTEÚDO

Papel: Você é editor de conteúdo para {publication_type}.

Tarefa: Revise o seguinte {content_type} para
{review_criteria}.

Forneça feedback usando esta estrutura:

## Avaliação Geral
Nota: X/10
Resumo: [1 frase]

## Pontos Fortes
1. [Força com exemplo]
2. [Força com exemplo]

## Pontos a Melhorar
1. [Problema]: [Sugestão específica]
2. [Problema]: [Sugestão específica]

## Versão Editada (se aplicável)
[Conteúdo revisado]

---
Conteúdo para revisão:
{content}

Principais Aprendizados​

Summary
  1. Markdown ajuda a organizar prompts e especificar a formatação da saída
  2. Templates garantem saídas consistentes e completas
  3. Solicite dados estruturados (JSON, CSV, tabelas) para uso programático
  4. Construa frameworks reutilizáveis para tarefas recorrentes
  5. Estratifique a complexidade quando necessário (simples → detalhado)

← Anterior: Contexto e Restrições | Faça o Quiz →