Como forçar o modelo a retornar JSON válido?

Viewed 2

Preciso integrar com um sistema que espera JSON. Como garantir que o modelo só retorne JSON?

1 Answers

3 técnicas combinadas:

1. Ative response_format: json_object (quando disponível no modelo)
Nos parâmetros do agente, defina JSON mode. Força o modelo a retornar JSON sintaticamente válido.

2. Inclua schema no prompt:

Retorne APENAS JSON válido seguindo este schema:
{
  "severidade": "Baixa|Média|Alta|Crítica",
  "categoria_mitre": "string (ID MITRE)",
  "iocs": ["string"],
  "proximos_passos": ["string"]
}
Nada além do JSON. Sem explicações.

3. Reduza temperatura para 0.0-0.2 — mais determinístico.

4. Use stop sequences se necessário — para parar após fechar o objeto.

5. Valide no seu código com Pydantic ou JSON Schema após receber.

Modelos melhores para JSON:

  • gpt-5 — excelente function calling e JSON mode
  • claude-sonnet-4-6 / opus-4-7 — muito confiáveis
  • gemini-3-pro — bom em structured output

Evite para JSON crítico: modelos pequenos (<30B params) podem gerar JSON malformado.

📖 Documentação completa na Wiki:

Related