Dieser Rat, in welcher Sprache KI-Codes am besten sind? Bei echter Arbeit scheitert es
Dan Luu wiederholte die beliebte Behauptung, dass dynamische Sprachen für Codierungsagenten günstiger seien. Bei zwei großen Aufgaben verschwand der Effekt und der am zweithäufigsten genannte Benchmark erwies sich als gebrochen.
Es gibt den Ratschlag, dass Sie eine kompakte, dynamisch typisierte Sprache wählen sollten, wenn Sie möchten, dass ein KI-Codierungsagent kostengünstig und effektiv ist. Googles eigene KI-Zusammenfassung wiederholt es. Dan Luu, ein Ingenieur mit langjähriger Erfahrung in der Zerlegung populärer Behauptungen, führte seine eigenen Tests durch. Bei allem, was einer echten Arbeit ähnelt, verschwindet der Effekt.
Die ursprüngliche Behauptung stammt aus einem Benchmark, der misst, wie viele Token, die kleinen Textblöcke, die ein Modell liest und schreibt und denen es in Rechnung gestellt wird, verschiedene Sprachen benötigen, um Probleme aus dem Rosetta-Code zu lösen. Es wurde ein 2,6-facher Abstand zwischen C, dem schlechtesten, und Clojure, dem besten, festgestellt, und ein noch größerer Gewinn für die Array-Sprache J mit etwa 70 Token pro Lösung. Luus Einwand ist unverblümt: Ein Problem, das man mit 70 Token lösen kann, ist kein Problem. Der größte Teil der Arbeit besteht darin, die Antwort auszudrucken.
Also baute er zwei härtere Tests. Im ersten Schritt erhielten die Agenten die zstd-Komprimierungsspezifikation und wurden angewiesen, einen funktionierenden Decoder zu implementieren, ohne Internetzugang und ohne Sicht auf die Tests. Im zweiten Schritt erhielten sie den Pandoc-Dokumentenkonverter-Benchmark und punkteten mit Tests, die sie noch nie gesehen hatten. Bei beiden gab es keinen klaren Gewinner zwischen statischen und dynamischen Sprachen. Bei höherem Argumentationsaufwand schnitten mehrere statische Sprachen am besten ab. Die obskuren, dichten Sprachen, die bei Spielzeugproblemen so beeindruckend aussahen, schnitten schlecht ab, was einer einfachen Erklärung entspricht: KI-Labore investieren ihre Trainingsanstrengungen in Sprachen, die Menschen tatsächlich verwenden.
Was dahintersteckt
Der nützlichste Teil des Artikels ist die Autopsie der anderen Benchmark-Leute, die zitiert werden. Bei einem Test darin wurde eine ausführbare Datei unter einem Pfad ausgeführt, der nicht existierte, sodass jeder Rust-Durchlauf fehlschlug. Ein späterer Go-Lauf „behob“ dieses Problem, indem er einen symbolischen Link zu seiner eigenen Binärdatei erstellte, was bedeutete, dass jeder nachfolgende Test in jeder Sprache das Go-Programm stillschweigend ausführte. Der Autor des Benchmarks kam zu dem Schluss, dass Rust Schwierigkeiten hat, weil es eine schwierige Sprache ist. Bei richtiger Bewertung erhält Rust eine perfekte Note. Bei zwei anderen Tests trat ein Fehler beim Kopieren und Einfügen auf, der dazu führte, dass sie unabhängig von der Funktionsweise des Codes bestanden wurden.
Luu achtet auch auf seine eigene Arbeit. Er stellt fest, dass er über hundert Setup-Fehler behoben hat und geht davon aus, dass es noch weitere geben wird, und lehnt es ab, Aussagen zu einzelnen Sprachen aus zwei Aufgaben zu machen. Das einzige Muster, hinter dem er stehen wird, ist schwach, aber konsistent: Beliebtere Sprachen führen tendenziell zu korrekteren und günstigeren Ergebnissen.
Was das für dich bedeutet: Wechseln Sie nicht die Sprache, weil in einer Tabelle angegeben ist, dass ein Agent dort günstiger wäre. Bleiben Sie bei etwas Mainstream und gut unterstütztem. Im weiteren Sinne ist dies eine gute Lektion darüber, wie KI-Benchmarks schiefgehen können: Ein überzeugendes Ergebnis bei kleinen Problemen hört in der Regel in dem Moment auf, in dem das Problem groß genug wird, um von Bedeutung zu sein. Wenn Sie eine sehen, fragen Sie, wie schwer die Aufgaben waren.
Quellen
Quellen: https://danluu.com/pl-tokens/
Der Erfinder von Redis hat ein chinesisches Videomodell erstellt, das auf einem Mac läuft. Europäer haben keine Lizenz zur Nutzung
Salvatore Sanfilippo veröffentlichte h3.c, eine C- und Metal-Engine, die MiniMax H3 nativ auf Apple Silicon ausführt. Die eigene Lizenz des Modells schließt die EU, Großbritannien, die USA und Südkorea vom lokalen Einsatz aus.