Heim  >  Artikel  >  Technologie-Peripheriegeräte  >  Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert

Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert

王林
王林nach vorne
2024-04-09 18:10:021195Durchsuche

Den neuesten Entwicklungen im Technologiekreis nach zu urteilen, ist das Konzept der KI-Codegenerierung in letzter Zeit sehr populär geworden.

Aber Freunde, haben Sie das Gefühl, dass Fragen zur KI-Programmierung auffälliger sind, aber wenn es um reale Unternehmensentwicklungsszenarien geht, haben Sie immer das Gefühl, dass sie nicht ausreichen?

In diesem Moment ergriff ein zurückhaltender Senior-Spieler aiXcoder Maßnahmen und veröffentlichte einen großen Schritt:

Es handelt sich um ein neues Open-Source-Großcodemodell – aiXcoder-7B Basisversion , ein Modell, das speziell für die Unternehmenssoftwareentwicklung geeignet ist Ein großes Modell des in der Szene bereitgestellten Codes.

Moment mal, welchen KI-Programmierstand kann ein großes Codemodell mit „nur“

7 Milliarden Parametern aufweisen?

Werfen wir zunächst einen Blick auf die Leistung bei den drei Mainstream-Bewertungssätzen HumanEval, MBPP und MultiPL-E. Sein

Durchschnittswert übertrifft tatsächlich Codellama, das 34 Milliarden Parameter hat.

Sie müssen wissen, dass Letzteres von Meta stammt und auf Llama2 basiert, dem fortschrittlichsten großen KI-Programmiermodell in der Open-Source-Branche.

Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert

Dieses Modell hat nicht nur viele große Open-Source-Modelle besiegt und ist mit zig Milliarden Codes das stärkste unter den großen Modellen geworden, es hat auch besondere Vorteile:

Änderungen gegenüber der traditionellen „Frage“. -basierte“ Codegenerierung ist speziell auf „Softwareprojekte auf Unternehmensebene“ ausgerichtet und funktioniert am besten in realen Entwicklungsszenarien "

(Nr. 1) . Die Implikation ist, dass aiXcoder-7B nicht „virtuell“ spielt und die realen Geschäftsszenarien von Unternehmen abbilden kann. Zum Beispiel gewann aiXcoder-7B im Bewertungssatz CrossCodeEval, der dem realen Entwicklungsszenario nahe kommt, auf einen Schlag die besten Ergebnisse des gleichen Level-Modells:

Das stärkste Code-Großmodell mit Dutzende Milliarden ParameterDas leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiertWerfen wir zunächst einen Blick auf das große Modell.

Was dieses Mal veröffentlicht und als Open-Source-Version bereitgestellt wird, ist die Basisversion von aiXcoder-7B

(die entsprechende Instruct-Version wird ebenfalls später veröffentlicht)

, und das Überraschendste daran ist:

Zusätzlich zur Codegenerierungsfunktion SOTA - Es hat nicht nur das Mainstream-Bewertungszentrum für verschiedene algorithmische Fragen gewonnen, und was noch wichtiger ist: In komplexen Codeszenarien mit mehreren Dateien, die mit realen Unternehmensentwicklungsszenarien übereinstimmen, schneidet aiXcoder-7B in Parametermodellen derselben Größenordnung sogar noch besser ab!

Sie müssen wissen, dass die praktischste Fähigkeit von KI-Programmiertools derzeit die Generierung und Vervollständigung ist, einschließlich der direkten Generierung vollständiger Methodenblöcke, bedingter Beurteilungsblöcke, Schleifenverarbeitungsblöcke, Ausnahmefangblöcke usw.

In realen Entwicklungsszenarien benötigen wir es insbesondere, um verschiedene zugehörige Dateien im gesamten Entwicklungsprojekt zu verstehen und diese dann zu generieren.

Tests zeigen, dass die Code-Vervollständigungsfähigkeit der Basisversion von aiXcoder-7B in Kombination mit dem Einzeldateikontext StarCoder2, CodeLlama und andere Modelle übertrifft und die höchste Gesamtpunktzahl in den Sprachen Python, JS und Java aufweist.

Dies ist das Ergebnis des SantaCoder-Auswertungssatzes. Als ob das nicht genug wäre, schlug das aiXcoder-Team auch einen größeren Datensatz zur Vervollständigung der Evaluierungscodegenerierung Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert (mehr als 16.000 Daten aus realen Entwicklungsszenarien)

