HiAPI
Blog

Tutoriale

claude-sonnet-4-6 in pratica: 5 scenari applicativi testuali ad alto valore e punti chiave di implementazione

Prospettiva di selezione e integrazione per sviluppatori: dalla scomposizione degli scenari ai punti chiave di implementazione

Oct 31, 2026
米白色背景上一叠错位排布的纸张,边缘为炭黑色,其中夹着一张铁锈红纸页,这是文章的封面图。

Perché partire dai modelli testuali per entrare nel business

La prima domanda nella scelta non è «il modello è potente?», ma «questo passaggio merita di essere affidato a un modello?». Lo spreco tipico dei team di engineering è trattare la capacità come obiettivo: integrare prima il modello e cercare poi lo scenario, per finire con una funzionalità che funziona in demo ma è difficile da usare in produzione.

Per stabilire se un passaggio è adatto a un modello testuale, si può usare una divisione su due dimensioni: frequenza del compito e tolleranza alla variabilità dell'output.

  • Alta frequenza + alta tolleranza: riassunti in batch, riscrittura di testi, classificazione di ticket, primo filtro dei log. Questi compiti hanno volumi elevati e costo basso per singolo errore, e sono i più adatti a essere messi in funzione per primi, per accumulare set di valutazione e template di prompt.
  • Alta frequenza + bassa tolleranza: estrazione di campi, riconoscimento di importi e date, generazione di formule conformi. È il valore più alto, ma richiede vincoli di schema, validazione e fallback, altrimenti un singolo output errato può inquinare i dati a valle.
  • Bassa frequenza + alta tolleranza: analisi una tantum, strumenti interni, funzionalità esplorative. Adatti alla proof of concept, senza dover investire troppo in costo di engineering.
  • Bassa frequenza + bassa tolleranza: liquidazioni core, conclusioni legali. In questa fase la guida deve restare umana, con il modello solo come supporto alla preparazione del materiale.

Prendendo come esempio un modello testuale di Anthropic come claude-sonnet-4-6, è adatto a svolgere il lavoro linguistico di «comprensione + sintesi + generazione», non a sostituirti nel giudizio di dominio. Il vero guadagno deriva dal togliere dalle mani delle persone le fasi ripetitive di lettura, organizzazione e prima bozza, e nel rendere la validazione un vincolo di engineering, invece di sperare che il modello abbia sempre ragione.

Quindi, nell'ordine di adozione, si consiglia di scegliere come pilota uno scenario ad alta frequenza, quantificabile e con un benchmark umano già disponibile: dati storici con cui confrontarsi, metriche di accuratezza chiare, errori intercettabili dal processo a valle. I cinque scenari seguenti seguono questa logica; per ciascuno vengono indicati progettazione di input/output, struttura del prompt, validazione e fallback, e punti chiave di controllo dei costi.

Colloca gli scenari candidati nei quattro quadranti in base a frequenza del compito e tolleranza all'errore dell'output, e scegli in base alla posizione, non ai parametri.

Scenario uno: estrazione strutturata da testo non strutturato

Contratti, ticket, email, curriculum, note su fatture: ciò che questi testi hanno in comune è che una persona li capisce, ma un programma non può consumarli direttamente. L'obiettivo del compito di estrazione è trasformarli in campi JSON stabili.

Progettazione dell'input

Per prima cosa scrivi in uno schema esplicito «cosa estrarre», invece di descrivere una serie di campi in linguaggio naturale. Nomi dei campi, tipi, obbligatorietà e valori ammessi degli enum vanno fissati nel prompt. Per testi lunghi, ritaglia o segmenta prima, individua i paragrafi rilevanti per i campi e poi inviali al modello: riduce sensibilmente i costi e limita le interferenze di contenuti irrilevanti.

Vincoli di schema e formato di output

Chiedi al modello di produrre solo JSON, senza testo esplicativo. Per i campi critici usa enum chiusi, ad esempio limitando il «tipo di contratto» a pochi valori; per campi come date e importi, specifica chiaramente se mantenere l'espressione originale o normalizzare il formato, senza mescolare i due approcci.

