Prompt Evaluator — variantes comparadas em rodada real

36 chamadas reais0 erros modelo openai/gpt-oss-20b via Groq · 10/nov/2026 · latência medida 367–2164 ms

12 leads × 3 variantes de prompt para classificação (quente / morno / frio). Todos os números desta página saem de runs/latest.csv da rodada — nada digitado à mão. Código e protocolo: leadforge-prompt-evaluator.

Comparação por variante

variantechamadas okrótulos extraídoslabels vistoslatência (ms)tokens saída (méd)
v1_short
Palavra seca
12/12 4/12 frio 367–2164 315
v2_structured
JSON estruturado
12/12 12/12 frio, morno, quente 578–1776 256
v3_criteria
Critérios de fit
12/12 8/12 None, fit_unknown, unknown 474–1750 246

Leitura

varianteo que o run mostrou
v1_short modelo de raciocínio recusa em 8/12 (“preciso de mais informações”) em vez de classificar — prompt sem formato não sustenta classe
v2_structured vencedor: schema explícito, 12/12 rótulos e as três classes aparecem
v3_criteria drift de vocabulário: o prompt não fixa o enum, o modelo devolve None/fit_unknown

Amostras reais das respostas

varianteleadresposta do modelorótulo extraído
v1 L001 Para classificar o lead, preciso de mais informações sobre ele. Por favor, forneça detalhes relevantes (por exemplo, engajamento, interesse, orçamento, prazo, etc.). (sem rótulo)
v1 L002 frio frio
v1 L003 frio frio
v2 L001 {"label":"frio","confidence":70,"reasoning":"Sem informações adicionais sobre interesse ou engajamento."} frio
v2 L002 ```json { "label": "morno", "confidence": 70, "reasoning": "O lead demonstra interesse em serviços de pet shop, mas ainda não concluiu nenhuma compra ou contrato." } ``` morno
v2 L003 {"label":"morno","confidence":60,"reasoning":"Nome indica potencial cliente, mas sem indicação de interesse."} morno
v3 L001 {"label":"unknown","confidence":0.0,"reasoning":"Não há informações fornecidas sobre o lead para avaliar seu fit B2B."} unknown
v3 L002 {"label":"unknown","confidence":0,"reasoning":"Insufficient information provided to assess fit level."} unknown
v3 L003 Desculpe, mas preciso de mais informações sobre o lead (por exemplo, segmento de mercado, tamanho da empresa, cargo dos decisores, necessidades específicas, etc.) para poder classificá‑lo adequadamente. Por favor, forneç… (sem rótulo)

Os 3 prompts

v1_short — Palavra seca

Classifique o lead como 'quente', 'morno' ou 'frio'. Responda só com a classificação.

v2_structured — JSON estruturado

Lead: {lead_name} ({category}) em {city}. Responda em JSON com campos: label (quente|morno|frio), confidence (0-100), reasoning (1 frase).

v3_criteria — Critérios de fit

Classifique este lead seguindo critérios de fit para prospecção B2B. Responda JSON: {label, confidence, reasoning}. Critérios: fit_high se cliente final claramente definido; fit_medium se segmento promissor; fit_low se muito genérico.

O que a rodada consertou no harness

  1. Respostas vazias silenciosas — com max_tokens=200 o canal de pensamento do modelo de raciocínio comia o budget: HTTP 200, content vazio, amostra perdida. Fix: MAX_TOKENS=1000.
  2. 429 sem retry — o free tier da Groq tem 30 RPM; a primeira rodada perdeu 5 chamadas. Fix: backoff 5s/15s + pacing de 2s.
  3. Modelo aposentado — llama-3.1-8b-instant saiu do free tier em 16/ago/2026 (404). O script de rodada descobre os modelos disponíveis na chave.

Limitações