zur weiteren Auswertung vor, und der Effekt war noch offensichtlicher.

Heute ist das Evaluierungsset zusammen mit dem Modell auch Open Source Jeder ist herzlich willkommen, vorbeizukommen und herauszufordern. ~ Erwähnenswert ist, dass das Team auch speziell für uns ein „Osterei“ geöffnet hat ist die Basisversion von aiXcoder-7B. Bei der Erledigung von Aufgaben neigen wir dazu, kürzere Codes zu verwenden, um die Aufgabe zu erledigen. Es gibt eine inhärente „Schönheit der Einfachheit“.

Die Vorteile liegen auf der Hand: Für Programmierer ist es einfacher zu verstehen und Fehler lassen sich leichter erkennen.

Einfach für private Bereitstellung und personalisierte Anpassung

Warum ist Open Source ein so gutes Codemodell? Das aiXcoder-Team erklärte, es sei sein Wunsch, mehr Entwicklern dabei zu helfen, ihre Arbeitsbelastung zu reduzieren! Dieses Mal ist der Grund, warum das 7B-Codemodell auf großer Projektebene Open Source ist, darin, es „für Unternehmensentwickler bequem zu verwenden“.

Seine Funktionen lassen sich in drei „einfachen“ Begriffen zusammenfassen:

Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiertErstens einfach zu implementieren.

Codedaten sind die privaten Kernrechte des geistigen Eigentums von Unternehmen. Daher sind privatisierte Bereitstellung und Lernen unvermeidlich, und in der Regel sind die Bereitstellungsressourcen von Unternehmen begrenzt.

Die Basisversion von

aiXcoder-7B hat nur eine Parametergröße von 7B, ist sehr leicht und einfach bereitzustellen und bietet die Vorteile niedriger Kosten und guter Leistung.

Zweiter Punkt: Einfache Anpassung.

Viele Unternehmen verfügen über eigene Softwareentwicklungs-Frameworks und API-Bibliotheken, und die damit verbundenen Geschäftslogik- und Code-Architekturspezifikationen sind an die örtlichen Gegebenheiten angepasst und sehr personalisiert. Gleichzeitig sind diese Inhalte privat.

Das große Modell muss diese Unternehmenscode-Assets erlernen und durch effektives personalisiertes Training kann es wirklich vom Unternehmen genutzt werden. Die Basisversion von

aiXcoder-7B bietet so einfache Anpassungsfunktionen.

Darüber hinaus ist die Montage einfach. Das Team von aiXcoder hat herausgefunden, dass bei der Bereitstellung von Unternehmensdiensten in der Zukunft mehrere 7B-Modelle eine MoE-Architektur bilden und zu einer Reihe von Lösungen kombiniert werden können, um unternehmensspezifische Dienste zu vervollständigen.

Verschiedene Unternehmen können große Modelllösungen mit MoE-Versionscode erhalten, die ihren individuellen Anforderungen entsprechen.

Es wird davon ausgegangen, dass die Basisversion von aiXcoder-7B den Open-Source-Weg einschlägt und sich auf den B-Seiten-Markt konzentriert und in Zukunft eine Unternehmensversion herausbringt.

Auf diese Weise stellt aiXcoder Benutzern auf Unternehmensebene weiterhin genaue, effiziente und kontinuierliche Softwareentwicklungsdienste zur Verfügung und hilft ihnen, die Entwicklungseffizienz und Codequalität ihrer Projekte kontinuierlich zu verbessern.

Zum Beispiel hat ein führendes Wertpapierunternehmen in einer Branche, die sich im digitalen Wandel befindet, die Großmodelllösung von aiXcoder übernommen, um Code-Großmodelle in der lokalen Umgebung zu privatisieren und bereitzustellen, und eine flexible Anpassungsmethode für das Modell eingeführt, um das intelligente Entwicklungssystem zu schaffen und Nutzen Sie die Teamgröße, um synchron zu bleiben.

Diese Bereitstellungsmethode stellt nicht nur sicher, dass genügend Rechenleistung zur Verfügung steht, sondern vermeidet auch die durch hohe Hardware-Schwellenwerte verursachten Herausforderungen und kann auch den täglichen Codierungsbedarf von Unternehmen decken.

Das vorhandene Feedback zu Implementierungsdaten zeigt, dass nach personalisierter Schulung in Kombination mit dem unternehmenseigenen Domänenwissen der Anteil der Codegenerierung im Geschäftslogikcode im Vergleich zu zuvor