{
  "party_a": "string",
  "effective_date": "YYYY-MM-DD | null",
  "amount": {"value": "string", "currency": "CNY|USD|other|null"},
  "termination_clause_present": true
}

Strategia di retry in caso di fallimento

I fallimenti di parsing si dividono in tre categorie, con trattamenti diversi:

  1. Errore di formato (JSON non valido, campi mancanti): restituisci al modello il messaggio di errore di parsing e chiedi di correggere solo il formato e rigenerare; di solito un solo retry è sufficiente.
  2. Ambiguità semantica (il campo non è realmente presente nel testo): consenti di restituire null e aggiungi al risultato il marcatore needs_review, inserendo nel flusso di revisione umana, invece di far indovinare al modello.
  3. Conflitto di regole (il valore del modello contraddice le regole di validazione, ad esempio un importo negativo): giudica direttamente come fallimento, senza retry ripetuti, e passa alla revisione umana.

Nello scenario di estrazione il rischio peggiore è il retry infinito. Stabilisci un limite di tentativi (ad esempio due); superato, passa alla revisione umana e aggiungi l'input al set di valutazione come campione per le iterazioni successive del prompt.

Scenario due: riassunto di documenti lunghi e localizzazione delle informazioni chiave

La difficoltà dei documenti lunghi sta nella lunghezza del contesto e nella localizzazione della risposta. Inserire l'intero documento in una volta è costoso e instabile, e il modello tende a perdere dettagli nei paragrafi intermedi. Un approccio praticabile è in tre passi: segmentazione, aggregazione, risalita alla fonte.

Strategia di segmentazione

Segmenta lungo i confini semantici, non con tagli rigidi a numero fisso di caratteri. Livelli di titolo, numerazione dei capitoli e righe vuote sono punti di taglio naturali. Per ogni segmento conserva una «meta-informazione di origine» (nome del capitolo, numero di pagina, indice del paragrafo): è su questa che si basa tutta la risalita alle citazioni. Mantieni la lunghezza dei segmenti entro un intervallo che il modello gestisce in modo stabile: se troppo lunghi, suddividi ancora; se troppo corti, unisci, evitando che la frammentazione spezzi la semantica.

Aggregazione in due fasi

Nella prima fase produci un riassunto locale per ogni segmento, chiedendo un elenco di punti chiave del segmento, non un testo lungo e coeso. Nella seconda fase combina i punti chiave dei segmenti in un riassunto strutturato, facendo deduplicare, unire e ordinare al modello. Per compiti di localizzazione come «trova tutte le formulazioni relative a una clausola», nella prima fase fai solo scoring di rilevanza ed estrazione di estratti, e solo nella seconda genera la risposta, imponendo di restituire i numeri dei paragrafi di origine.

Punto chiave: far accompagnare la risposta dal riferimento alla fonte è il modo più economico per contenere le allucinazioni. Una conclusione senza fonte è considerata invalida a livello di processo.

Risalita alle citazioni

Mappa i numeri di paragrafo restituiti dal modello sulla posizione nel testo originale e mostrali all'utente come link cliccabili. Questo passo è anche un mezzo di validazione: se i numeri indicati dal modello non esistono o non corrispondono al contenuto, è probabile che le meta-informazioni di segmentazione non siano state comprese correttamente; controlla il formato dei numeri nel prompt, invece di dubitare subito della capacità del modello.

Controllo dei costi

I compiti di riassunto sono fatturati a token e la lunghezza dell'input è la principale fonte di costo. Le compressioni praticabili includono: rimuovere intestazioni, piè di pagina e testo di template ripetuto; inviare solo i paragrafi rilevanti alla domanda; riutilizzare i riassunti locali (memorizzare i riassunti dei segmenti quando lo stesso documento viene interrogato più volte). La cache dei risultati di segmentazione spesso produce risparmi più diretti dell'ottimizzazione del prompt.

Scenario tre: supporto alle risposte nelle conversazioni di assistenza e pre-vendita

