Progetto personale: non c'è un cliente, l'ho costruito per studio o per sperimentare.
Case study
- Il mio ruolo
- Tutto, da solo: prodotto, agente ed eval, backend, frontend e infrastruttura AWS.
- Durata
- Un weekend, ottobre 2026
Il problema
I modelli video si addestrano su filmati che devono avere una licenza per il training, nel territorio giusto e alla data giusta. Un modello linguistico sa leggere una richiesta e trovare le clip adatte, ma non è un controllo legale: si può convincerlo a ignorare una licenza, e a valle nessuno sa cosa abbia davvero verificato.
Cosa ho fatto e perché
- La regola nel codice, sull'unico punto di scrittura: il modello propone le clip tramite i tool, e una clip entra nel dataset solo se una funzione pura approva la sua licenza. Il modello non può scegliere il territorio né la data che quella funzione controlla.
- Le eval come filtro: 21 casi con ground truth scritta a mano, iniezioni di prompt comprese, eseguiti su ogni pull request che cambia l'agente, più una versione senza regola per misurare quanto vale.
- Manifest che dimostrano la clearance: ogni clip porta la licenza su cui è stata approvata e la versione del catalogo, e i manifest sono bloccati su S3 con Object Lock, accanto a un record del run su DynamoDB.
- Un notaio che firma solo ciò che la regola permette: una Lambda separata, fuori dalla portata della pipeline, ricontrolla ogni manifest con il proprio catalogo e lo firma con una chiave KMS. Chiunque può verificarlo nel browser, da riga di comando o con le chiavi pubblicate.
- Interfaccia in tempo reale: la pagina segue il run mentre arriva, con il verdetto di ogni clip, la timeline dell'agente, il costo e lo storico dei run.
- AWS in Terraform, permessi al minimo: Lambda dietro CloudFront, login con Cognito, una quota giornaliera per utente e una CI su GitHub OIDC che può toccare solo le risorse di questo stack.
Risultati
- 0violazioni dei diritti in 63 run di eval
- 3 su 8run con iniezione che hanno battuto la regola nel solo prompt
- 100%precisione e recall su 21 casi di eval
- $0.0018costo del modello per richiesta
- 7,2 stempo mediano di un run
- 266test automatici
Stack in evidenza
- Claude (Anthropic)
- AI SDK
- TypeScript
- Next.js
- AWS Lambda
- AWS KMS
- Amazon Bedrock
- Terraform
- Github Actions
Hai un progetto simile? Parliamone.
ScrivimiCosa ho esplorato.
Un agente che usa i tool senza avere l'ultima parola: Claude propone le clip, una funzione pura controlla la licenza di ognuna per il territorio e la data della richiesta, e il dataset nasce solo da ciò che lei approva. Intorno: eval con ground truth scritta a mano che fanno da filtro su ogni pull request, un notaio separato che ricontrolla e firma ogni manifest con una chiave KMS, una pagina che verifica la firma nel browser, e tutto lo stack AWS in Terraform, con la CI su GitHub OIDC.
Cosa mi porto via.
Misurare prima di decidere: le eval hanno mostrato che una regola scritta solo nel prompt lasciava passare un'iniezione in 3 run su 8, e hanno trovato difetti che una review non avrebbe visto, come una ricerca che bruciava il budget di token su clip inutilizzabili.