C'è molta confusione online su cosa sia realmente un ambiente RL. È letteralmente solo un benchmark. - Un ambiente - Uno stato iniziale - Un verificatore che controlla se uno stato finale è corretto o accettabile L'ambiente è una piccola sandbox che offre al LLM l'opportunità di interagire realmente: compiere azioni, vedere risultati e influenzare il mondo in cui si trova. Nel caso di TerminalBench, è semplicemente un contenitore Docker che emula un vero terminale per sviluppatori, completo di file, dipendenze e strumenti di sistema che il modello può utilizzare. Lo stato iniziale definisce cosa vede il modello quando inizia il compito: gli input, il contesto e le condizioni iniziali. In un benchmark di codifica, questo potrebbe essere lo stato di un repository Git quando l'utente ha iniziato a lavorare: i file, il rapporto di bug, i test falliti e il prompt iniziale dell'utente che dice al modello cosa deve essere fatto. È la "configurazione del problema", congelata nel tempo, in modo che ogni modello inizi dalla stessa posizione e il risultato possa essere confrontato equamente. Infine, il verificatore è ciò che rende tutto misurabile. È il pezzo che controlla se il modello ha effettivamente risolto il compito: il giudice automatico che trasforma output disordinati in un semplice punteggio o segnale di pass/fail. Ecco perché senti le persone nei laboratori dire "ci siamo addestrati sui verificatori". Stanno parlando di avere un modo automatico per valutare il comportamento del modello. Questo diventa quindi la funzione di ricompensa per RL, o il segnale di pass/fail per i benchmark.