Sprachmodelle sind mittlerweile in der Lage, Aufgaben zu lösen, die den Umgang mit langen Sequenzen aus Hunderttausenden von Tokens erfordern. Allerdings scheitern sie häufig bei Aufgaben, die die wiederholte Anwendung einfacher Regeln erfordern, selbst bei Sequenzen, die viel kürzer sind als diejenigen, die während des Trainings gesehen wurden. Moderne LLMs können beispielsweise gemeinsame Elemente in zwei Listen mit bis zu 20 Elementen finden, scheitern jedoch, wenn Listen 80 Elemente enthalten. In diesem Artikel stellen wir MLissard vor, einen mehrsprachigen Benchmark, der die Fähigkeit von Modellen zur Verarbeitung und Generierung von Texten unterschiedlicher Länge bewerten soll und einen Mechanismus zur Steuerung der Sequenzkomplexität bietet.
Unsere Auswertung von Open-Source- und proprietären Modellen zeigt einen konsistenten Leistungsabfall über alle Modelle und Sprachen hinweg mit zunehmender Komplexität der Sequenz. Überraschenderweise trägt die Verwendung kontextbezogener Beispiele in anderen Sprachen als Englisch dazu bei, die Extrapolationsleistung erheblich zu steigern.
Im Ordner data/(task)/ finden Sie die Datensätze zur Auswertung mit MLissard. Die Dateien liegen im .json-Format vor und enthalten eine kurze Beschreibung der Aufgabe, gefolgt von kontextbezogenen Beispielen der Zielsprache. Das Feld „test_examples“ enthält die Testbeispiele bestehend aus Eingabe, Ziel, Länge (len) und dem zu dieser Länge gehörenden Bin.
In results/(task)/GPT-4/ sind die von den GPT-4- und Llama-3-Modellen generierten Antworten sowie die Ablationstests zu finden, die Ordner sind nach Aufgaben getrennt.
Der Ordner src/(task)/ enthält .py-Dateien zum Generieren neuer Beispiele oder zum Erweitern von MLissard. Zum Ausführen: python <task_name>.py --output_path=my_output_path