Does a Language Server Save Tokens for Coding Agents? A Measurement Methodology and Preliminary Study
Diese Arbeit stellt die Annahme infrage, dass die semantische Abfrage über das Language Server Protocol (LSP) für Coding-Agenten von Natur aus token-effizienter ist als die lexikalische Suche, indem sie durch eine neue Messmethodik aufzeigt, dass LSP oft die Token-Kosten erhöht und es versäumt, die Effektivität von grep bei komplexen Edits zu erreichen, wodurch sie für eine adaptive Strategie der Werkzeugauswahl basierend auf dem Aufgabentyp und der Modellkapazität plädiert.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich vor, Sie sind ein Detektiv, der versucht, ein Rätsel zu lösen, aber Sie haben eine strikte Regel: Sie dürfen nur einen winzigen, schweren Rucksack bei sich tragen. Jedes Beweisstück, das Sie aufheben, nimmt Platz weg, und wenn Ihr Rucksack zu voll wird, kann ich nicht mehr klar denken. In der Welt der KI-Coding-Assistenten wird dieser „Rucksack“ als Kontextfenster bezeichnet. Es ist die begrenzte Menge an Informationen, die die KI zur gleichen Zeit in ihrem Geist halten kann, um eine Aufgabe zu verstehen.
Um ein Coding-Problem zu lösen, muss die KI spezifische Hinweise finden, die über tausende von Dateien in einer riesigen digitalen Bibliothek verstreut sind. Es gibt zwei Hauptwege, um diese Hinweise zu finden. Der erste Weg ist die lexikalische Suche (wie der Befehl grep). Dies ist so, als würde man ein Schlüsselwort in einen überfüllten Raum rufen und jedes Stück Papier schnappen, auf dem dieses Wort steht. Das ist schnell und einfach, aber man sammelt eine Menge Müll an – Notizen am Rand, Wörter in Witzen oder Erwähnungen in unzusammenhängenden Geschichten. Die KI muss all diesen Lärm durcharbeiten, um den echten Hinweis zu finden, was Ihren kostbaren Rucksack mit nutzlosen Papieren füllt.
Der zweite Weg ist die semantische Suche mittels eines Language Server Protocol (LSP). Dies ist wie ein super-schlauer Bibliothekar, der genau weiß, was Sie meinen. Anstatt nur nach Wörtern zu suchen, versteht der Bibliothekar die Bedeutung des Codes. Wenn Sie fragen: „Wer verwendet diese Funktion?“, reicht Ihnen der Bibliothekar eine Liste der tatsächlichen Stellen, an denen diese Funktion aufgerufen wird, und ignoriert dabei Witze und Kommentare. Die große Frage, die sich alle gestellt haben, lautete: „Spart dieser schlaue Bibliothekar uns Platz in unserem Rucksack?“ Die allgemeine Annahme war, dass der Bibliothekar effizienter ist, weil er uns sauberere, relevantere Informationen liefert. Aber bis jetzt hatte niemand tatsächlich gemessen, ob der „schlaue“ Weg wirklich Token (die digitalen Platzeinheiten) im Vergleich zum „Schreien und Schnappen“-Weg spart.
Dieses Paper, geschrieben von Pengcheng Xu, beschließt, nicht länger zu raten, sondern zu messen. Der Autor führt eine Reihe von Experimenten durch, um zu sehen, ob die Verwendung des smarten Bibliothekers (LSP) den Coding-Agenten tatsächlich hilft, ihren Rucksackplatz zu sparen, während sie das Rätsel immer noch korrekt lösen. Die Ergebnisse sind etwas überraschend und stellen die gängige Meinung auf den Kopf.
„Schreien und Schnappen“ gewinnt bei einfachen Aufgaben
Als die Aufgabe darin bestand, einfach zu finden, wo sich ein bestimmter Codeabschnitt befand (wie das Finden einer Datei zum Bearbeiten), machte der smarte Bibliotheker die Dinge tatsächlich schlechter. In diesen Tests verbrauchte die KI, die den Bibliothekar nutzte, 6 % mehr Token (für das stärkste KI-Modell) und 118 % mehr Token (für ein Mittelklasse-Modell) als die KI, die nur Keywords rief. Warum? Weil die Antworten des Bibliothekars so präzise waren, dass die KI zusätzliche Schritte zur Verifizierung durchführen musste, während die „Schreien und Schnappen“-Methode die Antwort direkt in den Suchergebnissen lieferte. Die KI-Agenten nutzten den Bibliothekar bei freier Wahl fast nie für diese einfachen Aufgaben und blieben bei der verrauschten, aber schnellen Keyword-Suche.
Der Bibliothekar ist eine „Krücke“ für schwächere Modelle
Die Studie ergab, dass der smarte Bibliothekar nur für das schwächste getestete KI-Modell Platz sparte. Für die stärksten Modelle war der Bibliothekar eine Steuer. Das schwache Modell, das Schwierigkeiten hatte, den Lärm der „Schreien und Schnappen“-Methode herauszufiltern, sparte tatsächlich 26 % seiner Token, indem es den Bibliothekar nutzte. Es scheint, dass der Bibliothekar wie eine Krücke für schwächere Gehirne fungiert, die mit den unordentlichen Daten nicht umgehen können, aber für kluge Gehirne bremst die Krücke sie nur aus.
Präzision vs. Vollständigkeit: Das „fehlende Drittel“
Als sich die Aufgabe änderte, jeden einzelnen Ort zu finden, an dem eine Funktion verwendet wird (Referenz-Vollständigkeit), glänzte der Bibliothekar in der Genauigkeit, scheiterte aber daran, Platz zu sparen. Der Bibliothekar fand 100 % der korrekten Stellen ohne Fehler, während die Keyword-Suche nur 76 % fand und viele Fehlalarme enthielt. Diese perfekte Genauigkeit kostete jedoch etwa 19 % mehr Token. Wichtiger noch: Keines der beiden Verfahren konnte alle Stellen finden. Die KI übersah in beiden Fällen etwa 34 % der tatsächlichen Standorte. Dies deutet darauf hin, dass das Problem nicht das Werkzeug ist; das Problem ist, dass die KI einfach nicht gründlich genug ist, um die letzten Hinweise zu finden, egal wie gut der Bibliothekar ist.
Das wahre Geheimnis: Es kommt auf den „Lärm“ an
Die wichtigste Entdeckung ist, dass der Bibliothekar nicht basierend auf der Programmiersprache (wie Python oder TypeScript) gut oder schlecht ist. Es hängt allein davon ab, wie „laut“ bzw. „verrauscht“ der Code ist. Wenn ein Funktionsname eindeutig und klar ist (wie decodeBase64), ist die Keyword-Suche perfekt, und der Bibliothekar fügt nichts hinzu. Aber wenn der Name häufig vorkommt und in Kommentaren, Strings und Witzen erscheint (wie html oder stream), wird die Keyword-Suche von Müll überflutet. In diesen „verrauschten“ Fällen wird der Bibliothekar zu einem Lebensretter, der die Genauigkeit massiv verbessert und sogar Token spart, weil die KI aufhört, Zeit mit dem Lesen des Mülls zu verschwenden.
Das Urteil: Erzwingen Sie den Bibliothekar nicht
Das Paper kommt zu dem Schluss, dass wir nicht einfach erzwingen sollten, dass KI-Agenten den smarten Bibliothekar ständig benutzen. Die Agenten sind eigentlich recht schlau; sie wählen natürlich die Keyword-Suche für einfache Aufgaben und greifen nach dem Bibliothekar, wenn die Aufgabe komplex und verrauscht ist. Die beste Lösung besteht nicht darin, den Bibliothekar als permanentes Feature an die KI zu heften, sondern die KI zu einem besseren „Router“ auszubilden – ihr beizubringen, genau zu wissen, wann sie schreien und wann sie den Bibliothekar fragen muss. Das Paper zeigt, dass die KI diesen Instinkt bereits auf eine verborgene Weise besitzt; wir müssen ihn nur verstärken.
Kurz gesagt: Der smarte Bibliothekar ist ein mächtiges Werkzeug, aber er ist kein Zauberstab, der automatisch Platz spart. Er ist ein spezialisiertes Werkzeug, das am besten funktioniert, wenn der Code unordentlich ist und die KI damit kämpft, den Lärm herauszufiltern. Bei sauberem Code und smarten Modellen ist das alte „Schreien und Schnappen“ oft schneller, günstiger und genauso effektiv.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.