L'assistenza conversazionale è lo scenario in cui i modelli testuali danno risultati più rapidi, ma anche quello in cui è più facile incorrere in incidenti. Il vantaggio è che genera rapidamente una prima bozza con tono adeguato; il rischio è che, una volta inviata automaticamente, una formulazione errata venga amplificata.

Organizzazione dell'input

Una singola chiamata contiene almeno tre blocchi: messaggio dell'utente, frammenti di conoscenza recuperati e cronologia della conversazione. Si consiglia di fissare l'ordine come «vincoli di sistema → frammenti di conoscenza → cronologia → domanda corrente», annotando su ogni frammento il titolo della fonte. Non inserire l'intero centro assistenza nel prompt: recupera in base alla domanda pochi frammenti ad alta rilevanza.

Struttura del prompt e confini

Nei vincoli di sistema vanno scritte chiaramente quattro cose: cosa è consentito dire, cosa non si può promettere, come rispondere quando non si sa rispondere, limite massimo di lunghezza dell'output. In particolare la regola «se non sei sicuro, dillo e passa a un operatore» va scritta esplicitamente nel prompt, altrimenti il modello tende a mascherare le lacune di conoscenza con formulazioni fluide.

Gating di confidenza e revisione umana

messaggio utente → recupero frammenti di conoscenza → generazione bozza del modello →
  ├─ ha fonte e supera la validazione delle regole → coda di invio (invio automatico configurabile)
  └─ senza fonte / attiva regole sensibili / lunghezza anomala → revisione umana

Le condizioni di gating devono basarsi su segnali osservabili, ad esempio se la bozza cita frammenti recuperati, se colpisce parole sensibili ed espressioni promissorie, se la similarità del recupero è troppo bassa. Rendere queste condizioni regole esplicite è più affidabile che chiedere al modello di autovalutare «se sono sicuro».

Ritmo di rilascio

Si consiglia di partire con «solo visione umana, nessun invio», accumulando dati di confronto tra bozze e modifiche umane, per poi aprire gradualmente le categorie a basso rischio. L'invio automatico deve sempre avere un interruttore di emergenza.

Dal messaggio utente ai frammenti di conoscenza, alla bozza del modello e al varco di confidenza: la via principale procede automaticamente, le deviazioni passano alla revisione umana.

Scenario quattro: supporto alla revisione di codice e configurazioni

Il valore del supporto alla revisione del codice non sta nel sostituire il reviewer, ma nel far scansionare prima al modello i problemi evidenti, riducendo il lavoro ripetitivo.

Organizzazione dell'input

Invia solo il diff, non l'intero repository. Per ogni modifica allega percorso del file, contesto della funzione e righe adiacenti necessarie. Lo stesso vale per frammenti di log e configurazioni: ritaglia la finestra relativa all'anomalia, non l'intero log. Nell'input indica chiaramente al modello «questo è un diff, + indica righe aggiunte», per evitare che scambi righe di contesto per modifiche.

Scomposizione delle dimensioni di revisione

Chiedere al modello una «revisione completa» in un colpo solo produce spesso conclusioni generiche. È più efficace separare le dimensioni:

  • Valori nulli e limiti: i nuovi rami coprono null, collezioni vuote, input fuori intervallo.
  • Risorse e concorrenza: le risorse aperte vengono rilasciate, lo stato condiviso ha race condition.
  • Rischi di configurazione: timeout, numero di retry, valori predefiniti degli interruttori sono ragionevoli.
  • Leggibilità: naming e commenti, priorità minima, può essere un giro separato.

Le chiamate a più giri aumentano il numero di chiamate, ma ogni prompt è più corto e le conclusioni più focalizzate; di solito conviene rispetto a un unico prompt lungo.

Contenimento dei falsi positivi

I falsi positivi sono la principale causa di abbandono di questa funzionalità. Tre strumenti: chiedere al modello numeri di riga e descrizioni del problema specifici, senza generalità; richiedere una classificazione in «suggerimento / problema / blocco», con solo «problema» e «blocco» che generano avvisi; raccogliere i falsi positivi storici come controesempi da inserire nel prompt. Scarta direttamente le conclusioni non riconducibili a righe specifiche.

