Saídas estruturadas
15 minLição 7 de 14
Modo JSON e saída estruturada
Obtenha respostas previsíveis e parseáveis dos LLMs
Objetivos de aprendizagem
- •Entender o modo JSON e quando usá-lo
- •Aprender a especificar schemas de saída de forma eficaz
- •Lidar com casos extremos e validação
Por que saída estruturada?
LLMs geram texto livre por natureza, mas aplicações frequentemente precisam de dados estruturados:
- Confiabilidade de parsing: JSON pode ser parseado programaticamente
- Consistência: Mesma estrutura sempre
- Integração: Fácil uso com bancos de dados e APIs
- Validação: Verificar se a saída corresponde ao schema esperado
Habilitando modo JSON
A maioria das APIs oferece uma flag de modo JSON:
const response = await openai.chat.completions.create({
model: "gpt-4",
response_format: { type: "json_object" },
messages: [
{ role: "system", content: "Retorne apenas JSON válido." },
{ role: "user", content: "Liste 3 linguagens de programação com ano de criação" }
]
});Importante: Ao usar modo JSON, você deve instruir o modelo a retornar JSON no próprio prompt.
Especificando schemas
Seja explícito sobre a estrutura esperada:
Retorne um objeto JSON com esta estrutura exata:
{
"linguagens": [
{
"nome": "string",
"ano": number,
"paradigma": "string"
}
]
}Fornecer um template de schema melhora bastante a confiabilidade.
Erros comuns
×Esquecer de instruir saída JSON no prompt — o modo JSON sozinho não basta
×Não fornecer schema — o modelo pode inventar sua própria estrutura
×Não validar a saída — sempre faça parse e valide o JSON antes de usar
×Pedir estruturas complexas demais — schemas muito aninhados aumentam a taxa de erro
Principais pontos
+Modo JSON garante saída JSON sintaticamente válida
+Inclua sempre instruções de JSON no prompt, não só a flag da API
+Forneça templates de schema explícitos para estrutura consistente
+Valide e faça parse da saída JSON antes de usar na aplicação