KI: Die Programmierhelfer der Zukunft

Zwar gibt es KI-Hilfen zum Programmieren und Entwickeln seit Jahren, anfangs konnten diese jedoch kaum überzeugen und waren keine wirkliche Hilfe. Im vergangenen Jahr hat sich jedoch gezeigt, dass sich das geändert hat und - glaubt man Anbietern wie Github - inzwischen die Mehrheit der Entwickler entsprechende Werkzeuge bei der Arbeit oder privat nutzt. Wohl auch deshalb hat sich das Angebot der KI-Helfer in dem Bereich im vergangenen Jahr 2023 massiv verbessert und vergrößert.
Besonders deutlich zeigt sich das bei Google, das 2023 in Sachen KI und Entwicklungswerkzeuge eine regelrechte Aufholjagd begonnen hat. Noch im Januar 2023 gab es Berichte über Krisenmeetings bei Alphabet als Reaktion auf den überraschenden Erfolg von ChatGPT. Die Präsentation von Googles Chatbot Bard wurde nach inhaltlichen Fehlern der KI als Flop gewertet . Die Bereitstellung darauf aufbauender Werkzeuge scheute das Unternehmen lange.
Aufholjagd von Google
Begonnen hat Google damit dann aber im Frühjahr. Als Teil seiner KI-Produkte für Entwickler und Unternehmen stellte der Konzern neue APIs und eine Entwicklungsumgebung namens Makersuite vor, die inzwischen als AI Studio bezeichnet wird. Entwickler haben darüber leichten Zugang zu Sprachmodellen von Google für Inhaltegenerierung, Klassifizierung von Inhalten oder Chatbots.
Dank der Kooperation mit dem Start-up Replit AI nur wenige Wochen später hat Google sich dann erstmals zu einem direkten Angriff auf Githubs Copilot entschieden. Immerhin stellt Replit mit Ghostwriter eine generative KI, mit der sich Quellcode schreiben und bearbeiten lässt.
Auf der Hausmesse I/O folgte ein KI-Bot zum Pair Programming: Duet AI . Die zugrundeliegende Technik steht zudem über APIs im Cloudangebot Vertex AI bereit.
Erst vor rund zwei Wochen hat Google angekündigt, sein neues Gemini-Modell für Duet AI und Vertex AI bereitzustellen, ebenso wie im AI Studio. Unterstützt werden dabei mehr als 20 Programmiersprachen. Mit Alphacode 2 , das ebenfalls auf Gemini basiert, will das Unternehmen gar über Technik verfügen, die besser sein soll als die meisten Entwickler.
Abseits dieser klar positionierten Produkte versucht Google aber auch weitere Einsatzmöglichkeiten seiner KI für die Entwicklung zu finden. So experimentiert das Team im Project IDX mit der Idee einer Entwicklungsplattform für Web- und Multiplattform-Apps, die mittels Templates zahlreiche Frameworks unterstützen soll.
Jetbrains will mitmischen
Ebenfalls neu auf dem Markt der KI-Helfer für die Entwicklung ist der für seine zahlreichen Entwicklungsumgebungen bekannte Anbieter Jetbrains. Angesichts seiner Marktmacht ist es wenig überraschend, dass der Hersteller hier ebenfalls dabei sein möchte, um nicht den Anschluss an die Konkurrenz zu verlieren.
Laut Ankündigung(öffnet im neuen Fenster) will Jetbrains dabei einerseits den KI-Assistenten in die bestehenden Arbeitsabläufe der IDEs integrieren und andererseits Funktionen anbieten, die ein Verständnis des geschriebenen Codes und dessen Kontextes mitbringen sollen.
Konkret umgesetzt hat Jetbrains einen Chat, die Unterstützung für ein Refactoring, Codevervollständigung und das Erzeugen von Dokumentation sowie Commit-Nachrichten. Die KI-Technik basiert auf eigenen Modellen und der Möglichkeit, diese schnell auszutauschen. Hinzu kommen soll künftig etwa eine Kooperation mit Google für dessen Sprachmodelle.
An dem bisherigen Dominator des KI-Hypes in diesem Jahr, OpenAI, kommt aber auch Jetbrains nicht vorbei. So stehen auch die OpenAI-Modelle in den IDEs von Jetbrains bereit. Auf Grundlage dieser Modelle baut aber auch der zu Microsoft gehörende Codehoster Github seine KI-Helfer massiv aus.
Github baut Copilot massiv aus
Bereits im Frühjahr dieses Jahres kündigte Github eine massive Erweiterung der Nutzung des KI-Hilfswerkzeugs Copilot an . Zu Beginn stand der Copilot, der auf Techniken von OpenAI aufbaut, lediglich als Programmierhilfe bereit.
Für das Projekt Copilot X hat sich Github jedoch vorgenommen, "Chat und Sprache für Copilot" einzuführen und " Copilot in Pull-Requests, die Kommandozeile und Dokumente" zu bringen, um Fragen zu diesen besser beantworten zu können. Auf seiner Hausmesse im Herbst dieses Jahres hat Github gar das Ziel ausgegeben , sich neu zu erfinden: weg vom Social Coding, hin zur Copilot-Plattform.
Besonders hervorgehoben hat Github dabei vor allem den Copilot Chat, der über das Abo verfügbar ist und auf GPT4 von OpenAI basiert. Künftig soll der Chatbot in die Editierwerkzeuge des Webangebots integriert werden, ebenso wie in die Smartphone-App.
Die Beteiligten stellten darüber hinaus Copilot Enterprise vor. Dabei handelt sich um eine Personalisierung des Chatbots auf Grundlage der internen Codebasis. KI bietet Github darüber hinaus für einige Sicherheitsfunktionen an. Noch nicht bereit stehen dagegen die Copilot Workspaces von Github. KI soll hier helfen, einen Plan zu entwickeln, der von der ersten Idee zum fertigen Code im Pull Request führt.
Klassischer Copilot wird besser
Aber auch den eigentlichen Programmierhelfer Copilot hat Github in diesem Jahr eigenen Angaben zufolge gleich mehrfach verbessert. So wurde zunächst das genutzte Codex-Modell derart aktualisiert(öffnet im neuen Fenster) , dass es einerseits die Qualität der Codevorschläge verbessern soll und sie andererseits auch deutlich schneller ausliefern können soll.
Für das zweite Modellupdate des Jahres hat Github dann mit OpenAI und der Azure-AI-Abteilung von Microsoft kooperiert und das Modell über Codex hinaus weiterentwickelt(öffnet im neuen Fenster) . Zu Copilot hinzugekommen ist dabei ein Kontextfilter, der dafür sorgen soll, dass Eingaben und auch die Vorschläge selbst besser von Copilot analysiert werden.
AWS bessert Kleinigkeiten nach
Der von Amazons Cloudsparte angebotene KI-Programmierhelfer Codewhisperer bietet in einer aktuellen Version(öffnet im neuen Fenster) eine automatische Codekorrektur an, wie das Unternehmen auf seiner Hausmesse Reinvent ankündigte. Dabei kombiniert der Dienst eine integrierte Überprüfung auf sicherheitsrelevante Fehler mit Vorschlägen, um sie direkt zu beheben. Unterstützt wird dies für Java, Python und Javascript.
Zu Codewhisperer hinzugekommen ist die Unterstützung für Infrastruktur als Code, wobei dies AWS Cloudformation (YAML, JSON), AWS CDK (Typescript, Python) und Hashicorps Terraform (HCL) umfasst. Dafür werden nun auch Sicherheitsscans angeboten. Genutzt werden kann der Codewhisperer zusätzlich zu bisherigen Plattformen künftig auch in Microsofts Visual Studio.
Als eine Art logische Erweiterung von Codewhisperer gibt es eine abgeleitete Variante des KI-Werkzeugs nun auch für die Kommandozeile .
Das umfasst eine Autovervollständigung für Befehle im Terminal, wie sie von IDEs bekannt ist. Vor allem aber soll die integrierte Dokumentation Zeit sparen, da sich so ein Wechsel von der Befehlseingabe hin zur Dokumentation etwa im Browser erübrigt. Angeboten wird dies für mehr als 500 Programme auf der Kommandozeile. Hinzu kommt eine Übersetzung von natürlicher Sprache in Kommandozeilenbefehle.
Open-Source-Alternativen für KI-Entwicklungswerkzeuge
Abseits der großen Cloudanbieter bleiben Interessierten oft nur wenige Alternativen für die Nutzung von KI. Doch hier hat sich 2023, auch mit Unterstützung großer Konzerne, in Bezug auf Open-Source-Alternativen viel entwickelt. Aufgrund der Erfahrung und der Ressourcen der Beteiligten besonders vielversprechend erscheint dabei Code Llama von Meta(öffnet im neuen Fenster) .
Bei Code Llama handelt es sich um eine auf Codedatensätzen trainierte Version von Metas riesigem Sprachmodell Llama2 . Es wird auch unter derselben Lizenz(öffnet im neuen Fenster) wie das zugrundeliegende KI-Modell angeboten, die von Meta selbst stammt. Code Llama ist aber etwa auch über Googles Cloud Marketplace verfügbar(öffnet im neuen Fenster) .
Versprochen werden eine schnellere und effizientere Arbeitsweise für Entwickler sowie eine niedrigere Einstiegshürde für Programmieranfänger. Code Llama soll Programmierern dabei helfen, robuste und gut dokumentierte Software zu schreiben.
Code Llama enthält drei Versionen, die sich durch die Menge der Parameter (7, 13 und 34 Milliarden) unterscheiden und für verschiedene Anforderungen in Sachen Qualität, Geschwindigkeit und Latenz ausgelegt sind. An Programmiersprachen werden den Angaben zufolge "Python, C++, Java, PHP, Typescript (Javascript), C#, Bash und mehr" unterstützt.
Open-Source-Modell Starcoder
Ein weiterer Open-Source-Kontrahent in Sachen KI-Entwicklung ist das Starcoder genannte Modell, das von Huggingface(öffnet im neuen Fenster) erstellt wurde. Es basiert auf Daten und Code, der bei Github und mit freizügigen Lizenzen gehostet wird. Damit sollen wohl vor allem vielfach aus der Copyleft-Community vorgebrachte Einwände gegen die Nutzung des eigenen Codes als Trainingsdaten entkräftet werden.
Neben Code aus mehr als 80 Programmiersprachen umfassen die Trainingsdaten auch Git-Beiträge und -Issues oder den Inhalt von Jupyter-Notebooks. In Benchmarks soll das frei verfügbare Starcoder besser abschneiden als die großen Sprachmodelle Llama, Lamda und Palm, versprechen die Ersteller des Modells. Es soll aber auch besser sein als speziell für das Coding gedachte Modelle wie OpenAIs erste Version der Grundlage von Copilot.
Praktisch genutzt wird Starcoder derzeit etwa vom dem KI-Werkzeug Cody von Sourcegraph(öffnet im neuen Fenster) , das erst seit wenigen Wochen offiziell allgemein verfügbar ist. Zusätzlich zu einem Chatbot, der mit mehreren unterschiedlichen Modellen genutzt werden kann, bietet Cody auch eine Codevervollständigung an, die Starcoder nutzt.
Neue Mitspieler im KI-Bereich
Für Überraschung im KI-Markt sorgte in diesem Jahr das französische Start-up Mistral, das bei einer Bewertung über 240 Millionen Euro direkt 105 Millionen Euro als Risikokapital einsammelte. Besonders daran war, dass dies geschehen ist, noch bevor die Beteiligten überhaupt ein Produkt vorweisen konnten .
Inzwischen hat sich das jedoch geändert und das Unternehmen hat mit Mistral 7B sowie Mistral 8x7B gleich zwei riesige Sprachmodelle unter der Apache-Lizenz als Open Source veröffentlicht, die sich auch zum Programmieren eignen sollen(öffnet im neuen Fenster) .
Ebenfalls neu im Feld der riesigen Sprachmodelle ist das Team von Stable Diffusion, das bisher für Bilderzeugung bekannt ist. Mit StableLM und davon abgeleiteten Modellen wagt sich das Team aber auf neues Terrain und verspricht, dass sich damit neben Texten in natürlicher Sprache auch Programmcode erzeugen lassen soll.



