NoLiMA, das im Februar 2025 veröffentlicht wurde, ist eine Methode zur Bewertung des Verständnisses von langen Texten im Large Language Model (LLM). Im Gegensatz zum traditionellen Needle-in-a-Haystack (NIAH)-Test, der sich auf den Abgleich von Schlüsselwörtern stützt, sind seine wichtigsten Merkmale Das Finden von Antworten in langen Texten ist nur möglich, wenn man Fragen und Schlüsselbotschaften formuliert, die das Modell zwingen, ein tiefes semantisches Verständnis zu entwickeln und Schlussfolgerungen zu ziehen.
NoLiMa: https://arxiv.org/abs/2502.05167
Die Ergebnisse von NoLiMA zeigen ein wichtiges Problem auf: LLMs, die behaupten, Hunderttausende oder sogar Millionen von Token verarbeiten zu können, schneiden bei Aufgaben, die tatsächlich das Verstehen langer Texte erfordern, deutlich schlechter ab. Zum Beispiel ist die Leistung von 10 getesteten Modellen bei einer Länge von 32K Token nicht einmal halb so gut wie die von kurzen Texten (weniger als 1K Token); selbst das beste Modell, GPT-4o, fällt von einer nahezu perfekten Leistung von 99,3% auf 69,7%.
In Anlehnung an NoLiMA verwenden wir das Vektormodell jina-einbettungen-v3
Ähnliche Experimente wurden durchgeführt. Der Grund für die Untersuchung des Vektormodells ist, dass bei Retrieval Augmented Generation (RAG)-Systemen das Retrievalmodell (auch als Vektormodell bekannt) gut oder schlecht ist, was direkt die Effektivität des gesamten Systems bestimmt.
Unsere Forschung konzentriert sich auf zwei zentrale Fragen:
- Können Vektormodelle "One-Hop Reasoning" in langen Texten durchführen? Bei herkömmlichen NIAH-Tests stimmen die Fragen und Antworten in der Regel direkt überein (z. B. "In welchem Jahr reiste John nach Paris?" und "John war 2019 in Paris"). Im Gegensatz zum "Pin", den wir entwickelt haben, muss das Modell semantische Schlussfolgerungen ziehen (z. B. lautet die Frage "Welche Figur war in Frankreich?"). Die "Stecknadel" lautet "Yuki wohnt neben der Semperoper", und das Modell muss wissen, dass die Semperoper in Deutschland liegt).
- Können Abfrageerweiterungen die Suche nach langen Texten verbessern? Die Abfrageerweiterung besteht darin, der Abfrage einige verwandte Wörter hinzuzufügen, um die Semantik reicher zu machen. Wir wollen sehen, ob dieser Ansatz die Unzulänglichkeiten von Vektormodellen im Umgang mit langen Texten ausgleichen kann.
Traditioneller NIAH-Test (erlaubt die Suche nach Schlüsselwörtern) vs. NOLIMA-Test (erfordert semantisches Denken)
Experimentelle Ergebnisse mit LLMs haben gezeigt, dass sie sich zu sehr auf den oberflächlichen Textabgleich und zu wenig auf tiefergehende Schlussfolgerungen verlassen. Wir fragen uns, ob dies auch für Vektormodelle zutrifft. Dies könnte uns Aufschluss darüber geben, was bei den derzeitigen semantischen Suchtechniken noch fehlt.
Aufbau von Schlüsselbotschaften und Kontext
Aufbau von Schlüsselinformationen
Bei traditionellen "Nadel im Heuhaufen"-Tests sind die Schlüsselbotschaften ("Nadeln") in der Regel ähnlich formuliert wie die Fragen, nach denen gesucht wird. Zum Beispiel:
- FRAGE: "Welche Figur war schon einmal in Dresden?"
- Kernaussage: "Yuki lebt in Dresden."
Aber das NoLiMa-Papier tut das nicht, und das wollen wir auch nicht. Was wir untersuchen wollen, ist das Verständnis des Modells für die Semantik, nicht nur die Übereinstimmung mit Schlüsselwörtern. Also haben wir eine Variante von "single-hop" entworfen ("single-hop" bedeutet, dass die Antwort und die Frage durch eine kleine Inferenz verbunden sein müssen) und absichtlich einige Wörter verwendet, die nicht im Text vorkommen, und auch invertierte Sätze verwendet.
- FRAGE: "Welche Figur war schon einmal in Dresden?"
- SCHLÜSSELINFORMATIONEN (DEFAULT): "Yuki wohnt in der Tat neben der Semperoper".
- Kernaussage (invertiert): "Die Semperoper liegt in der Nähe von Yukis Wohnung."
In Anlehnung an die Methodik des Papiers haben wir mehrere Kategorien von "Frage-Schlüsselnachricht"-Gruppen erstellt (die jeweils eine Frage, eine "One-Hop"-Schlüsselnachricht und eine Version der "One-Hop"-Schlüsselnachricht in umgekehrter Form enthalten). Die Gruppen enthalten jeweils eine Frage, eine "single-hop"-Schlüsselnachricht und eine Version mit der "single-hop"-Schlüsselnachricht invertiert).
Beispiele sind unten aufgeführt:
Formular | Ausgaben | Original-Schlüsselinformationen (nur zur Information) | Schlüsselnachrichten für Einzelsprünge | Umgekehrte Auswahl von Schlüsselinformationen |
---|---|---|---|---|
Diätetische Einschränkungen | Welche Figur kann kein Fischfutter essen? | Alice kann keinen Fisch essen. | Alice erwähnt dann, dass sie schon seit vielen Jahren Vegetarierin ist. | Eine vegetarische Ernährung ist für Alice schon seit vielen Jahren wichtig. |
medizinischer Zustand | Welche Figur kann keine Milch trinken? | Bob kann keine Milch trinken. | Bob erklärt, dass er eine Laktoseintoleranz hat. | Laktoseintoleranz betrifft Bob jeden Tag. |
verbale Kompetenz | Welche Figur spricht Französisch? | Charlie spricht Französisch. | Charlie hat sogar an der Sorbonne studiert. | Charlie hat sein Studium an der Sorbonne abgeschlossen. |
Beruflicher Hintergrund | Welche Figur ist der Musiker? | Diane ist eine Musikerin. | Diane dirigierte 2013 im Opernhaus von Sydney. | Die Aufführung im Sydney Opera House wurde von Diane geleitet. |
💡 Die oben genannten Namen sind nur Beispiele. Im eigentlichen "Pin" werden die Namen zufällig aus einer Liste von Namen aus verschiedenen Kulturen ausgewählt.
Die "Original-Schlüsselinformationen" (d. h. die wörtlich übereinstimmende Version) in der Tabelle dienen nur der Übersichtlichkeit und werden in unseren Experimenten nicht verwendet.
Kontextualisierung
Wir haben zehn öffentliche Bücher mit jeweils mindestens 50.000 Token vorbereitet und aus jedem Buch einige kurze Fragmente nach dem Zufallsprinzip ausgewählt (jedes Fragment hat nicht mehr als 250 Token) und diese Fragmente dann zu "Kontexten" unterschiedlicher Länge zusammengefügt, die jeweils 128, 256, 512, 1024, 2048, 4096 und 8192 Token lang sind. Diese Fragmente werden dann zusammengefügt, um "Kontexte" unterschiedlicher Länge zu bilden: 128, 256, 512, 1024, 2048, 4096 bzw. 8192 Wörter. Dann wird eine Schlüsselnachricht in jeden Kontext eingefügt:
Kontext mit kurzen Clips und Schlüsselbotschaften aus dem Buch herstellen
Genauer gesagt, nehmen wir die Schlüsselbotschaft "Yuki wohnt in der Tat neben der Semperoper" und setzen sie in das 50:
Beispiel einer Nadel im Heuhaufen
Wir verwenden jina-einbettungen-v3
Das Modell wird verwendet, um den Text zu vektorisieren, und dann werden die Ähnlichkeitswerte des Textes "Schlüsselinformationen" und des Textes "Kontext" berechnet:
Frage-Haystack-Ähnlichkeit = 0,2391
Um diesen Ähnlichkeitswert sinnvoll nutzen zu können, müssen wir einen weiteren Schritt der "Normalisierung" vornehmen. Dazu wird zunächst der Ähnlichkeitswert zwischen der Frage und der Standard-Schlüsselnachricht berechnet (d. h. kein Kontext, direkter Vergleich). Dann wird der vorherige "Schlüsselnachricht-Kontext"-Ähnlichkeitswert durch den "Frage-Schlüsselnachricht"-Ähnlichkeitswert geteilt:
Ähnlichkeit zwischen Frage und Nadel = 0,3598
Normalisierte Frage-Haystack-Ähnlichkeit = 0,2391 / 0,3598 = 0,6644
Warum normalisieren? Weil die berechneten Ähnlichkeitswerte für verschiedene Vektormodelle unterschiedlich sein können. Und.jina-einbettungen-v3
Die Modelle unterschätzen in der Regel die Ähnlichkeit zwischen zwei Texten.
Für jede Schlüsselnachricht (sowohl die Standard- als auch die Flip-Flop-Version) haben wir 10 unterschiedlich lange Kontexte erzeugt, in denen die Schlüsselnachricht jeweils an einer anderen Stelle erscheint. Für dieselbe Schlüsselnachricht und dieselbe Kontextlänge sehen diese 10 Kontexte wie folgt aus:
Platzierung von Schlüsselinformationen in regelmäßigen Abständen in zehn Kontexten
Zur Kontrolle haben wir außerdem für jede Testbedingung (unterschiedliche Kontextlänge) einen Kontext erzeugt, der keine Schlüsselinformationen enthielt. Damit haben wir insgesamt 3234 generierte Kontexte.
Schließlich verwenden wirjina-einbettungen-v3
Modell (unter Verwendung des Standard-Text-Matching-LoRA) kodiert jeden Kontext. Wenn die Gesamtzahl der lexikalischen Elemente eines Kontexts 8192 übersteigt (dies ist die Obergrenze des jina-embeddings-v3-Modells), schneiden wir den Überschuss ab und kodieren auch die entsprechende pro-Frage.
Bewertung der Indikatoren
Wir haben einen Bewertungsrahmen mit mehreren verschiedenen Metriken entwickelt, um die Leistung von Vektormodellen bei unterschiedlichen Kontextlängen zu messen:
Wichtigste Indikatoren
1. normalisierte Ähnlichkeitswerte
Dies ist die zentrale Metrik. Sie betrachtet nicht nur die semantische Ähnlichkeit zwischen der Frage und dem gesamten Kontext, sondern vergleicht auch die Frage und die Schlüsselinformationen separat. Dies gibt uns eine Vorstellung davon, wie gut das Modell in einem Kontext abschneidet, der Schlüsselinformationen enthält, im Vergleich zu einer idealen Situation (in der Fragen und Schlüsselinformationen direkt verglichen werden).
Die spezifische Berechnungsmethode lautet: Zunächst wird der Cosinus-Ähnlichkeitswert zwischen der Frage und der entsprechenden Schlüsselinformation als Benchmark berechnet; dann wird die "Frage-Kontext-Ähnlichkeit" durch diesen Benchmark geteilt, um den normalisierten Ähnlichkeitswert zu erhalten.
2. wie viel besser als eine zufällige Schätzung
Bei Vektormodellen ist es nur sinnvoll, die Ähnlichkeit der gleichen Frage mit verschiedenen Texten zu vergleichen. Zusätzlich zum normalisierten Ähnlichkeitswert müssen wir also sehen, ob die Frage dem gesamten Kontext wirklich ähnlicher ist als einem zufälligen Textabschnitt gleicher Länge, aber ohne Schlüsselinformationen. Mit anderen Worten, wir wollen sehen, ob die Antwort, die das Modell findet, wirklich genauer ist als eine blinde Vermutung.
Sekundäre Indikatoren
1. eine differenzierte Kompetenzanalyse
Diese Metrik prüft die Fähigkeit des Modells, wichtige Informationen von anderen irrelevanten Inhalten zu unterscheiden. Dabei gibt es zwei spezifische Aspekte:
- Durchschnittliche TrennungWie groß ist der Unterschied zwischen Passagen, die Antworten enthalten ("positive Beispiele") und Passagen, die keine Antworten enthalten ("negative Beispiele").
- AUC-Wert (Fläche unter der Kurve)Die Fähigkeit des Modells, zwischen Schlüsselinformationen und anderen Inhalten zu unterscheiden, wird durch Berechnung der Fläche unter der ROC-Kurve (Subject Operating Characteristics Curve) gemessen.
2. positionelle Auswirkungen
Wir werden auch untersuchen, ob die Lage der Schlüsselinformationen im Kontext einen Einfluss darauf hat, wie leicht das Modell sie finden kann. Wir werden sie analysieren:
- Gibt es einen Zusammenhang (Korrelationskoeffizient) zwischen dem Ort der Schlüsselinformationen und der Ähnlichkeitsbewertung?
- Was passiert mit der Leistung des Modells (Regressionssteigung), wenn die Schlüsselinformationen an verschiedenen Stellen platziert werden?
- Gruppieren Sie die Schlüsselbotschaften nach Orten und sehen Sie, wie sich verschiedene Gruppen unterschiedlich verhalten.
Studie zeigt
Ähnlichkeitswerte und Genauigkeit nehmen mit zunehmender Länge des Textes ab.
Die experimentellen Ergebnisse sind eindeutig: Je länger der Textkontext ist, desto schlechter schneidet das Modell ab.Der durchschnittliche Ähnlichkeitswert sinkt von 0,37 bei 128 Wörtern bis auf 0,10 bei 8.000 Wörtern, und dieser Rückgang verläuft nicht geradlinig, sondern besonders schnell zwischen 128 Wörtern und 1.000 Wörtern.
Normalisierungsleistung in Abhängigkeit von der Kontextlänge
Wir haben auch festgestellt, dassDie Umkehrung der Angabe von Schlüsselinformationen (Invertierung) hat kaum Auswirkungen auf das Modell, das sie findet. Ob es nun heißt: "Yuki wohnt in der Nähe der Semperoper" (die Standardaussage) oder "Die Semperoper liegt direkt neben dem Haus, in dem Yuki wohnt" (die umgekehrte Aussage), die Wahrscheinlichkeit, dass das Modell sie findet, ist fast die gleiche:
Vergleich der Modellleistung bei zwei Konten (Standardreihenfolge vs. umgekehrte Reihenfolge)
Allerdings.Die Art des Inhalts der Schlüsselinformationen hat Auswirkungen auf die Schwierigkeit der Modellfindung. Wenn es sich um Informationen über Orte und Sehenswürdigkeiten handelt, ist das Modell leichter zu finden; wenn es sich jedoch um Informationen über Ernährung und Gesundheitszustand handelt, ist das Modell schwieriger zu finden, und die Schwierigkeit nimmt mit zunehmender Länge des Textes schneller zu:
Beziehung zwischen der Schwierigkeit, verschiedene Arten von Informationen zu finden (Gruppierung) (normalisierte Leistung) und der Textlänge
Um zu sehen, ob das Modell wirklich besser ist als Raten, haben wir die Ergebnisse des Modells mit einem "Zufallsraten" verglichen. Eine "zufällige Vermutung" ist ein Textabschnitt, der genauso lang ist wie die Frage, aber keine Schlüsselinformationen enthält. Die Ergebnisse zeigten, dassJe länger der Kontext ist, desto näher liegen die Ergebnisse des Modells an einer blinden Vermutung, und die Auswahl eines nutzlosen Textstücks danach ist fast genauso gut.
Vergleich von Modellleistung und Zufallswahrscheinlichkeit (mit Wahrscheinlichkeit 0,5)
Wir gruppierten die Daten auch nach der Art des Inhalts der Schlüsselinformationen und untersuchten dann die Leistung des Modells. Die Ergebnisse waren ähnlich: Bei einigen Arten von Informationen (z. B. Ernährungseinschränkungen) war das Modell nicht viel besser als das Raten, selbst wenn der Text nicht zu lang war; bei anderen Arten von Informationen (z. B. Orte und Orientierungspunkte) schnitt das Modell gut ab, egal wie lang der Text war:
Wahrscheinlichkeit, dass das Modell eine Antwort findet, im Vergleich zum zufälligen Raten für verschiedene Arten von Informationsgruppierungen
Die Umkehrung der Aussage der Schlüsselinformation hat im Wesentlichen keinen Einfluss auf die Wahrscheinlichkeit, dass das Modell sie findet. Die nachstehende Abbildung zeigt, wie viel höher die Wahrscheinlichkeit ist, dass das Modell den Text findet, der die Schlüsselinformation korrekt enthält, als die Wahrscheinlichkeit, dass es zufällig rät. Betrachten wir die beiden Aussagen der Schlüsselinformation (Standard und invertiert) getrennt:
Standardreihenfolge vs. umgekehrte Reihenfolge: Wie viel wahrscheinlicher ist es, dass das Modell die Antwort findet als eine zufällige Schätzung?
Wie in der Abbildung zu sehen ist, ist der Trend der Modellleistung bei beiden Aussagen ähnlich. Daher werden wir später nicht zwischen den beiden Fällen unterscheiden.
Kann das Modell noch zwischen nützlichen und unnützen Informationen unterscheiden?
Eine unserer wichtigsten Erkenntnisse betraf die Fähigkeit von Vektormodellen, zwischen nützlichen und nutzlosen Informationen in Texten unterschiedlicher Länge zu unterscheiden. Wir haben eine "Trennungsanalyse" durchgeführt und festgestellt, dass die Fähigkeit des Modells, die richtige Antwort zu finden, zwischen 128 und 1000 Wortelementen besonders schnell abnimmt. Danach nimmt sie zwar immer noch ab, aber langsamer.
Verhältnis zwischen Trennung und Kontextlänge
Bei kurzen Texten (128 Wörter) unterscheidet das Modell deutlich zwischen nützlichen und unnützen Informationen.Der durchschnittliche Abstand betrug 0,1, mit einem AUC von 0,81 (d.h. die Passage, die die Antwort enthielt, wurde in 81 von 100 Fällen als erste eingestuft).
Mit zunehmender Länge des Textes nimmt die Leistung des Modells jedoch drastisch abuntergehenBei 1000 Wörtern fällt die Separation auf 0,04 (minus 60%) und der AUC auf 0,66, was bedeutet, dass das Modell nicht mehr in der Lage ist, zu unterscheiden. Bei 8000 Wörtern ist die Trennung fast Null (0,001) und der AUC liegt nahe bei 0,5 (vergleichbar mit zufälligem Raten), was bedeutet, dass das Modell nicht mehr in der Lage ist, nützliche Informationen auf der Grundlage von Ähnlichkeitsscores zu unterscheiden.
Auffällig ist, dass die Fähigkeit des Modells, nützliche Informationen zu erkennen, mit zunehmender Textlänge abnimmt.Während der rohe Ähnlichkeitswert von 128 auf 8000 Wörter um etwa 751 TP3T sank, sank die Trennungsmetrik um fast 991 TP3T und die Effektgröße sogar um 98,61 TP3T!Die Schwierigkeit der Vektormodelle im Umgang mit langen Texten liegt nicht nur in den geringeren Ähnlichkeitswerten, sondern auch in der stark verminderten Fähigkeit, zwischen nützlichen und unnützen Informationen zu unterscheiden, was viel mehr ist, als wir zuvor erwartet hatten.
Welchen Einfluss hat der Ort, an dem sich wichtige Informationen befinden, auf die Schwierigkeit, sie zu finden?
Im Allgemeinen ist es am einfachsten, wichtige Informationen zu finden, wenn sie am Anfang des Textes stehen. Es stimmt jedoch nicht unbedingt, dass sie in der Mitte des Textes schwieriger zu finden sind:
Die Auswirkung der Platzierung von Schlüsselinformationen an verschiedenen Stellen in Texten unterschiedlicher Länge auf deren Auffinden
Die Versuchsergebnisse bestätigen auch, dass die wichtigsten Informationen am leichtesten zu finden sind, wenn sie am Anfang stehen. Wenn der Text kurz ist, ist es auch einfacher, sie zu finden, wenn sie am Ende platziert sind. Unabhängig von der Länge des Textes ist es jedoch nicht so einfach, sie zu finden, wenn sie in der Mitte platziert ist:
Vergleichen Sie die Wahrscheinlichkeit, die Schlüsselinformationen zu finden, indem Sie sie an verschiedenen Orten platzieren.
Können Abfrageerweiterungen helfen?
Vor kurzem haben wir in einem Blog über die "Anfrageerweiterung" berichtet. Dies ist eine gängige Methode, die bei der Suche verwendet wird. Das bedeutet einfach, dass Sie, wenn Sie eine Frage stellen, relevante Wörter zu Ihrer Frage hinzufügen, um die Suchergebnisse genauer zu machen.
LLM-basierte Abfrageerweiterung: mehr Informationen, genauere Suche
Seit dem Aufkommen von Vektormodellen hat sich die Art und Weise, wie wir suchen, stark verändert. Ist eine Methode wie die "Abfrageerweiterung", die sich stark auf das Hinzufügen von Vokabeln stützt, im Zeitalter der KI noch sinnvoll? Wir denken ja.
In diesem Blog verwendeten wir das Large Model (LLM), um einige erweiterte Wörter zu generieren, und fügten diese Wörter dann dem Abfragevektor hinzu, was zu besseren Suchergebnissen führte. Jetzt möchten wir sehen, ob dies bei langen Textsuchaufgaben wie der "Suche nach der Nadel im Heuhaufen" hilft. Zum Beispiel, wenn Sie fragen:
Welche Figur war schon einmal in Dresden?
Erweitern wir es um ein großes Modell (Gemini 2.0), fügen wir 100 verwandte Wörter hinzu und es wird wahrscheinlich so aussehen:
Welche Figur war schon einmal in Dresden? Figur: fiktive Figur Literarische Figur Hauptfigur Schurkenfigur Rollenidentität Theaterfigur
Dresden: Dresden, Deutschland; Bombardierung Dresdens im Zweiten Weltkrieg Historische Belletristik Kurt Vonnegut Slaughterhouse-Five Sächsische Stadt Elbe Kulturelle Wahrzeichen
Been: besucht Been to Been to Erschien in Erschien in Charakterisiert als Schauplatz Happened in Schauplatz Hintergrund
Wie nützlich können Abfrageerweiterungen sein?
Wir haben ein Experiment durchgeführt, bei dem drei Sätze erweiterter Suchanfragen mit jeweils 100, 150 und 250 Wörtern hinzugefügt wurden (Einzelheiten dazu, wie man sie hinzufügt, finden Sie in diesem Artikel). Anschließend haben wir das vorherige Experiment noch dreimal durchgeführt, jedes Mal mit einem anderen Satz erweiterter Suchanfragen.
Es zeigt sich, dass unabhängig von der Anzahl der hinzugefügten Wörter, sobald der Text lang ist, die Leistung des Modells nachlässt, und zwar in etwa so, wie wenn keine Abfrageerweiterung verwendet wird:
Gesamtleistung des Modells für verschiedene Abfrageerweiterungsszenarien
Verglichen mit dem Problem ohne die Erweiterung ist es in allen Fällen, in denen Wörter hinzugefügt werden, dieselbe alte Geschichte:Je länger der Text, desto schlechter die Leistung. Außerdem ist dieser Rückgang immer noch ungleichmäßig und fällt am stärksten zwischen 128 Wörtern und 1K Wörtern ab:
Die Wahrscheinlichkeit, dass das Modell die richtige Antwort für verschiedene Szenarien der Anfrageerweiterung findet.
Dennoch! Ein genauerer Blick auf die "Comparison Ratio"-Metrik zeigt, dass die Abfrageerweiterung immer noch nützlich ist:Dies erleichtert dem Modell das Auffinden von Texten, die wichtige Informationen enthalten. Ohne Abfrageerweiterung schneidet das Modell etwa so gut ab wie eine zufällige Schätzung bei 8K lexikalischen Elementlängen.
Wie kann ich die Ergebnisse einer Abfrageerweiterung interpretieren?
Diese Ergebnisse stehen im Einklang mit der Arbeit von NoLiMa und unseren früheren Erkenntnissen über die Erweiterung von Suchanfragen. Sie können wie folgt interpretiert werden:
- Das Hinzufügen von Wörtern in Maßen funktioniert am bestenDie Auswirkung des Hinzufügens von 100 Wörtern ist besser als das Hinzufügen von 150 oder 250 Wörtern, was bedeutet, dass beim Erweitern der Abfrage bis zu einem gewissen Grad Wörter hinzugefügt werden und das Hinzufügen von zu vielen Wörtern semantisches Rauschen anstelle von Signalen mit sich bringt, was die Beurteilung des Modells beeinträchtigt. Beim Hinzufügen von 250 Wörtern ist es sehr wahrscheinlich, dass einige Begriffe mit geringer Relevanz für die Frage hinzugefügt werden, und diese Wörter sind in einem langen Text nicht hilfreich.
- Lange Texte bleiben eine zentrale HerausforderungSelbst bei einer Erweiterung der Abfrage sinkt die Leistung des Modells erheblich, sobald der Kontext lang ist. Die derzeitige aufmerksamkeitsbasierte Modellarchitektur hat einen grundlegenden Engpass, wenn es um lange Texte geht, ein Problem, das nicht einfach durch das Hinzufügen von ein paar Wörtern gelöst werden kann.
- Aufsuchende Sozialarbeit hat nach wie vor ihren WertObwohl die Herausforderung des langen Textes nicht vollständig gemeistert werden konnte, lag der Vergleichsquotient durchweg über 0,5, was darauf hindeutet, dass die Abfrageerweiterung immer noch effektiv ist. Selbst bei 8.000 Wörtern langem Text ist es wahrscheinlicher, dass die Fragen der Abfrageerweiterung die richtige Antwort finden als zufälliges Raten. Dies bestärkt uns darin, dass die Abfrageerweiterung immer noch ein möglicher Weg ist, um die Fähigkeit von Vektormodellen zur Verarbeitung langer Texte zu verbessern, und der es wert ist, weiter erforscht zu werden.
Auswirkungen der wörtlichen Übereinstimmung auf Vektormodelle?
In früheren Experimenten, in denen wir die Fähigkeit des Vektormodells zur "One-Hop-Inferenz" in langen Texten messen wollten, haben wir absichtlich jede wörtliche Wiederholung zwischen Fragen und Schlüsselinformationen vermieden. Die Ergebnisse zeigen, dass sich die Fähigkeit des Modells, relevante Informationen in langen Texten zu finden, selbst bei einer Erweiterung der Abfrage verschlechtert. Dieses Phänomen ist interessant. Eigentlich sollte das Vektormodell in der Lage sein, diese Art von Schlussfolgerungen selbständig und ohne zusätzliche Hilfe zu ziehen. Schließlich haben wir gerade "Dresden" durch "Semperoper" ersetzt, was im Wesentlichen ein Wort durch ein ähnliches ersetzt.
Wie wichtig ist also der wörtliche Abgleich beim semantischen Abgleich? Oder hat die Textlänge einen größeren Einfluss? Um das herauszufinden, haben wir das Experiment so umgestaltet, dass es wörtliche Wiederholungen z. B. zwischen Kernaussagen und Fragen gab:
- FRAGE: "Welche Figur war schon einmal in Dresden?"
- Schlüsselnachricht (Standard): "Yuki wohnt eigentlich in Dresden".
- Schlüsselbotschaft (invertiert): "Dresden ist der Ort, an dem Yuki lebt."
Beachten Sie, dass wir hier die Information "Yuki wohnt in Dresden" direkt geben und nicht, wie zuvor, vom Leser verlangen, dass er daraus ableitet: "Die Semperoper ist in Dresden, also sind die Leute, die in der Nähe wohnen, in Dresden gewesen".
Wir haben alle 22 Gruppen von Fragen und Schlüsselinformationen in diese einfache Form gebracht und dann dasselbe Vektormodell verwendet jina-einbettungen-v3
Ich habe das Experiment noch einmal durchgeführt und verschiedene Textlängen und Positionen der Schlüsselinformationen ausprobiert.
Normalisierungsleistung in Abhängigkeit von der Kontextlänge
Leistung des Modells im Vergleich zu einer Zufallsschätzung (0,5)
Vergleichende Verhältnisse an verschiedenen Standorten
Die Ergebnisse waren unerwartet. Selbst wenn Frage und Antwort dieselben Wörter enthalten, nimmt die Fähigkeit des Modells, zwischen der richtigen Antwort und einer zufälligen Vermutung zu unterscheiden, rapide ab, sobald der Text lang ist. Natürlich ist es immer noch etwas besser als in dem Fall, in dem es überhaupt keine identischen Wörter gibt.
Dies zeigt letztlich, dass die Länge des Kontextes und die Position der Schlüsselinformation darin einen größeren Einfluss auf die Leistung des Vektormodells bei der "Nadel im Heuhaufen"-Aufgabe hat als der spezifische Wortlaut der Schlüsselinformation (semantische Darstellung).
ein Urteil fällen
Insgesamt stimmen die Schlussfolgerungen aus unseren Experimenten mit Vektormodellen mit den NoLiMA-Experimenten mit großen Sprachmodellen überein: Je länger der Text, desto schwieriger ist es für das Modell, die richtige Antwort zu finden. Unsere Experimente zeigen auch, dass das Modell nicht immer die richtige Antwort findet, selbst wenn die Schlüsselwörter in der Frage und der Antwort genau gleich sind.
Unsere experimentellen Ergebnisse stimmen in hohem Maße mit den Erkenntnissen aus dem NoLiMA-Papier über LLM überein:Bei Vektormodellen ist die Kontextlänge ein Schlüsselfaktor für die AbrufleistungJe länger der Text ist, desto schwieriger ist es für das Modell, die richtige Antwort zu finden. Selbst wenn die Schlüsselwörter in der Frage und der Antwort genau gleich sind, findet das Modell nicht immer die richtige Antwort.
- Die Leistung nimmt mit der Länge stark abjina-embeddings-v3 schneidet bei kurzen Texten (128 Wörter) gut ab, aber seine Leistung nimmt bei langen Texten rapide ab. Der normalisierte Ähnlichkeitswert sinkt von 0,37 bei 128 Wörtern auf 0,10 bei 8K Wörtern, und, was noch wichtiger ist, die Fähigkeit des Modells, zwischen relevanten und irrelevanten Informationen zu unterscheiden (was wir als "Trennung" bezeichnen), verschwindet fast vollständig.
- Das "Ein-Sprung-Denken" ist schwierig.Selbst bei kurzen Texten verschlechtert sich die Leistung des Modells erheblich, wenn es keine direkte wörtliche Überschneidung zwischen Frage und Antwort gibt. Dies deutet darauf hin, dass das Vektormodell Schwierigkeiten mit "One-Hop-Reasoning" hat (z. B. Ableitung von "war in Dresden" aus "wohnt neben der Semperoper").
- Abfrageerweiterungen helfen, aber sie sind nicht allesAbfrageerweiterung: Die Abfrageleistung kann bis zu einem gewissen Grad verbessert werden, insbesondere bei langen Texten, so dass das Modell besser abschneidet als zufällige Schätzungen. Sie löst jedoch nicht vollständig die Probleme, die lange Texte mit sich bringen, und die Leistung sinkt weiter, wenn der Text länger wird. Außerdem muss beim Hinzufügen von Wörtern vorsichtig vorgegangen werden, da irrelevante Wörter zu semantischem Rauschen führen und die Leistung verringern.
- Wörtliche Übereinstimmung ist nicht der SchlüsselSelbst wenn die Frage und die Antwort dieselben Schlüsselwörter enthalten, kann das Modell die Antwort nicht finden, solange der Text lang ist. Dies zeigt, dass die Position der Antwort im Text einen größeren Einfluss darauf hat, ob das Modell die Antwort finden kann, als die Art der Antwort und die Länge des Textes.
Insgesamt deuten unsere Untersuchungen darauf hin, dass die jina-einbettungen-v3
Ein solches Vektormodell, das sich gut für kurze Texte eignet, ist noch immer nicht in der Lage, lange Texte zu verarbeiten, die ein tieferes Verständnis der Semantik erfordern. Dies motiviert uns, weiter nach effektiveren Techniken für die Suche nach langen Texten zu suchen, und wir hoffen, dass in Zukunft die jina-einbettungen-v4
Es gibt einen Durchbruch in.