Stellen Sie sich eine Zukunft vor, in der künstliche Intelligenz stillschweigend die Plackerei der Softwareentwicklung schuldet: Veredelte Code, migrierende Legacy -Systeme und die Auf jagd auf den Rassenbedingungen, damit sich menschliche Ingenieure der Architektur, dem Design und den wirklich neuartigen Problemen über die Reichweite einer Maschine widmen können. Die jüngsten Fortschritte scheinen die zukünftigen verlockend eng zu kämpfen zu haben, aber ein neues Papier von Forschern des MIT-Labors für Informatik und künstliche Intelligenz (CSAIL) und mehrere zusammenarbeitende Institutionen argumentieren, dass diese potenzielle zukünftige Realität einen schwierigen Blick auf die heutigen Herausforderungen erfordert.

Mit dem Titel „Herausforderungen und Wege in Richtung KI für Software program Engineering”Die Arbeit ordnet die vielen Software program-Engineering-Aufgaben über die Codegenerierung hinaus, identifiziert aktuelle Engpässe und hebt Forschungsanweisungen hervor, um sie zu überwinden, um sich auf das Design auf hoher Ebene zu konzentrieren, während die Routinearbeit automatisiert wird.

„Jeder spricht darüber, wie wir keine Programmierer mehr brauchen, und es gibt all diese Automatisierung jetzt“, sagt Armando Photo voltaic -Lezama, MIT -Professor für Elektrotechnik und Informatik, CSAIL -Principal Investigator und Senior Autor der Studie. „Einerseits hat das Feld enorme Fortschritte gemacht. Wir haben Instruments, die viel leistungsfähiger sind als alle, die wir zuvor gesehen haben. Aber es gibt auch einen langen Weg, um wirklich das volle Versprechen der Automatisierung zu erhalten, das wir erwarten würden.“

Photo voltaic-Lezama argumentiert, dass populäre Erzählungen die Software program-Engineering häufig auf „den Bachelor-Programmierteil: Jemand gibt Ihnen eine Spezifikation für eine kleine Funktion über und Sie implementieren oder das Lösen von Programminterviews im Leetcode-Stil“. Wirkliche Praxis sind weitaus breiter. Es umfasst alltägliche Refaktoren, die das polnische Design sowie umfassende Migrationen, die Millionen von Linien von Cobol nach Java und Umgestalten ganzer Unternehmen bewegen. Es erfordert Nonstop-Checks und -analysen-Fuzzing, propertionbasierte Checks und andere Methoden-, um Parallelitätsfehler zu fangen oder Zero-Day-Mängel zu Patch. Und es geht um den Wartungsgrad: Dokumentieren Sie zehn Jahre alter Code, Zusammenfassung der Änderungsgeschichte für neue Teamkollegen und Überprüfung von Pull-Anfragen nach Stil, Leistung und Sicherheit.

Codesoptimierung im Branchenmaßstab-denken Sie daran, die GPU-Kernel oder die unerbittlichen, vielschichtigen Verfeinerungen hinter Chromes V8-Motor zu bewerten, bleibt hartnäckig zu bewerten. Die heutigen Überschriftenkennzahlen wurden für kurze, in sich geschlossene Probleme entwickelt, und während A number of-Selection-Checks immer noch natürliche Forschung dominieren, waren sie in AI-for-Code nie die Norm. Der De-facto-Maßstab des Feldes, SWE-Bench, bittet einfach ein Modell, ein Github-Downside zu patchen: nützlich, aber immer noch mit dem Paradigma „Undergrad-Programmierübung“ vergleichbar. Es berührt nur einige hundert Codezeilen, riskiert Daten, die von öffentlichen Repositories auslaufen und andere reale Kontexte ignorieren-AI-unterstützte Refaktoren, Programme für Menschen und AI-Paare oder leistungskritische Umschreibungen, die Millionen von Linien umfassen. Bis die Benchmarks erweitert werden, um diese Szenarien mit höheren Einsätzen zu erfassen, bleibt die Messung des Fortschritts-und damit die Beschleunigung-eine offene Herausforderung.

Wenn die Messung ein Hindernis ist, ist die Kommunikation zwischen Mensch und Herme eine andere. Der erste Autor Alex Gu, ein MIT -Doktorand in Elektrotechnik und Informatik, sieht die heutige Interaktion als „dünne Kommunikationslinie“. Wenn er ein System auffordert, Code zu generieren, erhält er häufig eine große, unstrukturierte Datei und sogar eine Reihe von Unit -Checks, doch diese Checks sind tendenziell oberflächlich. Diese Lücke erstreckt sich auf die Fähigkeit der KI, die breitere Suite von Software program -Engineering -Instruments effektiv zu nutzen, von Debuggen bis hin zu statischen Analysern, auf die sich Menschen für eine präzise Kontrolle und ein tieferes Verständnis verlassen. „Ich habe nicht viel Kontrolle darüber, was das Modell schreibt“, sagt er. „Ohne einen Kanal für die KI, um sein eigenes Vertrauen aufzudecken -“ dieser Teil ist richtig … dieser Teil, vielleicht doppelte Überprüfungen “ – riskiert die Entwickler, die halluzierte Logik zu vertrauen, die kompiliert, aber in der Produktion zusammenbricht. Ein weiterer kritischer Aspekt besteht darin, zu wissen, wann er sich an den Benutzer zur Klärung verschieben muss.“