Inoltre chiarisci al modello: in caso di incertezza, segna «da confermare manualmente», senza toni assertivi. I risultati della revisione vanno pubblicati come commenti sulla MR, senza bloccare il merge.

Scenario cinque: generazione di contenuti e riscrittura di testi in batch

I testi in batch sono lo scenario con il rapporto costo-beneficio più evidente, ma anche quello che produce più facilmente contenuti «che sembrano giusti ma non sono utilizzabili». Il conflitto centrale è tra scalabilità e coerenza di stile.

Vincoli in ingresso

Scrivi i requisiti di stile nel prompt di sistema e fornisci due o tre esempi positivi e un esempio negativo. Rispetto a descrizioni astratte come «tono professionale», esempi concreti vincolano meglio l'output. I vincoli sotto forma di campi sono migliori: intervallo di lunghezza, persona, se sono ammessi punti esclamativi, parole chiave da includere, espressioni vietate.

Separazione tra template e variabili

Separa il template fisso dalle variabili, iniettando la parte variabile come dati strutturati invece di concatenarla in un testo libero. Così lo stesso template può essere eseguito in batch su prodotti o campagne diverse, e in caso di errore è più facile capire se il problema è nel template o nei dati.

Controllo qualità a campione

La revisione umana completa non è praticabile nei contesti batch, ma la pubblicazione completamente automatica è troppo rischiosa. Si consiglia una struttura a due livelli:

  1. Validazione automatica: lunghezza, parole vietate, copertura delle parole chiave, ripetitività, validità del formato. Ciò che le regole possono intercettare non va lasciato al modello.
  2. Revisione a campione: estrazione casuale di una percentuale fissa per lotto per lettura umana, dando priorità ai campioni vicini ai limiti della validazione automatica.

La percentuale di campionamento va adattata al rischio di business: per le categorie ad alto rischio si aumenta la percentuale o si fa il controllo completo. I problemi rilevati in ogni ciclo di campionamento vanno riportati nei prompt e nelle regole, creando un ciclo di feedback.

Misurazione della coerenza

La coerenza è quantificabile: generando più volte lo stesso lotto di input, confronta il tasso di stabilità dei campi chiave e la similarità testuale. I template con tasso di stabilità significativamente basso indicano vincoli insufficienti: occorre prima modificare il prompt, non aumentare i controlli. I compiti batch hanno anche un costo nascosto: retry e rilavorazioni. Il risparmio di token ottenuto aumentando il tasso di output validi al primo colpo supera spesso il guadagno della semplice riduzione del prompt.

Punti di integrazione: struttura del prompt, validazione e controllo dei costi

Le pratiche di engineering comuni ai vari scenari si possono riassumere in una pipeline: normalizzazione dell'input → template di prompt → chiamata al modello → validazione dell'output → misurazione e regressione.

Stratificazione del prompt

Suddividi il prompt in tre livelli, mantenuti in modo indipendente:

  • Livello di sistema: ruolo, confini, divieti, contratto sul formato di output. Poche modifiche, revisione rigorosa.
  • Livello di compito: istruzioni specifiche e schema del compito corrente. Template mantenuti per scenario.
  • Livello di dati: input dell'utente e frammenti recuperati. Solo normalizzazione, nessuna istruzione.

Il vantaggio diretto della stratificazione è la tracciabilità della valutazione: quando la qualità peggiora, si può capire rapidamente se è cambiato il template o i dati.

Validazione dell'output

