GPT-4os Speicher-Durchbruch – die Nadel im Nadelstapel
(nian.llmonpy.ai)- needle-in-a-needlestack ist eine öffentliche Seite, die Experimente und Code zu GPT-4o, Llama, Jamba, Sonnet und Gemini an einem Ort sammelt
- Zusammen mit dem Projekt wird auch das Code-Repository bereitgestellt, sodass sich die Materialien zu den Needle-in-a-Needlestack-Experimenten direkt prüfen lassen
- Die Beiträge zu den einzelnen Modellen vergleichen Ergebnisse wie bei Llama 3.1 8B und Jamba 1.5 mit Fokus auf Verarbeitung langer Kontexte und Unterschiede bei der Skalierbarkeit
- GPT-4o-mini wird als Beispiel vorgestellt, das GPT-4 Turbo ähnelt, aber 98,5 % günstiger ist; Sonnet 3.5 wird als Fall beschrieben, in dem es bei NIAN besser abschneidet als Sonnet 3.0
- Die Seite selbst ist Open Source, und über den GitHub-Link „Improve this page“ kann man an der Bearbeitung der Dokumentation mitwirken
Links zu Needle in a Needlestack
- Needle in a Needlestack Code: Code-Repository für Needle in a Needlestack
- GPT-4o’s Memory Breakthrough!: Ein Beitrag über den Speicher-Durchbruch von GPT-4o
- GPT4o-mini comparable to GPT-4 Turbo, for 98.5% lower price: Ein Beitrag darüber, dass GPT-4o-mini mit GPT-4 Turbo vergleichbar ist, bei 98,5 % niedrigeren Kosten
Vergleichsbeiträge nach Modell
- Llama 3.1 8B: Excels in 8K Contexts, Challenged by Expansion: Llama 3.1 8B ist in 8K-Kontexten stark, hat aber Schwierigkeiten bei der Erweiterung
- Jamba 1.5: New model with new architecture crushes Needle-in-a-Needlestack: Jamba 1.5 übertrifft mit neuer Architektur Needle-in-a-Needlestack deutlich
- Sonnet 3.5 Does Much Better at NIAN Than 3.0: Sonnet 3.5 schneidet bei NIAN deutlich besser ab als Sonnet 3.0
- Gemini 1.5 Flash Outperforms Much More Expensive Models: Gemini 1.5 Flash übertrifft deutlich teurere Modelle
Open-Source-Dokumentation
- Diese Website ist Open Source
- Über den Link Improve this page kann die Seite auf GitHub bearbeitet werden
2 Kommentare
Der technische Fortschritt ist wirklich enorm.. :(
Meinungen auf Hacker News
Dieser Test basiert auf dem 2021 veröffentlichten Limerick-Datensatz: https://zenodo.org/records/5722527
Ich halte es für sehr wahrscheinlich, dass GPT-4o mit diesen Daten trainiert wurde. Es gibt schließlich keinen Grund, sie absichtlich wegzulassen. Ich frage mich, warum das NIAN-Team nicht mehrere Modelle Limericks erzeugen lässt und dann prüft, ob die Ergebnisse nicht im Datensatz enthalten sind. So ließe sich ausschließen, dass die Modelle mit diesen Limericks trainiert wurden.
Ich habe zwei kleine juristische Dokumente verglichen, und es halluzinierte vollständig, dass es in einem eine Klausel gebe, die im anderen fehle. Das passierte in drei verschiedenen Abschnitten des Vertrags.
Mit
ctrl-fgeprüft: Die Klausel stand in beiden identisch drin. Das ist nur eine Stichprobe, aber 90 % wirken für mich nicht plausibel. Insgesamt waren es ungefähr 80.000 Tokens.Ich hatte keine korrekte Antwort erwartet, weil ich das für eine schwierige Aufgabe mit einer festen Zahl von Attention Heads halte, aber es wirkte deutlich schlechter als Claude Opus oder GPT-4.
LLMs sind bei dieser Aufgabe besser, wenn man die beiden Dokumente in kleinere Abschnitte aufteilt und sie abschnittsweise wiederholt verarbeiten lässt. Sie haben keine Schlussfolgerungsfähigkeit oder Erinnerung, um zwei Textblöcke jenseits relativ kleiner Stücke strukturiert zu analysieren. Wenn man sie stattdessen schrittweise durch kleinere, semantisch unabhängige und relevante Teile gehen lässt, funktioniert das ziemlich gut.
Es ist falsch, sie als magische Maschinen zu betrachten. Sie haben Grenzen und Fähigkeiten, und wie bei anderen Werkzeugen muss man verstehen, was geht und was nicht — und idealerweise auch warum. Für 99,9 % der Entwickler ist das immer noch eine ziemlich neue Entwicklung; ich weiß nicht, warum die Erwartungen praktisch unendlich hoch sind. Bei früheren Technologien war der Maßstab eher vernünftig im Sinne von: „Okay, finden wir heraus, wie man das richtig nutzt.“ Vielleicht liegt es daran, dass sie wie Menschen sprechen und dadurch Fähigkeiten suggerieren, die sie nicht haben; oder daran, dass sie so menschlich klingen, dass man ihnen vorwirft, keine Menschen zu sein. Es gibt Hype und zugleich Unterschätzung. Selbst XML hat einmal einen ähnlichen Hype-Zyklus durchlaufen, als würde es den Welthunger beenden.
Needle-in-a-needlestack ist, anders als Needle-in-a-haystack, bei dem man unter verschiedenen Dingen sucht, das Problem, bestimmte Daten unter ähnlichen Daten zu finden. Zum Beispiel einen bestimmten Limerick unter Tausenden von Limericks.
Needle-in-a-haystack-Tests zeigen nur sehr begrenzt, wie gut ein Modell tatsächlich mit langen Kontexten umgehen kann. Sie werden vor allem genutzt, weil frühe Modelle bei dieser Aufgabe furchtbar schlecht waren und sie leicht zu testen ist.
Tatsächlich sind die meisten aktuellen Modelle bei genau dieser einen Aufgabe ziemlich gut, aber ihre Fähigkeit, jenseits von 32K Tokens komplexe Aufgaben zu erledigen, fällt in der Praxis stark ab. RULER ist ein deutlich besserer Test: https://github.com/hsiehjackson/RULER
Ich würde das gern auch mit Gemini Pro 1.5 sehen. Letzte Woche habe ich den gesamten Moby Dick hineingepackt, und einmal auch alle Bücher von Byung Chul-Han. In beiden Fällen fand es jedes Mal exakt die Satzteile, die meine Frage erwähnten oder beantworteten, und es gab keine Halluzinationen.
Siehe BooookScore (https://openreview.net/forum?id=7Ttk3RzDeu), vorgestellt letzte Woche auf der ICLR, sowie den aktuellen Preprint FABLES (https://arxiv.org/abs/2404.01261).
Ich habe auch gesehen, wie jemand eine riesige Logdatei analysiert hat, aber um zu erkennen, ab wann das Modell etwas übersieht, braucht man wirklich so etwas wie Needle-in-a-Needlestack. Zumindest können Modellentwickler es nutzen, um vorgeschlagene Modelle zu analysieren.
Jemand sollte einen „Synthese im Haystack“-Test bauen, der nicht nur Suche testet, sondern Verständnistiefe, Verknüpfungen und Abstraktion zwischen verschiedenen Informationen.
Wenn ein Mensch ein Buch liest, entwickelt er eine „Gesamtintuition“ dafür. Wir brauchen eine Methode, das zu quantifizieren. Der Needle-in-a-Haystack-Test wirkt zu simpel und geht nicht weit genug.
Wenn es den Kontext versteht, sollte es neue Teile der Geschichte schreiben können und dabei die von Lesern intuitiv wahrgenommenen Figurenmotive nutzen, um ihre Erzählstränge weiterzuentwickeln. Damit das nützlich ist, müsste man das Ganze allerdings strikt geheim halten, weshalb es eher nur als privater Benchmark taugt. Oder man könnte es wie einen angesehenen Preis aufziehen, der nach der Glaubwürdigkeit seiner Schlussfolgerungen bewertet wird, statt die Methodik offenzulegen, um das Feld zu verbessern.
Auch GPT-4o kann noch nicht mit der Schnittmenge zweier verschiedener Ideen umgehen, die nicht im Trainingsset vorkommen. Es kann nicht einmal zufällige Varianten einer Schnittmenge zweier verschiedener Ideen erzeugen. Darüber hinaus sollte man nicht erwarten, dass Modelle so etwas tun. Das wäre den Modellen, ihrem tatsächlichen Nutzen und den erstaunlichen Dingen, die sie auch ohne Verständnis leisten, gegenüber unfair. Zu glauben, dass ein Modell versteht, heißt, sich selbst zu täuschen.
Jetzt kann man GPT verwenden, um rohe dynamische Daten direkt in ein ansprechendes HTML-Layout umzuwandeln. Bei Seiten mit wenig Traffic, etwa Änderungsprotokollen oder Audit-Logs, kann das Entwicklungszeit stark reduzieren und das HTML aktuell halten, auch wenn sich die Datenstruktur ändert.
Frühere Versuche funktionierten nicht konsistent, weil GPT-4-Turbo gelegentlich Kontext und Anweisungen fast vollständig ignorierte.
Dieser Artikel zeigt, wie viel besser GPT-4o im Vergleich zu GPT-4 Turbo und Claude-3 Sonnet darin geworden ist, über das gesamte Eingabefenster hinweg aufmerksam zu bleiben.
Ein Upgrade für Needle-in-a-Haystack war schon länger nötig, und dieses „Needle In A Needlestack“ ist ein guter nächster Schritt. NIAN erstellt Prompts mit Tausenden von Limericks und stellt Fragen zu einem Limerick an einer bestimmten Position.
Das war umso frustrierender, weil sonst alles in Ordnung war und mir der Stil gefiel. Letzte Nacht habe ich 4o ausprobiert, und es erkannte eine C++-Klasse, die ich 20 Fragen zuvor eingefügt hatte, immer noch perfekt. Mir ist egal, ob es klug ist; wichtig ist, ob es nützlich ist, und das trägt enorm zur Nützlichkeit bei.
Ich bin immer mehr überzeugt, dass im öffentlichen Internet offenbar niemand weiß, wie man vernünftige LLM-Evaluationen durchführt.
Damit dieser Test aussagekräftig ist, muss man wissen, dass die Testset-Daten nicht in den Trainingsdaten enthalten waren.
Klingt gut. Das größte Problem bei GPT-4.0 war, dass die Qualität mit längeren Gesprächen nachließ, besonders bei Coding-Projekten.
Ich frage mich, ob das jetzt besser geworden ist. Ich werde es heute testen.