Key Takeaways
- Modelos locais de 7B precisam de orientação mais explícita do que o GPT-5.5. Prompts mais longos, instruções mais claras.
- Prompting por cadeia de pensamento ("Deixe-me pensar passo a passo") melhora a precisão de raciocínio em 10–20%.
- Sempre especifique o formato de saída (JSON, Markdown, texto simples). Saídas não estruturadas são imprevisíveis.
- Exemplos few-shot (1–3) funcionam melhor que zero-shot em modelos locais. Mais exemplos = maior consistência.
- Definição de papéis ("Você é um especialista em Python") melhora respostas específicas de domínio.
Fatos rápidos
- Melhoria de precisão com CoT: 10–20% de melhoria em tarefas de raciocínio
- Requisito few-shot: Modelos locais 7B precisam de 3–5 exemplos vs. 1–2 de APIs na nuvem
- Consumo de contexto: Cada exemplo usa 50–200 tokens
- Impacto da temperatura: Reduzir de 0,8 para 0,3 melhora a precisão factual em 15–25%
- Diferença de tamanho do modelo: Modelos 7B precisam de mais orientação explícita do que modelos 70B
- Consistência do formato de saída: Especificações JSON melhoram a confiabilidade em 30–40%
Como os modelos locais são diferentes?
| Aspecto | GPT-5.2 (ChatGPT Plus) | Local 7B (Llama 3.3 8B) | Local 70B (Llama 3.3) |
|---|---|---|---|
| Janela de contexto | 128K tokens | 4K–128K tokens | 128K tokens |
| Seguimento de instruções | Excelente | Bom com prompts explícitos | Muito bom |
| Aprendizado few-shot | 1–2 exemplos | 3–5 exemplos necessários | 2–3 exemplos |
| Raciocínio | Implícito em múltiplas etapas | Passo a passo explícito necessário | Implícito moderado |
| System prompt | Gerenciado pela API | Configurar por ferramenta | Configurar por ferramenta |
| Temperatura padrão | 1,0 (API) | 0,8 (padrão Ollama) | 0,8 (padrão Ollama) |
Como o prompting por cadeia de pensamento melhora a precisão?
O prompting por cadeia de pensamento (CoT) pede ao LLM que mostre seu raciocínio passo a passo antes de responder. Essa técnica é especialmente eficaz para modelos locais de 7B–13B porque eles carecem da capacidade de raciocínio implícito de modelos na nuvem maiores. Para um problema matemático como "17 × 24", modelos locais sem CoT frequentemente erram. Com raciocínio passo a passo explícito, eles decompõem o problema em partes e atingem 10–20% de precisão maior.
Sem CoT: "Quanto é 17 × 24?" → O modelo responde diretamente, muitas vezes errado.
Com CoT: "Resolva passo a passo: 17 × 24" → O modelo mostra: 17 × 20 = 340, 17 × 4 = 68, total = 408. Mais preciso.
Saiba como essa técnica se estende a agentes de IA locais que usam raciocínio internamente para selecionar ferramentas.
O prompting por cadeia de pensamento instrui o modelo a decompor o raciocínio em etapas explícitas antes de responder, melhorando a precisão em 10–20% em tarefas complexas.
# Prompt com CoT
prompt = """
You will answer a question by thinking step-by-step.
Let me think about this:
Question: Why do local LLMs require more explicit prompting than cloud APIs?
Thinking:
1. First, consider the differences in model size...
2. Then, think about training data and fine-tuning...
3. Finally, consider the architecture and inference optimization...
Answer:
"""
# This guides the model to reason through the problem•💡: Dica profissional: CoT funciona melhor quando você inicia a saída com raciocínio parcial. Exemplo: "Deixe-me decompor isso passo a passo: primeiro, percebo..."
Por que especificar o formato de saída é crítico para modelos locais?
Especificar o formato de saída exato (JSON, Markdown, texto simples) é crítico para modelos locais porque eles produzem saídas imprevisíveis sem instruções explícitas. Modelos na nuvem como o GPT-5.5 podem inferir intenção a partir de solicitações vagas; modelos locais de 7B–13B não conseguem. Para sistemas RAG locais que precisam de extração de documentos estruturada, especificações de formato JSON evitam erros de parsing e aumentam a precisão de extração em 30–40%.
Exemplo: "Extraia entidades do texto" pode retornar texto narrativo em vez de uma lista.
Melhor: "Extraia entidades como JSON com chaves: pessoa, local, organização".
# Bad: ambiguous output
prompt = "Summarize this text"
# Good: explicit format
prompt = """
Summarize the text in EXACTLY 3 bullet points.
Format as a JSON list:
{
"summary": [
"- Point 1",
"- Point 2",
"- Point 3"
]
}
"""•⚠️: Problema comum: Modelos locais às vezes se recusam a gerar JSON puro. Adicione "Gere APENAS JSON, sem bloco markdown" ao prompt para contornar isso.
Como a atribuição de papéis melhora as respostas de modelos locais?
Atribuir um papel específico ("Você é um especialista em Python com 10 anos de experiência") melhora dramaticamente as respostas específicas de domínio em comparação com prompts genéricos. Essa técnica, chamada de prompting de persona, ancora a geração de respostas do modelo a um domínio de expertise específico. Modelos locais respondem 15–25% melhor à definição de papéis do que modelos na nuvem, porque carecem do alinhamento RLHF robusto que permite que prompts genéricos funcionem. Exemplos:
- "Você é um especialista em Python" → melhores explicações de código
- "Você é um pesquisador médico" → respostas biomédicas mais detalhadas
- "Você é um analista cético" → pensamento mais crítico
Combine a definição de papéis com fine-tuning para um alinhamento de domínio ainda mais forte se você implanta em muitos casos de uso.
Em termos simples, o prompting de persona diz ao modelo qual "chapéu" usar ao responder. Um chapéu de especialista em Python produz código diferente (e melhor) do que um chapéu de assistente genérico.
•🎯: Boa prática: A especificidade importa. "Você é um especialista" é fraco; "Você é um especialista em Python com 10 anos de experiência backend, focado em padrões async/await" é forte.
Como configurar system prompts no Ollama, LM Studio e llama.cpp?
O system prompt define o papel e as restrições do modelo antes da mensagem do usuário, e cada ferramenta (Ollama, LM Studio, llama.cpp) requer um formato diferente para configurá-lo.
# Ollama (Modelfile)
FROM llama3.1:8b
SYSTEM """You are a Python expert with 10 years experience. Answer only Python questions. Provide code examples. Use type hints."""
PARAMETER temperature 0.7
PARAMETER top_p 0.9
PARAMETER repeat_penalty 1.1
# Ollama (API / OpenAI SDK)
response = client.chat.completions.create(
model="llama3.1:8b",
messages=[
{"role": "system", "content": "You are a Python expert..."},
{"role": "user", "content": "Write a FastAPI endpoint"}
],
temperature=0.7
)
# LM Studio (GUI)
# Settings → System Prompt field (paste your prompt)
# Or via API at localhost:1234 — identical format to Ollama
# llama.cpp (CLI)
./main -m llama-3.1-8b.gguf \
--system-prompt "You are a Python expert..." \
--temp 0.7 --top-p 0.9 --repeat-penalty 1.1 \
-p "Write a FastAPI endpoint"Como temperatura e parâmetros de amostragem impactam a qualidade da saída?
Ajustar temperatura, top_p e repeat_penalty tem mais impacto na qualidade da saída de modelos locais 7B do que a redação do prompt, e modelos locais requerem padrões diferentes das APIs na nuvem.
Insight chave para modelos locais: A temperatura padrão do Ollama (0,8) é maior do que o padrão da API da OpenAI (1,0 com amostragem nucleus). Reduzir a temperatura para 0,3–0,5 melhora dramaticamente a precisão factual em modelos locais 7B. Para tarefas de codificação, defina a temperatura como 0,1–0,2 e repeat_penalty como 1,0 (código precisa de padrões repetitivos como imports e chamadas de função).
| Parâmetro | O que controla | Padrão (Ollama) | Recomendado |
|---|---|---|---|
| temperature | Aleatoriedade | 0,8 | 0,3–0,5 para factual, 0,7–0,9 para criativo |
| top_p | Diversidade de vocabulário | 0,9 | 0,8 para consistente, 0,95 para variado |
| repeat_penalty | Evitar repetição | 1,1 | 1,1–1,2 para chat, 1,0 para código |
•📌: Ponto chave: Temperatura é um multiplicador sobre logits. Em 0,0, sempre escolhe o token de maior probabilidade. Acima de 1,0, a aleatoriedade aumenta. Modelos locais saturam acima de 1,5 de temperatura.
Por que modelos locais precisam de mais exemplos few-shot do que APIs na nuvem?
Fornecer 3–5 exemplos (aprendizado few-shot) a modelos locais melhora a consistência da saída em 15–25% a mais do que zero-shot, enquanto modelos na nuvem precisam de apenas 1–2 exemplos.
Modelos locais se beneficiam de mais exemplos porque têm menos parâmetros e dados de treinamento menos diversos. O aprendizado few-shot é uma técnica de aprendizado em contexto que mostra ao modelo o padrão de entrada/saída esperado antes de pedir que ele resolva a tarefa real.
# Few-shot prompt
prompt = """
Classify sentiment. Examples:
"I love this product!" → positive
"Worst experience ever" → negative
"It's okay, nothing special" → neutral
Now classify: "This is amazing!"
Answer: """
# Model learns format and style from examples•🛠️: Dica de implementação: Variar exemplos (1 fácil, 1 médio, 1 difícil) funciona melhor do que 3 similares. A diversidade melhora a generalização e evita o overfitting a padrões específicos.
Erros comuns em prompt engineering
- Prompts extensos sem estrutura. Instruções dispersas confundem modelos locais. Seja conciso e explícito.
- Não usar cadeia de pensamento. CoT melhora a precisão em 10–20%. Sempre use em tarefas de raciocínio.
- Assumir que um prompt serve para tudo. Itere e teste. Pequenas mudanças de redação causam grandes variações na saída.
- Ignorar o formato de saída. Sem especificação explícita de formato, as saídas são imprevisíveis.
- Usar definições de papéis vagas. "Você é um especialista" é vago. "Você é um especialista em Python com 10 anos de experiência" é melhor.
•📍: Você sabia? Os prompts mais eficazes iteram 3–5 versões. O prompting de modelos locais não é "configurar e esquecer" — pequenos refinamentos se acumulam em ganhos significativos de precisão.
Considerações regionais para prompt engineering
UE (GDPR): Ao implantar prompt engineering para modelos locais em infraestrutura da UE, certifique-se de que todos os dados de treinamento usados para iterar prompts estejam em conformidade com os princípios de minimização de dados do GDPR. Não exporte consultas de usuários para APIs externas para testes; itere localmente.
Japão (APPI): Empresas japonesas que usam LLMs locais para dados de clientes devem implementar registro de auditoria explícito de todos os prompts e respostas. A qualidade do prompt impacta diretamente a segurança dos dados — prompts mal projetados podem expor informações sensíveis nas saídas.
Brasil (LGPD): Implantações de LLM local para empresas brasileiras que processam dados pessoais devem estar em conformidade com a Lei Geral de Proteção de Dados (LGPD). Executar modelos localmente mantém os dados no hardware da organização, eliminando transferências internacionais que exigiriam salvaguardas adicionais sob a supervisão da ANPD.
Perguntas comuns sobre prompting de LLMs locais
Por que LLMs locais precisam de prompts mais explícitos do que o GPT-5.5?
Modelos locais de 7B–13B têm menos parâmetros e dados de treinamento menos diversos do que o GPT-5.5. Eles não conseguem inferir intenção ambígua tão bem. Instruções explícitas — formato, papel, raciocínio passo a passo — compensam essa lacuna. O prompting por cadeia de pensamento melhora a precisão de modelos locais em 10–20% em tarefas de raciocínio.
Quantos exemplos few-shot devo incluir em prompts para LLMs locais?
3–5 exemplos são ótimos para modelos locais 7B. O GPT-5.5 normalmente precisa de apenas 1–2 exemplos. Mais exemplos melhoram a consistência, mas consomem tokens da janela de contexto. Para Llama 3.2 8B com janela de contexto de 4K, limite a 3 exemplos mais sua tarefa. Para modelos com contexto de 32K+, 5 exemplos são seguros.
O prompting por cadeia de pensamento funciona com todos os modelos locais?
A cadeia de pensamento funciona com qualquer modelo ajustado por instrução (Llama 3.x, Qwen 3, Mistral Small). Modelos base não seguem instruções de "pense passo a passo" de forma confiável. Para modelos locais, frases CoT como "Resolva passo a passo:" no início da saída esperada funcionam melhor.
Qual formato de saída é mais confiável para LLMs locais?
JSON é o formato de saída estruturado mais confiável para LLMs locais. Especifique o esquema JSON exato no prompt. Cabeçalhos Markdown (##) são confiáveis para seções. Evite solicitar XML ou formatos personalizados — modelos locais os tratam de forma inconsistente.
Como evito que um LLM local saia do tópico?
Adicione uma restrição explícita ao system prompt: "Responda APENAS sobre [tópico]. Se perguntado sobre qualquer outra coisa, diga: Só posso ajudar com [tópico]." Para o Ollama, use o campo de system prompt. Para llama.cpp, adicione como mensagem de sistema.
Qual é a diferença entre prompting zero-shot e few-shot para modelos locais?
Zero-shot não fornece exemplos; few-shot fornece 2–5 exemplos rotulados antes da tarefa. Para modelos locais 7B, few-shot supera consistentemente zero-shot em tarefas de classificação e extração em 15–25% de precisão. Zero-shot funciona bem para tarefas de geração (resumo, tradução).
Como testo e itero prompts para modelos locais?
Teste com 5–10 exemplos diversos. Mude uma variável de cada vez (papel, formato ou instrução CoT). Meça a precisão antes/depois. Use 2–3 exemplos fáceis e 2–3 difíceis. Itere em ciclos de 3–5 variações de prompt. Documente prompts funcionais para reutilização.
Devo fazer prompt engineering ou fine-tuning para uma tarefa específica?
Faça prompt engineering primeiro (rápido, gratuito, iterativo). Se a precisão estabilizar após 20+ variações de prompt, então faça fine-tuning. O fine-tuning requer 500+ exemplos específicos da tarefa e 1–4 horas de treinamento. Para tarefas de propósito geral, o prompt engineering geralmente é suficiente.
Como os system prompts diferem das instruções do usuário em LLMs locais?
System prompts definem o papel e as restrições do modelo antes da mensagem do usuário e fazem parte da estrutura da solicitação. Instruções do usuário fazem parte da conversa. System prompts são mais confiáveis do que incorporar instruções nas mensagens do usuário. Para modelos locais, um system prompt bem escrito melhora a consistência em 15–25%.
Posso usar o mesmo prompt em diferentes modelos locais?
Parcialmente. Estrutura CoT básica e definições de papéis se transferem entre modelos (Llama, Qwen, Mistral). No entanto, cada modelo requer ajuste de prompt para resultados ótimos. Modelos maiores (70B) são mais tolerantes a variações de prompt do que modelos menores (7B).
Fontes
- Chain-of-Thought Prompting Paper (Wei et al.) — Pesquisa seminal sobre raciocínio por meio de instruções passo a passo.
- Prompt Engineering Guide (DAIR-AI) — Coleção abrangente de técnicas de prompting e melhores práticas.
- Ollama Modelfile Reference — Documentação oficial para system prompts, parâmetros e criação de modelos personalizados.