Skalieren diese Schwierigkeiten. Aktuelle KI -Modelle kämpfen tiefgreifend mit großen Codebasen, die oft Millionen von Linien umfassen. Basis -Modelle lernen aus öffentlichem Github, aber „die Codebasis jedes Unternehmens ist eine Artwork unterschiedlich und einzigartig“, sagt Gu und macht proprietäre Codierungskonventionen und Spezifikationsanforderungen grundlegend außerhalb der Verteilung. Das Ergebnis ist Code, der plausibel aussieht und dennoch nicht existierende Funktionen bezeichnet, gegen interne Stilregeln verstößt oder Pipelines für kontinuierliche Integration fehlschlägt. Dies führt häufig zu AI-generierten Code, den „Halluzinate“, was bedeutet, dass er plausibel aussieht, aber nicht mit den spezifischen internen Konventionen, Helferfunktionen oder architektonischen Mustern eines bestimmten Unternehmens übereinstimmt.

Modelle werden auch häufig falsch abgerufen, da er Code mit einem ähnlichen Namen (Syntax) und nicht mit Funktionalität und Logik abruft, was ein Modell möglicherweise wissen muss, wie man die Funktion schreibt. „Normal -Abruftechniken werden sehr leicht durch Codestücke getäuscht, die dasselbe tun, aber anders aussehen“, sagt Photo voltaic -Lezama.

Die Autoren erwähnen, dass diese Themen, da diese Probleme keine Silberkugel haben, stattdessen die Bemühungen im Bereich der Neighborhood -Skale anrufen: reicher, Daten, die den Prozess des Schreibens von Entwicklern erfassen (z. B. Code -Entwickler, die gegen wegwerfen, wie Code im Laufe der Zeit umgestaltet wird, usw.), gemeinsame Bewertungssuiten, die die Fortschrittsqualität, die Fehlermigration sowie die Migration, die Migration sowie die Migration und die Migration und die Migration messen. und transparente Werkzeuge, mit denen Modelle Unsicherheit aufdecken und eher menschliche Lenkung als passive Akzeptanz einladen. Gu rahmt die Agenda als „Aufruf zum Handeln“ für größere Open -Supply -Kooperationen, die kein einziges Labor allein aufbringen könnte. Photo voltaic -Lezama stellt sich inkrementelle Fortschritte vor – „Forschungsergebnisse, die jeden dieser Herausforderungen getrennt Bissen herausnehmen“, die sich wieder in kommerzielle Werkzeuge einfügen und die KI allmählich von der automatischen Vervollständigung des Sidekick in Richtung echter Ingenieurpartner bewegen.

„Warum wird die Software program bereits die Finanzierung, den Transport, die Gesundheitsversorgung und die Minutien des täglichen Lebens untermauert und die menschliche Anstrengungen, die erforderlich sind, um sie sicher zu bauen und zu warten, wird zu einem Engpass. Eine KI, die die Grunzarbeit transportieren kann – und dies ohne die Einführung versteckter Versagen frei machen, um sich auf Kreativität zu konzentrieren, Strategie und Ethik“, heißt es in Gu. “ „Aber diese Zukunft hängt davon ab, dass der Codebeteiligung der einfache Teil ist. Das schwierige Teil ist alles andere. Unser Ziel ist es nicht, Programmierer zu ersetzen. Es geht darum, sie zu verstärken. Wenn die KI die langwierigen und die schrecklichen, menschlichen Ingenieure in Angriff nehmen können, können menschliche Ingenieure endlich ihre Zeit damit verbringen, was nur Menschen tun können.“

„Mit so vielen neuen Werken, die in der KI für die Codierung auftreten und die Gemeinschaft oft die neuesten Traits verfolgt, kann es schwierig sein, zurückzutreten und darüber nachzudenken, welche Probleme am wichtigsten sind“, sagt Baptiste Rozière, ein KI -Wissenschaftler bei Mistral AI, der nicht in die Zeitung involviert ist. „Ich habe es genossen, dieses Papier zu lesen, weil es einen klaren Überblick über die wichtigsten Aufgaben und Herausforderungen in der KI für Software program -Engineering bietet. Außerdem werden vielversprechende Anweisungen für zukünftige Forschungsergebnisse vorhanden.“

Gu und Photo voltaic-Lezama schrieben die Zeitung mit der College of California an Berkeley Professor Koushik Sen und Doktoranden Naman Jain und Manish Shetty, Assistenz von Cornell College, Professor Kevin Ellis und PhD-Scholar Wen-Ding Li, Assistenz der Stanford College Assistenz Professor Diyi Yang und PhD-Scholar Yijia Shao, und incoming der Johns Hopkins College Assistenz Assistenz Assistenz Assistenz Ziyang LIYAGH. Ihre Arbeit wurde teilweise von der Nationwide Science Basis (NSF), der Sky Lab Industrial Sponsoren und Partnern, Intel Corp. über einen NSF -Stipendium und das Workplace of Naval Analysis unterstützt.

Die Forscher präsentieren ihre Arbeit auf der Internationalen Konferenz über maschinelles Lernen (ICML).

Von admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert