Riparare l'output JSON di un LLM: gestire il quasi-JSON dell'IA

Gli LLM spesso restituiscono JSON avvolto in recinti ```json, con apici singoli, letterali Python o chiavi senza virgolette. Ripara la sintassi, valida in modo rigoroso, poi deriva tipi TypeScript dall'output pulito.

Quando arrivi qui

Un LLM ha restituito JSON che JSON.parse rifiuta. I colpevoli più comuni sono i recinti di codice markdown che avvolgono il documento, gli apici singoli, le chiavi senza virgolette, i letterali Python come True/None e gli oggetti serializzati. Ripara la sintassi, poi valida in modo rigoroso prima di consegnare il risultato alla tua app.

Il flusso di riparazione per l'output di un LLM

Esegui prima la riparazione — tollera recinti, apici singoli, chiavi senza virgolette, letterali Python e virgole finali. Valida per secondo per confermare che il testo pulito faccia andata e ritorno. Usa l'albero pulito per derivare tipi o alimentare la tua app.

Una volta che analizza, deriva i tipi

Dopo che l'output dell'LLM è validato, deriva interfacce TypeScript o un JSON Schema così che la chiamata successiva abbia un contratto da validare. Questa è la differenza tra riparare una volta e riparare per sempre.

Cosa arriva negli standard

Due prossime proposte JavaScript contano per i flussi JSON degli LLM: l'accesso alla sorgente in JSON.parse (leggere gli errori con il testo originale accanto al valore) e JSON.parseImmutable. Riducono la quantità di codice di riparazione su misura presente in ogni app.

Percorso consigliato

Incolla l'output dell'LLM, puliscilo, tipizzalo.

    1. Strumento: / — incolla l'output dell'IA, fai clic su «Ripara e formatta».
    1. Guida: /guides/repair-llm-json-output — gestisce recinti, virgolette, letterali Python.
    1. Blog: /blog/repair-broken-json-in-javascript — lo stesso flusso nel codice.
    1. Riferimento: /news/json-parse-source-access-baseline-2025 — quale supporto standard sta arrivando.