Usamos cookies para melhorar a tua experiência e medir o tráfego. Política de cookies

    Scalor
    CONVENCE-NOS →
    Glossário/Agentes & Tools

    Structured Output

    JSON outputschema-constrained

    Garante que o modelo de IA responde num formato técnico rígido e previsível, como JSON, em vez de texto livre narrativo.

    O que é

    No contexto da IA Generativa, o Structured Output (Saída Estruturada) é a capacidade de um modelo de linguagem (LLM) fornecer respostas que seguem um esquema predefinido e rigoroso, normalmente no formato JSON (JavaScript Object Notation). Enquanto uma interação normal com o ChatGPT resulta em texto corrido e conversacional, o Structured Output obriga a IA a organizar a informação em campos específicos, como tabelas invisíveis onde cada dado tem o seu lugar certo.

    Para uma empresa, isto significa passar da fase de 'brincar' com a IA para a fase de 'integrar' a IA. Deixa de ser um chat e passa a ser uma componente de software que comunica diretamente com o software de faturação, o CRM ou o inventário sem erros de formatação.

    Como funciona

    Tecnicamente, o Structured Output funciona através de uma técnica chamada 'constrained sampling' (amostragem restringida). Durante o processo de geração das palavras (tokens), o servidor que corre o modelo de IA verifica se a próxima palavra viola as regras do esquema (schema) definido pelo programador. Se o esquema exige um número para o campo 'preço', o modelo fica proibido de gerar letras nesse local.

    Antigamente, isto era feito puramente através de Prompt Engineering, pedindo à IA: 'Responde apenas em JSON'. No entanto, os modelos falhavam frequentemente, adicionando texto extra ou esquecendo-se de fechar parêntesis. Hoje, as principais APIs (OpenAI, Anthropic, Google) oferecem modos nativos onde o modelo garante 100% de aderência ao esquema fornecido, tornando a resposta totalmente legível por máquinas.

    Quando usar

    O Structured Output é indispensável em qualquer cenário onde a saída da IA precise de ser consumida por outro sistema automático. Se a ideia é apenas ler a resposta no ecrã, o texto livre serve. Se o objetivo é que a resposta preencha automaticamente uma ficha de cliente, deve usar-se saída estruturada.

    Os casos de uso mais comuns incluem:

    1. Extração de Dados: Converter um e-mail de encomenda num objeto com 'nome_cliente', 'quantidade' e 'referencia_sku'.
    2. Classificação: Analisar tickets de suporte e devolver apenas uma categoria fixa (ex: Sugestão, Reclamação, Erro Técnico).
    3. Agentes de IA: Quando um agente precisa de decidir qual ferramenta usar (Function Calling), ele usa Structured Output para enviar os parâmetros corretos para essa ferramenta.
    4. Análise de Sentimento: Transformar reviews de produtos em pontuações numéricas de 1 a 5.

    Erros comuns

    O erro mais frequente é desenhar esquemas demasiado complexos ou ambíguos. Se pedir à IA para preencher um campo chamado 'detalhes' sem especificar o que lá deve estar, o modelo pode alucinar ou incluir informação irrelevante.

    Outro erro é esquecer que o Structured Output não impede a alucinação de factos; ele apenas garante a formatação. Se perguntar o NIF de uma empresa que o modelo não conhece e exigir um formato numérico, a IA pode inventar um número válido mas falso. Finalmente, as empresas muitas vezes negligenciam o tratamento de erros: mesmo que o JSON venha perfeito, a lógica de negócio deve verificar se os dados extraídos fazem sentido (ex: se uma data de entrega não está no passado).

    Exemplo prático para uma PME

    Imagine uma PME portuguesa que gere alojamentos locais e recebe centenas de mensagens mensais em várias línguas através do Booking ou Airbnb. Sem Structured Output, um funcionário teria de ler cada mensagem e copiar os dados para uma folha de Excel.

    Com Structured Output, a empresa envia o texto da mensagem para a IA com um esquema que define: data_entrada, data_saida, numero_hospedes e pedidos_especiais.

    A IA recebe a mensagem: 'Olá, vamos chegar no dia 15 de agosto, somos 3 adultos e um bebé. Podem providenciar berço?'

    O Structured Output devolve:

    {
      "check_in": "2024-08-15",
      "total_pessoas": 4,
      "berco": true,
      "idioma": "PT"
    }
    

    Este JSON entra diretamente no sistema de gestão de reservas da PME, bloqueando as datas e alertando a equipa de limpeza para preparar o berço, sem que ninguém tenha de tocar no teclado.

    Perguntas frequentes

    Q: O Structured Output gasta mais tokens? R: Sim, ligeiramente. A sintaxe do JSON (chaves, aspas e nomes de campos) conta como tokens. No entanto, a fiabilidade que traz compensa largamente o custo marginal extra.

    Q: Preciso de saber programar para usar isto? R: Para a implementação técnica num workflow automático, sim. Mas ferramentas de automação no-code (como o Make ou Zapier) já permitem configurar formatos estruturados de forma visual.

    Q: Posso forçar a IA a responder num formato que não seja JSON? R: Embora o JSON seja o padrão da indústria, é possível forçar outros formatos como XML ou CSV, embora o suporte nativo dos modelos para garantir a validade seja quase sempre focado em JSON.

    Q: O que acontece se o que o utilizador escreveu não couber no esquema? R: O modelo tentará adaptar a informação ao esquema da melhor forma possível. Se for impossível (ex: pedir uma data num texto que não tem datas), o modelo pode deixar o campo vazio (null) ou cometer um erro, por isso é importante incluir um campo de 'notas' ou 'status' para casos ambíguos.

    Exemplos práticos

    • 01Transformar e-mails de reserva em ficheiros JSON prontos para o software de gestão do hotel.
    • 02Classificar automaticamente faturas digitalizadas por categoria de despesa e valor de IVA.
    • 03Extrair nomes de produtos e quantidades de notas de encomenda escritas à mão via OCR.
    • 04Padronizar o feedback de clientes em categorias fixas para análise em dashboards de BI.

    Quer usar Structured Output na sua empresa?

    30 minutos, gratuito, sem compromisso. Dizemos onde encaixa.

    Diagnóstico IA gratuito