KI-gestütztes Debugging: Microsoft Research präsentiert Debug-Gym

Kategorien:
No items found.
Freigegeben:
April 14, 2025

Artikel jetzt als Podcast anhören

KI lernt debuggen: Microsoft Research entwickelt Debug-Gym

Die zunehmende Integration von KI in der Softwareentwicklung birgt enormes Potenzial, stellt Entwickler aber auch vor neue Herausforderungen. Während KI-Systeme bereits effizient Code generieren können, bleibt das Debuggen ein zeitaufwendiger Prozess. Microsoft Research adressiert dieses Problem mit "Debug-Gym", einer neuen Umgebung, die KI-Tools das Debuggen von Code beibringen soll.

KI-gestützte Codegenerierung im Aufwind

KI-Coding-Assistenten steigern die Produktivität von Entwicklern erheblich. Bereits 2023 prognostizierte GitHub CEO Thomas Dohmke, dass "früher oder später 80% des Codes von Copilot geschrieben werden". Dieser Trend bestätigt sich in der gesamten Branche, sowohl große Unternehmen als auch Startups setzen vermehrt auf KI zur Codegenerierung. Garry Tan von Y Combinator betonte, dass bei einem Viertel der Startups im letzten Batch 95% des Codes von großen Sprachmodellen (LLMs) erstellt wurden.

Die Realität der Softwareentwicklung sieht jedoch anders aus: Ein Großteil der Zeit wird für das Debuggen aufgewendet, nicht für das initiale Schreiben des Codes. Das Microsoft Research Team, selbst Betreuer populärer Open-Source-Repositorys, stellt die Frage: "Was wäre, wenn ein KI-Tool Fixes für hunderte von offenen Issues vorschlagen könnte, und wir müssten diese nur noch genehmigen, bevor sie integriert werden?"

Interaktives Debuggen für KI

Debuggen ist ein interaktiver und iterativer Prozess zur Fehlerbehebung in Code. Entwickler stellen Hypothesen über Abstürze auf, sammeln Beweise durch schrittweise Codeausführung, untersuchen Variablenwerte (oft mit Tools wie dem Python Debugger, pdb) und wiederholen diesen Zyklus, bis das Problem gelöst ist. Debug-Gym zielt darauf ab, KI-Agenten mit ähnlichen Fähigkeiten auszustatten. Die zentrale Frage lautet: "Inwieweit können LLMs interaktive Debugging-Tools wie pdb nutzen?"

Die Umgebung bietet KI-Agenten Zugriff auf Tools zur aktiven Informationssuche und erweitert so ihre Handlungs- und Beobachtungsmöglichkeiten. Agenten in Debug-Gym können Breakpoints setzen, durch Code navigieren, Variablenwerte überprüfen, Testfunktionen erstellen und entscheiden, ob sie weiter untersuchen oder Code basierend auf ihrem Konfidenzniveau umschreiben.

Das Microsoft-Team erklärt: "Wir glauben, dass interaktives Debuggen mit den richtigen Tools Coding-Agenten in die Lage versetzen kann, reale Software-Engineering-Aufgaben zu bewältigen, und dass es für die Forschung an LLM-basierten Agenten von zentraler Bedeutung ist."

Die von diesen verbesserten Agenten vorgeschlagenen Korrekturen – nach menschlicher Genehmigung – würden auf dem spezifischen Codebasis-Kontext, den Details der Programmausführung und der Dokumentation basieren und über bloße Vermutungen auf der Grundlage von Trainingsdaten hinausgehen.

Die Architektur von Debug-Gym

Debug-Gym wurde unter Berücksichtigung mehrerer wichtiger Aspekte entwickelt:

- Repository-Level-Handling: Agenten können auf Dateien im gesamten Code-Repository zugreifen und diese ändern. - Robustheit und Sicherheit: Die Codeausführung erfolgt in Sandbox-Docker-Containern, wodurch die Umgebung isoliert wird, um schädliche Aktionen zu verhindern und gleichzeitig gründliche Tests zu ermöglichen. - Erweiterbarkeit: Die Plattform ist so konzipiert, dass neue Debugging-Tools einfach integriert werden können. - Textbasierte Interaktion: Beobachtungen werden in strukturiertem Text (wie JSON) dargestellt, und Aktionen verwenden eine einfache Textsyntax, um die Kompatibilität mit modernen LLMs zu gewährleisten.

Forscher können Debug-Gym mit benutzerdefinierten Repositorys verwenden und die Leistung von Agenten anhand von Benchmarks wie Aider (einfache Funktionsgenerierung), Mini-Nightmare (kurze, fehlerhafte Beispiele) und SWE-Bench (reale Probleme, die ein tiefes Verständnis der Codebasis erfordern) bewerten.

Vielversprechende erste Ergebnisse und zukünftige Entwicklungen

Erste Experimente mit einem einfachen promptbasierten Agenten, der verschiedene LLMs (einschließlich Claude 3.7, OpenAI o1 und OpenAI o3-mini) mit Debugging-Tools wie eval, view, pdb, rewrite und listdir verwendete, zeigten vielversprechende Ergebnisse. Obwohl selbst mit diesen Tools die Lösung komplexer Probleme wie in SWE-bench Lite eine Herausforderung blieb (Erfolgsrate selten über 50%), war die Leistungssteigerung im Vergleich zu Agenten ohne Debugging-Tools signifikant.

Das Microsoft Research Team sieht den nächsten Schritt in der Feinabstimmung von LLMs speziell für interaktives Debuggen. Dies erfordert die Erstellung spezialisierter Datensätze, die möglicherweise Agenteninteraktionen innerhalb des Debuggers aufzeichnen, während sie Informationen zur Problemlösung sammeln.

Durch die Open-Sourcing von Debug-Gym lädt Microsoft Research die breitere Community ein, zur Weiterentwicklung interaktiver Debugging-Agenten und im Allgemeinen von KI-Agenten beizutragen, die in der Lage sind, aktiv Informationen aus ihrer Umgebung zu suchen.

Bibliographie: https://www.microsoft.com/en-us/research/blog/debug-gym-an-environment-for-ai-coding-tools-to-learn-how-to-debug-code-like-programmers/ https://www.developer-tech.com/news/microsoft-research-teaches-ai-tools-how-to-debug-code/ https://techcrunch.com/2025/04/10/ai-models-still-struggle-to-debug-software-microsoft-study-shows/ https://arstechnica.com/ai/2025/04/researchers-find-ai-is-pretty-bad-at-debugging-but-theyre-working-on-it/ https://dev.ua/en/news/modeli-shtuchnoho-intelektu-vse-shche-ne-spravliaiutsia-z-protsesom-nalahodzhennia-kodu-pokazuie-doslidzhennia-microsoft-1744352163 https://www.microsoft.com/en-us/research/blog/ https://www.techi.com/ai-still-struggles-to-debug-code-effectively/ https://x.com/Gadget_Ry/status/1910672950119874677 https://www.techradar.com/pro/microsoft-study-claims-ai-is-still-struggling-to-debug-software https://www.microsoft.com/en-us/research/publication/debug-gym-a-text-based-environment-for-interactive-debugging/
Was bedeutet das?

Wie können wir Ihnen heute helfen?

Das Expertenteam von Mindverse freut sich darauf, Ihnen zu helfen.