Hallo Carsten! Heute haben wir zwei spannende Papers, die sich mit dem Thema KI und Programmierung beschäftigen. Lass uns mal darüber diskutieren, was die Autoren herausgefunden haben!
#### Super, da bin ich sehr gespannt Sigurd! Fang doch einfach mal an zu berichten, was im ersten Paper so drinsteht.
#### Also, im ersten Paper von Xiang Yue und Kollegen geht es darum, Trainingsbeispiele für Sprachmodelle aus dem Web zu extrahieren, um deren Fähigkeiten zum logischen Schlussfolgern zu verbessern. Die Idee ist, dass es im Web jede Menge hochwertige natürliche Beispiele für Anweisungen und zugehörige Antworten gibt.
#### Interessant! Und wie genau läuft dieser Prozess ab, die relevanten Daten aus dem riesigen Web herauszufiltern?
#### Die Autoren haben dafür einen dreistufigen Prozess entwickelt: Zuerst werden mit einem vortrainierten FastText-Modell relevante Dokumente aus dem Common Crawl Webkorpus herausgefiltert. Dann werden mit großen Sprachmodellen wie Mixtral und Qwen Frage-Antwort-Paare aus den Dokumenten extrahiert. Und zuletzt werden diese Paare nochmal verfeinert und erweitert, um die Qualität zu erhöhen.
#### Wow, das klingt nach einem aufwändigen, aber auch sehr cleveren Verfahren! Und hat es tatsächlich funktioniert, die Leistung der Modelle dadurch zu verbessern?
#### Und wie! Die Autoren konnten satte 10 Millionen Anweisungs-Antwort-Paare extrahieren. Wenn sie diese zum Finetunen verschiedener Sprachmodelle wie Mistral, Llama oder Yi genutzt haben, konnten sie deren Ergebnisse in Benchmarks zum logischen Schließen drastisch verbessern. Zum Beispiel stieg die Genauigkeit von Mistral-7B auf dem MATH Datensatz von 11% auf 34%!
#### Das sind wirklich beeindruckende Verbesserungen! Scheint so, als hätten die Autoren eine effektive Methode gefunden, um Sprachmodelle schlauer zu machen, ohne manuell annotierte Daten zu benötigen. Und was steht in dem zweiten Paper?
#### Das zweite Paper von Forschern von IBM befasst sich ebenfalls mit KI-Modellen für Programmieraufgaben. Sie haben eine ganze Familie von Decoder-only Modellen namens Granite Code entwickelt, in Größen von 3 bis 34 Milliarden Parametern.
#### Decoder-only bedeutet, die Modelle bestehen nur aus dem Decoder-Teil eines Transformers, oder? Wofür sind die Granite Code Modelle genau gedacht?
#### Genau, es handelt sich um reine Decoder-Modelle. Sie sind sehr vielseitig einsetzbar für alle möglichen Programmier-bezogenen Aufgaben wie Code-Generierung, Bug-Fixing, Code-Erklärung, Dokumentation und so weiter. Die Modelle wurden in zwei Phasen auf insgesamt 3,5 bis 4,5 Billionen Token trainiert, bestehend aus Code in 116 Programmiersprachen und zusätzlichen hochwertigen Textdaten.
#### Die Menge an Daten ist ja enorm! Aber hat sich der immense Trainingsaufwand auch gelohnt? Wie gut schneiden die Modelle im Vergleich zu existierenden Code-Modellen ab?
#### Laut den umfangreichen Evaluierungen der Autoren auf verschiedensten Benchmarks liefern die Granite Code Modelle absolut state-of-the-art Ergebnisse. Sie erreichen fast durchgehend Spitzenplätze und übertrumpfen ähnlich große Modelle wie CodeGemma, StarCoder2 oder Llama3 in den meisten Aufgaben. Dabei zeigen sie beeindruckende Fähigkeiten nicht nur in der Code-Generierung, sondern auch im Bug-Fixing und Code-Erklären.
#### Das ist wirklich bemerkenswert! Es scheint, als hätten beide vorgestellten Ansätze, sowohl die Web-Extraktion von Anweisungen als auch das umfassende Training von reinen Decoder-Modellen, zu deutlichen Fortschritten bei KI-Modellen für Code und logisches Schließen geführt. Bin schon gespannt, was für Anwendungen dadurch in Zukunft möglich werden!
#### Auf jeden Fall, das sehe ich auch so! Die IBM Forscher haben ihre Granite Code Modelle sogar unter einer Open-Source Lizenz veröffentlicht, damit sie von jedem frei genutzt und weiterentwickelt werden können. Bleibt abzuwarten, was die Community damit anstellen wird. Aber eins ist sicher: Sprachmodelle werden immer besser darin, Programmier- und Denkaufgaben zu lösen!