Google steigert die Entwicklerproduktivität mit hybrider semantischer ML-Code-Completion
Forscher von Google haben ein neuartiges, Transformer-basiertes, hybrides semantisches ML-Code-Completion-System entwickelt, das maschinelles Lernen (ML) und regelbasierte semantische Engines (SEs) kombiniert, um die Entwicklerproduktivität deutlich zu steigern. Das System integriert ML und SEs auf drei Arten: 1) Neureihenfolge von SE-Einzeltoken-Vorschlägen mithilfe von ML; 2) Anwendung von Einzel- und Mehrzeilen-Vorschlägen mithilfe von ML und Überprüfung der Korrektheit mit SE; und 3) Verwendung von Einzel- und Mehrzeilen-Fortsetzungen durch ML von Einzeltoken-semantischen Vorschlägen. Eine dreimonatige Studie mit über 10.000 internen Google-Entwicklern zeigte eine 6%ige Reduzierung der Codierungsiterationszeit bei Einzelzeilen-ML-Vorschlägen. Derzeit werden über 3% des neuen Codes durch die Annahme von ML-Completion-Vorschlägen generiert. Das System unterstützt acht Programmiersprachen und beinhaltet semantische Prüfungen, um die Korrektheit des Codes zu gewährleisten, was das Vertrauen und die Effizienz der Entwickler deutlich steigert.