zweimal gestiegen ist

. Was ist nach dem Lesen der Ergebnisse die tatsächliche Wirkung des Modells? Als Nächstes finden Sie hier einige Demos, um Ihnen ein Gefühl zu vermitteln.

Zuallererst kann die Basisversion von aiXcoder-7B immer komplexere Codekontextinformationen verstehen und Codegenerierung und -vervollständigung durchführen: Die durch das Modellvortraining unterstützte Kontextlänge beträgt 32 KB, und die Erweiterung der Inferenzphase kann 256 KB erreichen.

Wie in der folgenden Abbildung gezeigt, können wir, wenn wir mehrere Toolfunktionen verwenden, um mehr als 1.500 Codezeilen zusammenzustellen, und am Ende der Datei einen Kommentar abgeben, um auf das Modell zuzugreifen, die relevanten Funktionen oben im Modell genau identifizieren Datei und vervollständigen Sie die Informationen basierend auf der Funktion Zugehörige Methoden.

Zweitens ist in Unternehmensentwicklungsszenarien die Fähigkeit zur dateiübergreifenden Analyse wichtiger, mit der automatisch identifiziert und extrahiert werden kann, was aus mehreren Codedateien benötigt wird. Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert

Wie in der folgenden Abbildung gezeigt, müssen wir dynamische Programmierung auf die Baumstruktur anwenden, um die Suche nach Bearbeitungsentfernungen zu implementieren, und das Modell die dynamische Programmierzustandsklasse des Verzeichnisknotens in der Baumstruktur vervollständigen lassen.

Das Modell identifiziert genau die Beziehung zwischen der Berechnung des Bearbeitungsabstands und der Berechnung des Mindestwerts innerhalb des rollierenden Arrays in einer anderen Datei und liefert so das korrekte Vorhersageergebnis durch die Kombination der beiden nicht aktuellen Dateien.

Das Obige ist noch nicht vorbei, die Fertigstellung der Basisversion von aiXcoder-7B ist immer noch ziemlich Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert

intelligent

. Wenn beispielsweise die Akzeptanzsituation des Benutzers angepasst wird, wird die Abschlusslänge automatisch basierend auf der aktuellen Akzeptanzsituation angepasst.

Gleichzeitig kann es als Code-Vervollständigungsexperte auch anhand der Fließfähigkeit der Benutzereingabe Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert (d. h. der Pausenzeit)

beurteilen, ob der Benutzer derzeit eine Vervollständigung benötigt, und löst keine Funktionen nach Belieben aus, um sie zu unterbrechen Unser Arbeitsstatus.

Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert

Ich muss sagen: Es riecht so gut. Das leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert

Was die Mehrheit der Programmierer wirklich braucht, ist ein KI-Programmiertool wie aiXcoder

, das nicht nur allgemeinen Code versteht, sondern auch den Code „unseres Unternehmens“

.

Wie entsteht also so ein bodenständiges Modell?

Das Team gab bekannt, dass dieses Modell vollständig selbst entwickelt wurde.

Zuerst sind es die Trainingsdaten

:

umfasst insgesamt 1,2T Einzigartige

Tokens. Im 7B-Parameterebenenmodell ist die Menge an Trainingsdaten sehr groß .

Das Team erzielte bei diesen Daten nicht nur „Quantitätssiege“, sondern auch einen „Qualitätssieg“: Es verbrachte viel Zeit mit der Syntaxanalyse und Filterung für Dutzende gängiger Sprachen und die statische Analyse beseitigte 163 Fehler und 197 Fehler.

Zweitens ist die gezielte Trainingsmethode Das Team führte speziell Code-strukturiertes semantisches Training für Code auf Projektebene in der realen Umgebung durch, um den Modelleffekt vollständig sicherzustellen.

Schließlich wurde im Trainingsprozess das Problem der Verarbeitung mehrerer Dateien von Anfang an vollständig berücksichtigt und die gegenseitige Aufmerksamkeitsbeziehung zwischen mehreren Dateien durch die Kombination von Clustering, Code Calling Graph und anderen Methoden aufgebaut.

Schließlich wurde die Basisversion von aiXcoder-7B geboren, die besser für reale Entwicklungsszenarien geeignet ist.

Das Team hinter aiXcoder

