Entwicklung & Code

Das machen Menschen besser: Studie zeigt Grenzen von Coding-Agenten


Aktuelle KI-Agenten versprechen, in der Softwareentwicklung vollständig autonom zu agieren. Aber sind sie auch so weit, dass sie es hinsichtlich Know-how mit Entwicklerinnen und Entwicklern aufnehmen können?

Nein, sagt eine Studie „Challenges and Paths Towards AI for Software Engineering“, an der Forscherinnen und Forscher der Cornell University, des Computer Science and Artificial Intelligence Laboratory (CSAIL) des Massachusetts Institute of Technology, der Stanford University und der UC Berkeley beteiligt waren. Aktuelle LLM-Modelle haben noch nicht den Punkt erreicht, dass man mit ihnen so zusammenarbeiten kann wie mit einem Kollegen aus Fleisch und Blut.

Viele KI-Tools sind mittlerweile so leistungsstark geworden, dass sie Developern einen echten Mehrwert bringen. Komplexe Coding-Aufgaben können sich für Kollege KI jedoch laut der Studie als Stolperstein herausstellen. Darunter fallen etwa Aspekte wie das Kontextverständnis für sehr umfangreiche Codebasen, höhere logische Komplexitätsgrade sowie die Fähigkeit, Codestrukturen so zu planen und umzusetzen, dass ihre Qualität auch langfristig auf dem gleichen Niveau bleibt.

Ein Beispiel für eine komplexe Coding-Aufgabe ist die Behebung eines Speichersicherheitsfehlers. Effektives Bugfixing setzt voraus, dass Entwicklerinnen und Entwickler nicht nur die Fehlerstelle im Code ausfindig machen, sondern darüber hinaus auch dessen Semantik und Funktionsweise verstehen. Mitunter fallen auch unerwartete Zusatzarbeiten an. So könnte es ein Speicher-Bug zum Beispiel erforderlich machen, die ganze Speicherverwaltung zu ändern.

Betraut man ein KI-Tool mit derselben komplexen Aufgabe, könnte es ähnlich gute Arbeit leisten wie eine Entwicklerin oder ein Entwickler. Garantiert ist das allerdings nicht. Genauso gut könnte es auch passieren, dass die KI über den Fehler oder dessen Ursache halluziniert, irrelevante Verbesserungsvorschläge macht oder unverhältnismäßig große Codekorrekturen durchführen will.

Programmieraufgaben lassen sich über eine effektivere Kommunikation zwischen Mensch und Maschine am besten lösen. Bei der Softwareentwicklung gehe es darum, ein gemeinsames Vokabular und ein gemeinsames Verständnis für ein Problem zu finden. Das gelte auch für die Art und Weise, wie man es dann codeseitig lösen will.

Eine KI tut sich nach wie vor schwer damit, die Architektur eines Systems in allen seinen Facetten zu erfassen beziehungsweise zu reproduzieren. Das liege auch an den aktuellen KI-Schnittstellen, die im Gegensatz zu den Möglichkeiten, die Menschen haben, um miteinander zu kommunizieren, noch recht begrenzt sind.

Die Kommunikationsbarrieren zwischen Mensch und Maschine könnten sich laut Studie abbauen lassen, wenn KI-Systeme lernen, bei vagen Anweisungen oder unklaren Szenarien proaktiv um zusätzliche Informationen zu bitten. So ließe sich auch Code-Kontext verständlich machen, den Developer zwar im Kopf haben, der sich über herkömmliche KI-Agenten aber nur schwer vermitteln lässt.

Solche direkten Hinweise können bei KI-Systemen nicht nur Unsicherheiten vermeiden, sondern sie auch in die Lage versetzen, die Absichten von Entwicklerinnen und Entwicklern besser zu erfassen. Umgesetzt werden könnten sie durch fortschrittliche KI-Agenten wie zum Beispiel AlphaEvolve von Google DeepMind, das selbstständig Algorithmen entwirft und bewertet.


(who)



Source link

Beliebt

Die mobile Version verlassen