Validazione tramite autocritica
Output verificati dal modello.
Validazione tramite autocritica è una lezione AI Prompt Engineering gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento AI Prompt Engineering, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso AI Prompt Engineering include 4 lezioni in totale.
Il modello come proprio critico
L’autocritica utilizza un LLM per valutare l’output di un LLM rispetto a una rubrica o a una policy. Rileva errori articolati che i validatori deterministici non possono codificare: incoerenze fattuali, problemi di tono o utilità e sottili violazioni delle policy.
È il complemento basato su modelli dei validatori di schema e di regole.
Separare il critico dall’autore
Esegua la critica come chiamata distinta, con un prompt dedicato, non come istruzione finale nella generazione. Un critico con contesto pulito, a cui viene chiesto soltanto di giudicare, è molto più affidabile che chiedere all’autore di valutare la propria risposta durante la generazione, quando è condizionato dalla propria risposta.
draft = author_model(task_prompt)
verdict = critic_model(
'You are a strict reviewer. Judge ONLY the answer below against the rubric.\n'
'Rubric: ' + rubric + '\nAnswer: ' + draft
)Output strutturato della critica
Faccia emettere al critico esiti strutturati, in modo che la pipeline possa agire programmaticamente. Una critica in testo libero non è utilizzabile programmaticamente.
CRITIC_SCHEMA = {
'type': 'object',
'properties': {
'pass': {'type': 'boolean'},
'violations': {'type': 'array', 'items': {'type': 'string'}},
'severity': {'type': 'string', 'enum': ['none','minor','major','critical']},
'fix_hint': {'type': 'string'}
},
'required': ['pass','violations','severity','fix_hint'],
'additionalProperties': False
}Ciclo di critica e revisione
Affianchi al critico un revisore. Il critico individua i problemi; l’autore modifica la risposta sulla base della critica; il processo si ripete finché l’output non supera i controlli o si esaurisce il budget. Questo è l’equivalente basato su modelli del ciclo di correzione.
draft = author_model(task)
for _ in range(2):
c = critic_model(draft)
if c['pass']:
break
draft = author_model(task + '\nRevise to fix: ' + c['fix_hint'])
final = draftLe rubriche rendono affidabile la critica
Un’istruzione vaga («è una buona risposta?») produce esiti incoerenti. Una rubrica concreta, con criteri espliciti e verificabili, produce esiti coerenti. Scomponga la valutazione in domande sì/no a cui il critico risponda individualmente.
RUBRIC = [
'Does the answer directly address the user question?',
'Are all factual claims supported by the provided context?',
'Is any disallowed content present?',
'Is the response within the requested length?'
]Critica basata sulle fonti per verificare i fatti
Per rilevare le allucinazioni, fornisca al critico il contesto della fonte e gli chieda di segnalare ogni affermazione che non sia supportata da tale contesto. In questo modo trasforma l’autocritica in un controllo di entailment, molto più efficace che chiedere «è vero?» senza fornire prove.
verdict = critic_model(
'For each claim in the ANSWER, state whether the CONTEXT entails it. '
'Flag any unsupported claim.\nCONTEXT:\n' + ctx + '\nANSWER:\n' + draft
)Modalità di fallimento del critico
Anche il critico è un LLM e può fallire:
- Compiacenza — approvare automaticamente la risposta dell’autore.
- Eccesso di critica — segnalare output corretti.
- Punti ciechi condivisi — lo stesso modello non rileva gli stessi errori.
Riduca questi rischi utilizzando come critico una famiglia di modelli diversa, un ruolo di revisore rigoroso e soglie calibrate.
Utilizzare un critico più economico o diverso
Il critico non deve necessariamente essere il modello più costoso. Spesso un modello più piccolo con una rubrica rigorosa è un filtro conveniente e l’utilizzo di una famiglia di modelli diversa riduce i punti ciechi correlati. Riservi il modello più potente alla generazione.
Quando fidarsi e quando verificare
L’autocritica riduce gli errori, ma non costituisce una prova. Per contenuti a basso rischio, è sufficiente un singolo passaggio di critica. Per output ad alto rischio, combini l’autocritica con validatori deterministici e revisione umana; non permetta mai che un modello sia l’unico arbitro di decisioni critiche per la sicurezza.
Costi, latenza e caching
L’autocritica raddoppia all’incirca il numero di chiamate per richiesta. La controlli in questo modo: attivi la critica solo dopo i controlli deterministici, in modo da criticare soltanto ciò che ha superato schema e regole; memorizzi nella cache le critiche per bozze identiche e limiti il numero di cicli di revisione. Quando possibile, esegua la critica in parallelo con le attività non bloccanti.
if deterministic_ok(draft):
verdict = critic_model(draft) # only spend critique on viable draftsCalibrare sui dati annotati da esseri umani
Convalidi il critico prima di affidarsi a esso. Crei un insieme di output annotati da esseri umani, esegua il critico e misuri l’accordo (precisione/recall rispetto ai verdetti umani). Regoli la rubrica e il ruolo finché i giudizi del critico non risultano correlati con quelli umani; ripeta la verifica dopo gli aggiornamenti del modello.
agreement = mean(critic(d)['pass'] == human_label[d] for d in eval_set)
assert agreement > 0.9Verifica rapida
Desidera che il critico rilevi in modo affidabile le allucinazioni in una risposta RAG. Che cosa migliora maggiormente l’affidabilità?
Riepilogo
Validazione tramite autocritica:
- Un critico separato, con contesto pulito, giudica l’output dell’autore.
- Emetta esiti strutturati e utilizzi un ciclo di critica e revisione.
- Rubriche concrete e controlli di entailment basati sulle fonti aumentano l’affidabilità.
- Presti attenzione alla compiacenza e ai punti ciechi condivisi; utilizzi un modello critico diverso.
- Limiti il processo in base ai costi, lo combini con controlli deterministici e lo calibri rispetto alle valutazioni umane.
Ha completato la sezione sulle protezioni. Prossimo corso: red teaming e valutazione avversariale.
Domande Frequenti
La lezione «Validazione tramite autocritica» è gratuita?
Sì — il testo completo di «Validazione tramite autocritica» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso AI Prompt Engineering, passa a CoddyKit PRO. Il corso AI Prompt Engineering include 4 lezioni in totale.
Cosa imparerò in «Validazione tramite autocritica»?
Output verificati dal modello. Eserciti AI Prompt Engineering con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare AI Prompt Engineering?
Non è richiesta alcuna esperienza precedente. AI Prompt Engineering su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Validazione tramite autocritica»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione AI Prompt Engineering?
Sì. Ogni lezione AI Prompt Engineering include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Cosa sono le guardrail
- Filtraggio dell'input e dell'output
- Validatori di schemi e regole
- Validazione tramite autocritica