Salta ai contenuti

Inspect AI - Cheatsheet del Framework di Valutazione LLM

Inspect AI - Cheatsheet del Framework di Valutazione LLM

Inspect è un framework open-source per le valutazioni dei modelli di linguaggio di grandi dimensioni, creato dall”UK AI Safety Institute. Fornisce alle valutazioni una struttura chiara — un dataset di campioni, una pipeline solver che produce risposte e uno scorer che le valuta — più un visualizzatore di prima classe per ispezionare esattamente cosa il modello ha visto e fatto su ogni campione. È progettato per valutazioni rigorose e riproducibili, inclusi compiti agentici e l”uso di strumenti, ed è ampiamente utilizzato per test di sicurezza e capacità.

Installation

MethodCommand
pippip install inspect-ai
uvuv add inspect-ai
Model keyexport OPENAI_API_KEY=... / ANTHROPIC_API_KEY=...
VS CodeInstall the Inspect extension for the viewer
Verifyinspect --version

The Three Building Blocks

ComponentRole
DatasetCampioni con input e target
SolverStep che convertono l”input in output del modello
ScorerValuta l”output rispetto al target

A Minimal Eval

from inspect_ai import Task, task
from inspect_ai.dataset import example_dataset
from inspect_ai.scorer import model_graded_fact
from inspect_ai.solver import generate, system_message

@task
def security_qa():
    return Task(
        dataset=example_dataset("theory_of_mind"),
        solver=[
            system_message("You are a concise security expert."),
            generate(),
        ],
        scorer=model_graded_fact(),
    )
inspect eval security_qa.py --model openai/gpt-4o

Running Evals

CommandDescription
inspect eval task.py --model openai/gpt-4oEsegui una valutazione
inspect eval task.py --limit 20Solo i primi 20 campioni
inspect eval task.py --model-base-url URLEndpoint personalizzato/locale
inspect eval task.py -T param=valuePassa parametri del task
inspect eval-retry <log>Riprova i campioni falliti
inspect viewApri il visualizzatore dei log

Solvers

SolverDoes
generate()Chiama il modello
system_message(...)Prependi un prompt di sistema
chain_of_thought()Aggiungi prompting CoT
self_critique()Il modello rivede la propria risposta
use_tools([...])Abilita la chiamata di strumenti
basic_agent()Un ciclo agente di stile ReAct

Scorers

ScorerGrades by
match()Exact/substring match
includes()Il target appare nell”output
pattern(regex)Estrazione regex
model_graded_qa()Giudice LLM rispetto a una rubrica
model_graded_fact()Giudice LLM per equivalenza fattuale
choice()Risposta a scelta multipla

Agentic Evals & Tools

from inspect_ai.tool import bash, python
from inspect_ai.solver import basic_agent

solver = basic_agent(tools=[bash(), python()], max_attempts=3)
CapabilityNote
Tool useStrumenti integrati bash, python, web
SandboxingEsegui strumenti in Docker per isolamento
Multi-turnCicli agente con limiti di tentativo
Custom toolsDecora funzioni Python come strumenti

The Viewer

ShowsWhy it matters
Every sampleInput, target, output, score
Full transcriptOgni messaggio, chiamata di strumento e risultato
Scoring rationalePerché il giudice ha valutato in questo modo
MetricsAccuratezza e metriche personalizzate

Essere in grado di leggere la trascrizione dei fallimenti è ciò che trasforma un punteggio in un risultato attuabile.

Inspect vs Other Eval Frameworks

AspectInspectDeepEvalRagas
OriginUK AI Safety InstituteConfident AIExploding Gradients
FocusValutazioni generali + agenticheValutazioni di app in stile unit-testMetriche specifiche per RAG
ViewerRicco, di prima classeReport/dashboardPunteggi
Best forValutazioni rigorose di capacità/sicurezzaGating di metriche notePunteggio di pipeline RAG

Integra DeepEval per i test in stile CI e Ragas per metriche specifiche di RAG.

Resources