Open source, Apache-2.0v0.15.0, pre-1.0Tradotto dall'inglese con un modello AI. Originale in inglese del 2026-09-17
Hai cambiato un prompt.Cos’altro è peggiorato?
Un prompt nuovo, una versione del modello, l’aggiornamento di una libreria. L’applicazione funziona ancora, e una risposta su cui il tuo cliente contava adesso è sbagliata. digline ti dice quale caso, di quanto, e se il calo è più grande del rumore proprio del giudice.
pip install digline
Richiede Python 3.12 o successiva
Inizia qui Perché un riferimento nel repo
- Il quickstart non richiede una chiave API
- Nessun server, nessuna telemetria
- Exit code per la CI
how-do-i-returnpeggiorato
- llm_rubric
- 1.00 → 0.40
- contains
- 1.00 → 0.00
- Peggiorati anche
- is-it-waterproof, where-is-my-order
-Sign every reply as "— Northwind Support".+Sign every reply as "— the Northwind team".
6 check sono peggiorati. La CI si ferma qui.exit 1
Il problema
Un’applicazione LLM può peggiorare senza che nulla si rompa.
I test passano, l’applicazione risponde, la demo funziona. Poi una modifica al prompt, una versione del modello o l’aggiornamento di una libreria cambia una risposta su cui il tuo cliente contava, e nella pipeline nulla lo segnala.
Come va di solito
- Rieseguire le eval e guardare la media
- Nessun modo per distinguere un calo reale da un giudice in giornata cattiva
- Ciò che è stato approvato, e quando, sta nel notebook di qualcuno
- Il cliente trova la regressione per primo
Con un riferimento approvato nel repo
- Ogni modifica viene confrontata caso per caso
- Il rumore del giudice viene misurato prima di dichiarare un calo
- Il riferimento è un file in una PR, con sopra un commit e un nome
- La CI si ferma prima che lo faccia il rilascio
Come si inserisce
Vive nel tuo repo, non su un server.
Nessuna iscrizione e niente da ospitare. Il riferimento è un file, e lo strumento è un pacchetto.
Il riferimento è un file nel tuo repo
Punteggi, prompt e configurazione del modello, committati accanto al codice. Cambia tramite una PR, quindi ogni approvazione ha un commit e un nome.
Uno dipendenza, nessun SDK di provider
digline installa jsonschema e nient’altro di proprio. Nessun server, nessuna telemetria, niente in hosting. In CI l’exit code è tutta l’interfaccia.
Provider
Un plugin per ciascuno, installato solo se lo usi.
- Anthropicdigline-anthropic
- OpenAIdigline-openai e qualsiasi endpoint compatibile con OpenAI
- Amazon Bedrockdigline-bedrock
Esempi svolti
Un’applicazione reale su ciascun framework, con la sua suite.
Altri modi per eseguirlo
In un container, o per un agente.
Comandi
Dodici comandi, un compito ciascuno.
Ogni comando ha la sua pagina o un posto nella guida.
- Registra e approva
- Confronta
- Storico
- Manutenzione
-
digline runexecute the suite and write a run -
digline promotemake a run the baseline -
digline comparecompare a run with the baseline -
digline diffreport what differs between two runs; judges neither -
digline explainread a run back at length; compares if there is a baseline -
digline reportrender the report -
digline listlist stored runs, newest first -
digline logwhich model answered, read down the stored runs; never a gate -
digline registerrecord a person's disposition about a comparison; commit the line -
digline viewbrowse stored runs, compare any two, promote -
digline rejudgejudge a stored run's recorded answers again, declaring the source -
digline migratebring stored runs and the baseline up to the current schema
Check
Prima il deterministico, il giudice per ultimo.
22 check oggi, in cinque tipi. L’elenco cresce; i tipi restano.
-
Deterministici12
Nessun modello coinvolto. Stesso output, stesso verdetto.
-
Giudicati2
Un secondo modello assegna un punteggio alla risposta, e il suo rumore viene misurato.
-
Budget2
Un tetto al costo o alla latenza, con punteggio graduale anziché passa/non passa.
-
Aggregati4
Un solo verdetto su tutto il run.
-
Wrapper2
Assume la natura del check che avvolge.
Senza riferimento, e con uno
Lo stesso run di valutazione, letto in due modi.
Una riga del prompt è cambiata tra due run. A sinistra, i punteggi che ottieni senza un riferimento. A destra, ciò che digline stampa a confronto con quello approvato.
Il nuovo run da solo nessun riferimento
case llm_rubric containshow-do-i-return 0.40 0.00is-it-waterproof 0.40 0.00where-is-my-order 0.40 0.00Ieri erano 1.00? È cambiato qualcosa?Qui nulla lo dice.
digline compare a confronto con il riferimento
6 checks got worse compared with the reference. Every case could be judged. No case is suspended. The suite is unchanged from the reference. 1 file under test changed since the reference. prompt.md · +1 −1 lineshow-do-i-return · llm_rubric · Went from passing to failing (1.000000 → 0.400000).how-do-i-return · contains · Went from passing to failing (1.000000 → 0.000000).… 4 altre righeexit 1
Entrambe le colonne vengono dallo stesso run catturato, digline 0.15.0. Quella di sinistra mostra solo i punteggi nuovi; quella di destra è l’output del confronto, abbreviato dove indicato.
Provalo
Il quickstart funziona senza chiave API.
Serve Python 3.12 o successiva. La chiamata al modello nella guida è preregistrata, così puoi vedere l’intero ciclo prima di collegare un provider reale.
digline runEsegue la suite e scrive un file di run.
digline promoteUna persona approva quel run come riferimento.
digline compareOgni run successivo viene verificato rispetto a quello.
$ pip install digline==0.15.0
$ digline run --suite support.py
2026-09-17T13-40-13-029556-00-00-282b0c02d6511fb4
$ digline promote --suite support.py --run latest
support baseline set to 2026-09-17T13-40-13-029556-00-00-282b0c02d6511fb4
$ digline compare --suite support.py --run latest
Nothing got worse compared with the reference. Every case could be judged. No case is suspended. The suite is unchanged from the reference.
Output catturato da digline 0.15.0, run 2026-09-17T13-40-13-029556…. Guida completa
In un flusso agentico
Dove si colloca il check quando le modifiche le fa un agente.
L’agente modifica, digline decide se la modifica può andare avanti.
Roadmap
Dove sta andando
Rilasciato — credibilità del verdetto: un calo è una regressione solo quando esce dall’intervallo che la baseline ha misurato sui propri campioni, e il lavoro aperto adesso è l’adozione.
Due cose non entreranno mai nella roadmap. Un servizio in hosting che riceve i tuoi payload — prompt, output e giudice restano nel tuo perimetro. E la raccolta di dati d’uso, mai.
Progetti pilota
Sviluppi funzionalità LLM per i clienti?
Cerco alcuni team pilota che usino digline su progetti reali — in particolare team che sviluppano e mantengono soluzioni di AI per conto terzi. In cambio ottieni supporto diretto e voce in capitolo su cosa verrà sviluppato dopo.
Inizia con una suite e un run approvato.
Per la guida non serve nessuna chiave.
pip install digline
perché un hash non bastava → vedilo sulla tua suite → cosa può e cosa non può fare un agente → in cosa si distingue dagli strumenti che conosci →