Tutti gli output devono passare una validazione prima di entrare a valle: validazione strutturale (il JSON è parsabile, i tipi dei campi corrispondono), validazione di business (enum, intervalli, coerenza tra campi), validazione di origine (le citazioni esistono nell'input). In caso di fallimento della validazione, retry o revisione umana: non lasciar passare in silenzio output anomali.

Controllo dei costi

Il modello è fatturato a token; il costo deriva principalmente dalla lunghezza dell'input e dal numero di chiamate, non dall'output singolo. Le direzioni di compressione possibili:

  • Accorciare l'input: recupero invece di invio integrale, rimozione di testo ripetuto da template.
  • Ridurre il numero di chiamate: unire compiti dello stesso lotto, memorizzare risultati intermedi stabili (come riassunti di segmenti, risultati di classificazione).
  • Vincolare l'output: limite massimo di lunghezza esplicito, evitare lunghe spiegazioni; i compiti di estrazione richiedono solo JSON, senza processo di ragionamento.
  • Elaborazione a livelli: pre-filtrare con modelli piccoli o regole, inviando solo i campioni difficili ai modelli più potenti.

Per i prezzi unitari e i dettagli di fatturazione, fai riferimento al pannello prezzi del sito; a livello di engineering l'obiettivo è rendere «quanti token consuma ogni chiamata» una metrica osservabile, statisticizzata per scenario, per individuare la vera voce di costo principale.

Osservabilità

Registra almeno: identificativo di scenario della richiesta, numero di token di input e output, tempo di esecuzione, esito della validazione, numero di retry. Questi dati sono l'unica base per ottimizzare i prompt e il budget in seguito. Senza misurazione non c'è ottimizzazione, solo ipotesi.

Le cinque fasi del flusso corrispondono a cinque gruppi di fogli disallineati: dall'input grezzo, attraverso l'allineamento al template, la chiamata, il taglio di validazione, fino alla misurazione dei costi, in un progressivo restringersi.

Checklist di valutazione e troubleshooting prima del rilascio

Prima del rilascio, scrivi chiaramente «come si misura il successo», poi parla dei dettagli di integrazione. La checklist seguente è direttamente utilizzabile.

Checklist di valutazione

  • Esiste un set di valutazione annotato manualmente, che copra campioni tipici e campioni limite, di dimensione sufficiente a supportare le conclusioni?
  • Ogni scenario ha metriche di accettazione chiare: accuratezza dei campi estratti, tasso di hit delle citazioni nei riassunti, tasso di passaggio a operatore nelle conversazioni, tasso di falsi positivi nelle revisioni?
  • Sono definite le vie di fallimento: come si trattano errori di formato, ambiguità semantiche e conflitti di regole?
  • I template di prompt sono versionati e le modifiche sono reversibili?
  • I costi sono statisticizzati per scenario, con budget e avvisi impostati?
  • Esistono meccanismi di rilascio graduale e interruttore di emergenza, con possibilità di degradare con un clic alla sola gestione umana in caso di problemi?

Checklist di troubleshooting

Quando emerge un problema, indaga in ordine, evitando di attribuirlo subito a «il modello non è capace»:

  1. Guarda prima l'input: il contenuto inviato è completo, l'ordine è corretto, ci sono dati sporchi o documenti scaduti mescolati.
  2. Poi il formato: il fallimento di parsing dell'output dipende quasi sempre da un contratto di formato nel prompt non abbastanza rigido, non dal fatto che il modello non capisca.
  3. Poi la validazione: le regole di validazione hanno bug, giudicano normali output come fallimenti.
  4. Infine i limiti di capacità: confronta lo stesso lotto di campioni con un benchmark umano, per confermare se si è davvero oltre la capacità del modello o se il campione stesso è ambiguo.

Un'esperienza pratica: se lo stesso prompt fallisce più volte consecutive con lo stesso pattern di errore, di solito è un problema di prompt o di dati; se i pattern di errore sono distribuiti casualmente, è più probabile un limite di capacità o rumore di campionamento.

Rendere valutazione e troubleshooting processi fissi permette, al cambio di versione del modello, di decidere rapidamente se adottarla. Quando serve confrontare la documentazione per confermare le modalità di integrazione, è possibile consultare la pagina del modello sul sito per parametri e istruzioni di chiamata. La vera risorsa che il team deve costruire non è il prompt di una singola volta, ma questo meccanismo riutilizzabile di valutazione, validazione e misurazione.

Inizia a creare con artefatti IA persistenti

Ottieni la tua chiave API e chiama modelli di immagini, video e audio tramite un'unica API basata sui task.

Leggi la documentazione API