Bei der Betrachtung der Akteure hinter diesem Modell stellten wir fest, dass der Ursprung nicht einfach ist:

Zunächst einmal wurde das aiXcoder-Team vom Software Engineering Institute der Universität Peking gegründet und engagiert in der Codegenerierung seit 2013. Der weltweit erste auf Deep Learning basierende Artikel zur Codegenerierung stammt von ihnen. ACL, IJCAI, ICSE, FSE, ASE usw. Dieses Papier wurde von internationalen Wissenschaftlern als „erste Errungenschaft“ angesehen und vielfach zitiert. Er wurde mehrfach mit dem ACM Outstanding Paper Award ausgezeichnet.

Man kann sagen, dass man Kraft und Stärke braucht und dass man Erfolge und Erfolge braucht. Im Jahr 2017 wurde der ursprüngliche Prototyp von aiXcoder –

aiXcoder1.0

– veröffentlicht, der automatische Codevervollständigung und Suchfunktionen bietet.

Im April 2021 brachte das Team eine milliardenschwere Parametercode-Großmodell-aiXcoder-L-Version mit völlig unabhängigen geistigen Eigentumsrechten, unterstützender Codevervollständigung und Empfehlung in natürlicher Sprache auf den Markt. Dies ist auch das erste inländische kommerzielle Produkt für intelligente Programmierung, das auf einem „großen Modell“ basiert.

Dann arbeitete das Team weiter hart und brachte im Juni 2022 das erste Parametermodell auf Zehn-Milliarden-Ebene in China auf den Markt, das die Codegenerierung auf Methodenebene unterstützt – die Version „aiXcoder XL“ –, die auch über völlig unabhängige geistige Eigentumsrechte verfügt . Im Juli 2023 startete das aiXcoder-Team aiXcoder Europa

, das sich auf

Unternehmensanpassung konzentriert und Funktionen wie automatische Codevervollständigung, automatische Codegenerierung, Erkennung und Reparatur von Codefehlern sowie automatische Generierung von Komponententests bietet. Es versteht sich, dass aiXcoder Europa Unternehmen privatisierte Bereitstellungs- und personalisierte Schulungsdienste basierend auf den Anforderungen der Unternehmensdatensicherheit und der Rechenleistung bieten kann, wodurch die Anwendungskosten großer Codemodelle effektiv gesenkt und die Forschungs- und Entwicklungseffizienz verbessert werden.

Bis heute wurde die Basisversion von aiXcoder-7B geboren. In der hellen Galaxie der Wissenschaft und Technologie ist jeder technologische Durchbruch wie die Geburt eines neuen Sterns, der die unendlichen Möglichkeiten der Zukunft beleuchtet.

Angesichts der zunehmenden Leistungsfähigkeit großer Codemodelle spielt ihre hervorragende Leistung bei der Lösung komplexer Programmierprobleme nicht nur eine wichtige Rolle bei der Verbesserung der Effizienz und Qualität der Softwareentwicklung, sondern spielt auch eine Schlüsselrolle bei der Förderung der Programmierautomatisierungswelle stimuliert auch das Innovationspotenzial von Programmierern und ermöglicht es ihnen, mehr Energie für die Erforschung und Kreation aufzuwenden.

Mit anderen Worten: aiXcoder-7B, dieses hochmoderne Codemodell, beschleunigt nicht nur den Prozess der Automatisierung der Softwareentwicklung, sondern gestaltet auch die Ökologie der Technologiebranche neu und führt den zukünftigen Entwicklungstrend an:

Accelerate the Implementierung der Automatisierung der Softwareentwicklung

. Dies ist nicht nur der allgemeine Trend der Branche, sondern auch die unvermeidliche Entscheidung für die Entwicklung.

Ehrenhaft stehen wir vor diesem Wendepunkt und sind Zeugen des Aufstiegs und der Verwirklichung dieses Trends.

aiXcoder Open-Source-Link

:

https://github.com/aixcoder-plugin/aiXcoder-7Bhttps://gitee.com/aixcoder-model/aixcoder-7bhttps: / /www.gitlink.org.cn/aixcoder/aixcoder-7b-model

Das obige ist der detaillierte Inhalt vonDas leistungsstärkste Open-Source-Codemodell aiXcoder-7B der Universität Peking! Konzentrieren Sie sich auf reale Entwicklungsszenarien und sind speziell für die private Bereitstellung in Unternehmen konzipiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen