Needle In A Haystack (NIAH)
Il test dell'ago nel pagliaio (NIAH) verifica se un LLM riesce a trovare un fatto nascosto a qualsiasi profondità in un contesto lungo. Panoramica delle origini, dei risultati, delle varianti e dei limiti.
Needle in a haystack (NIAH) è una valutazione che nasconde un singolo fatto, l'ago, a una profondità scelta in un lungo testo irrilevante, il pagliaio, e chiede a un modello linguistico di grandi dimensioni (LLM) di recuperarlo. Ripetere il test con diverse lunghezze di contesto e posizioni dell'ago produce una mappa di calore che mostra in quale punto della finestra di contesto un modello smette di trovare informazioni. Nel novembre 2023 Greg Kamradt introdusse il test con un repository NIAH open source: nascose la frase «La cosa migliore da fare a San Francisco è mangiare un panino e sedersi a Dolores Park in una giornata di sole» in una raccolta di saggi di Paul Graham e chiese a ogni modello quale fosse la cosa migliore da fare a San Francisco. I primi test provarono GPT-4 Turbo di OpenAI, con una finestra di 128K token, e Claude 2.1 di Anthropic, con 200K.
Come funziona il test#
Il pagliaio viene ridotto alla lunghezza obiettivo in token, l'ago viene inserito a una frazione di tale lunghezza, dallo 0% all'inizio al 100% alla fine, e la risposta del modello viene valutata rispetto all'ago. Un test completo esplora entrambi gli assi:
L'ago non ha nulla a che vedere con i saggi circostanti, quindi il test isola una capacità del meccanismo di attenzione: individuare e copiare un passaggio specifico in qualsiasi punto di un prompt lungo.
Risultati principali#
Le prime mappe di calore di Kamradt mostravano che GPT-4 Turbo non trovava l'ago oltre circa 73K token, soprattutto quando si trovava a una profondità compresa tra circa il 7% e il 50%, vicino alle difficoltà a metà prompt misurate nello stesso anno dallo studio Lost in the Middle. Claude 2.1 ottenne il 27% con il prompt originale; Anthropic portò il risultato al 98% modificando il prompt engineering e iniziando la risposta di Claude con «Ecco la frase più pertinente nel contesto:». NIAH è diventato un grafico standard nei lanci dei modelli. Il report di Gemini 1.5 di Google dichiarava un recupero superiore al 99% fino ad almeno 10 milioni di token ed estendeva il test a pagliai audio e video; Anthropic ha riferito che Claude 3 Opus superava il 99% di richiamo e a volte osservava che l'ago sembrava inserito artificialmente nel testo.
Varianti e limiti#
Il NIAH semplice è simile a una ricerca lessicale, perché la domanda condivide le parole chiave con l'ago, e oggi i modelli all'avanguardia lo superano senza difficoltà. Le varianti più difficili cambiano ciò che l'ago richiede:
- Recupero della passkey: un numero casuale nascosto in un testo riempitivo ripetuto, usato nel 2023 per testare Landmark Attention prima che esistesse NIAH.
- Più aghi e aggregazione: il benchmark RULER di NVIDIA nasconde diverse chiavi e valori, aggiunge il tracciamento di valori variabili e l'aggregazione di parole comuni; ha rilevato che solo la metà dei 17 modelli che dichiaravano una finestra di almeno 32K token otteneva risultati soddisfacenti a 32K.
- Nessuna corrispondenza letterale: NoLiMa formula ogni domanda in modo che si sovrapponga appena all'ago. A 32K token, 11 modelli su 13 sono scesi sotto la metà dei punteggi ottenuti con contesti brevi.
Il calo di accuratezza che questi test più difficili rivelano al crescere degli input si chiama degrado del contesto. NIAH differisce anche dalla generazione aumentata dal recupero (RAG), in cui una ricerca vettoriale esterna seleziona i passaggi prima che il modello li legga, e dal rilevamento delle anomalie, che cerca deviazioni sconosciute anziché un obiettivo noto.
Aghi nelle immagini#
La visione artificiale usa la stessa espressione per il rilevamento di oggetti di piccole dimensioni: una persona nelle immagini aeree, una nave in una scena satellitare o una cellula tumorale in una scansione dell'intero vetrino istologico per l'analisi di immagini mediche. L'ostacolo è la risoluzione: Ultralytics YOLO26 ridimensiona per impostazione predefinita ogni immagine in modo che il lato più lungo misuri 640 pixel; così un fotogramma da drone di 4.000 pixel si riduce di oltre sei volte e un pedone largo 10 pixel finisce per essere largo meno di 2 pixel. L'inferenza a sezioni con SAHI esegue YOLO26 su sezioni sovrapposte, ad esempio tasselli da 256 × 256, alla risoluzione nativa e unisce i riquadri di delimitazione. Nei test descritti nell'articolo su SAHI sui dataset aerei VisDrone e xView, la suddivisione in sezioni ha prodotto un incremento dell'AP per il rilevamento di oggetti compreso tra il 5,1% e il 6,8% con tre rilevatori diversi.










