4 Punkte von GN⁺ 2024-05-15 | 2 Kommentare | Auf WhatsApp teilen
  • 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

Vergleichsbeiträge nach Modell

Open-Source-Dokumentation

  • Diese Website ist Open Source
  • Über den Link Improve this page kann die Seite auf GitHub bearbeitet werden

2 Kommentare

 
wedding 2024-05-18

Der technische Fortschritt ist wirklich enorm.. :(

 
GN⁺ 2024-05-15
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.

    • Es wurde getestet, ob LLMs die Fragen nicht beantworten können, wenn man ihnen die Limericks nicht gibt. Abgesehen von 4o schneiden sie in diesem Benchmark sehr schlecht ab, daher glaube ich nicht, dass der Test durch eine mögliche Aufnahme in die Trainingsdaten ungültig wird.
    • Könnte man nicht einfach vollständig zufälligen Text erzeugen und sie darin suchen lassen?
    • NIAN ist eine ziemlich coole Idee, aber könnte man die Fragen nicht einfach in N verschiedene Sprachen übersetzen? Man könnte auch DeepL, Google Translate, Übersetzungen durch das LLM selbst usw. mischen.
  • 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-f geprü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.

    • Ähnlicher Eindruck. Ich ließ es in einer Liste mit 6.000 Einträgen Duplikate finden, und es halluzinierte die gesamte Antwort mehrfach fast komplett. Manchmal findet es zwar einige Duplikate, mischt dazwischen aber halluzinierte Einträge hinein.
      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.
    • Das ist keine Nadel im Heuhaufen.
      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.
    • Das ist ein anderer Test als needle-in-a-needlestack, zeigt aber gut, wie fragil die Modelle sind. In manchen Bereichen sind sie kompetent, in anderen katastrophal schlecht.
      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.
    • Ich habe dasselbe Experiment mit lokalen Vorschriften gemacht und GPT dabei erwischt, wie es Bußgelder und Gebühren halluzinierte. Das ist ein reales Problem.
    • Interessant, denn zumindest offiziell beträgt das Kontextfenster von GPT-4o 128k.
  • 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

    Obwohl in den grundlegenden Needle-in-a-haystack-Tests (NIAH) nahezu perfekte Leistungen erzielt werden, zeigen alle Modelle (außer Gemini-1.5-pro) bei RULER-Aufgaben mit zunehmender Sequenzlänge einen deutlichen Leistungsabfall.
    Obwohl alle Modelle Kontextgrößen von mehr als 32k Tokens angeben (außer Llama3), kann nur die Hälfte eine Sequenzlänge von 32K effektiv verarbeiten und übertrifft dabei die qualitative Referenzleistung von Llama2-7b bei 4K (85,6 %). Leistungen oberhalb der Referenz sind unterstrichen.

    • Das mag sein, aber erstens geht es in diesem Artikel nicht um NIHS, sondern um eine eigene Variante des Tests, also könnte er relevanter sein. Zweitens lautet die zentrale Aussage des Artikels, dass GPT-4o besser abschneidet, und der von dir genannte Test hat GPT-4o nicht gebenchmarkt.
    • Die von RULER gebenchmarkten Modelle schneiden bei needle-in-a-needlestack schlechter ab. Ich bin gespannt, wie 4o bei RULER abschneiden würde.
  • 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.

    • Mehrere Leute in unserem Labor untersuchen Long-Context-Evaluationen von LLMs für literarische Werke. Moby Dick ist sehr wahrscheinlich in den Trainingsdaten enthalten. Deshalb haben die Leute im Labor nach kürzlich veröffentlichten Büchern gesucht, um dieses Problem zu vermeiden.
      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).
    • Ist das Material nicht vermutlich im Trainingsset? Interessant wäre, dasselbe mit einer Sammlung von Büchern zu machen, die neuer sind als das letzte Release des Modells.
    • Ich habe die 2.500 im Artikel verlinkten Beispiele in Gemini 1.5 Flash eingegeben, und es hat die richtige Antwort „The tree has diseased leaves and its bark is peeling.“ getroffen: https://aistudio.google.com/.
    • Ich habe Zugriff auf dieses Modell und schon beeindruckende Kontextextraktion gesehen. Ich habe eine große Codebasis komplett hineingepackt, und auch die Zusammenfassung war sehr gut.
      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.
    • In 2 bis 5 Jahren kann man dann wohl ein ePub eingeben und innerhalb weniger Minuten eine korrekte Graphic-Novel-Version bekommen. Ich bin bereit für 4.000 Tolkien-artige Baumbilder.
  • 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.

    • Eine ausgefeilte Agatha-Christie-artige Tätersuche könnte funktionieren: mehrere Wendungen und Alibis einbauen und das Ende des Werks abschneiden, sodass sich der wahrscheinlichste Verdächtige ändert.
    • Auch möglich wäre, dass die Nadeln einen Graphen bilden und der Prompt nach graphbasierten Aufgaben fragt.
    • Eine Idee wäre, einen unveröffentlichten Roman oder ein Drehbuch mit detaillierter, intern konsistenter Welt und Figuren mit gut ausgearbeiteten Motiven zu kaufen und das Modell ab einem zufälligen Punkt nach der Mitte eine neue Handlung weiterschreiben zu lassen, die zwei Figuren verbindet, die sich noch nicht begegnet sind.
      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.
    • Ich hatte einen ähnlichen Gedanken. Ein Teil der Frage sollte dem LLM genug Informationen geben, um den Limerick zu finden, und der zweite Teil fragt dann etwas, das ein tieferes Verständnis dieses Limericks oder eines anderen Textes erfordert.
    • So etwas geht nicht, weil Verständnis nicht existiert.
      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.

    • Zustimmung. Ich habe eine Zeit lang für Claude bezahlt. Es wirbt stark mit großem Kontext und frisst bei dessen Nutzung Unmengen an Tokens, war aber fast nutzlos, wenn es um Quellcode ging, der nur ein paar Seiten zuvor im Kontext stand.
      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.

    • Immerhin sind wir endlich über die LLM-Evaluationen hinaus, die 2022–2023 alle gemacht haben, à la „Wer war der 29. Präsident der USA?“ oder „Male es im Stil von Van Gogh“.
  • Damit dieser Test aussagekräftig ist, muss man wissen, dass die Testset-Daten nicht in den Trainingsdaten enthalten waren.

    • Wenn man die Limericks nicht vorher bereitstellt und dann fragt, wird es die richtige Antwort niemals treffen. Wenn das LLM falschliegt, greift es normalerweise auf die Trainingsdaten zurück und liefert eine allgemeine Antwort, die nicht zum Limerick passt.
    • Das muss nicht unbedingt sein. Man kann einfach die Modellleistung vor und nach dem Hochladen des Materials vergleichen.
    • Ich dachte, die Test-Limericks seien automatisch generiert worden.
  • 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.

    • Das war bisher auch meine Erfahrung. Meine aktuellen Gespräche sind absurd viel länger als frühere GPT-4-Gespräche. Früher musste ich den Kontext häufig kopieren und in einem neuen Chat wieder anfangen.
    • Ich habe dasselbe erlebt. Bei 16k-Prompts war Turbo fast perfekt, bei 32k aber eher schlecht und bei 100k+ unbrauchbar. Um bei langen Prompts gute Ergebnisse zu bekommen, muss man Informationen wiederholt einfügen.