Die Erfahrungen unseres CTO mit generativer KI für die Codierung

Evan Davis, unser CTO, hat die neuesten KI-Technologien zur Lösung von Problemen in der Praxis eingesetzt. Er sprach kürzlich über seine Erfahrungen mit generative KI für die Codierungsarbeit mit dem Skim AI-Team und gibt einige seiner persönlichen Einblicke in die praktischen Anwendungen und potenziellen Fallstricke der Technologie. Mit diesem Gespräch und dem daraus resultierenden Blog möchten wir einen Einblick in dieses sich schnell verändernde Umfeld geben und insbesondere erläutern, warum Kodierung in dieser einfach zu bedienenden Ära der generativen KI nie mehr dasselbe sein wird.


Potenzial und Grenzen der generativen KI bei der Codierung

Generative KI, ein Teilbereich der künstlichen Intelligenz, konzentriert sich auf die Erstellung neuer Inhalte, von Kunstwerken bis hin zu Code, durch Lernen aus vorhandenen Beispielen. Evan hat in letzter Zeit Erfahrungen mit den besten generativen KI-Modellen wie ChatGPT-3.5, GPT-4, Github CoPilot, Amazon CodeFlüsterer, Bard und mehr hat sich die Technologie als wertvoller Verbündeter bei Codierungsaufgaben erwiesen. Dies ist ein wichtiger Hinweis, bevor wir auf einige der Einschränkungen eingehen. In ihrem jetzigen Zustand hat die generative KI einen großen Einfluss auf die Codierung, und sie wird sich im Laufe der Zeit weiterentwickeln und immer besser werden.


Für diejenigen, die über einige Programmierkenntnisse verfügen, kann die Technologie einen erheblichen Vorsprung bieten, indem sie potenziell etwa 80% der Aufgabe übernimmt und den Debugging-Prozess überschaubarer macht. Dies stimmt mit Branchenexperten überein, die glauben, dass generative KI die Art und Weise, wie wir an die Programmierung herangehen, revolutionieren, den Prozess beschleunigen und menschliche Fehler reduzieren wird.

Wie jede neue Technologie ist jedoch auch die generative KI nicht ohne Einschränkungen. In seiner persönlichen Erfahrung stellte Evan fest, dass die Technologie gelegentlich Code generierte, dem es an Logik mangelte, insbesondere bei weniger verbreiteten Bibliotheken. Die KI rief Phantomfunktionen auf - Funktionen, die in der Bibliothek nicht vorhanden waren - was zu Verwirrung und zusätzlichem Zeitaufwand bei der Entschlüsselung der Ausgaben führte. Dies ist eine bekannte Herausforderung in diesem Bereich, und die Forscher arbeiten weiter an der Verfeinerung der KI-Algorithmen, um solche Probleme zu lösen.


Die Rolle von GitHub Copilot und seine möglichen Auswirkungen

Evan erzählte auch von seinen Erfahrungen mit GitHub Copilot, einem KI-gesteuerten Programmierassistenten, der Zeile für Zeile Code vorschlägt. Seiner Meinung nach ist es weniger wahrscheinlich, dass er aus dem Ruder läuft, da er innerhalb der Grenzen des bestehenden Codes des Nutzers arbeitet.

Copilot wurde von GitHub und OpenAI entwickelt und schlägt auf der Grundlage des vom Benutzer angegebenen Kontexts zeilenweise Code vor, wodurch die Wahrscheinlichkeit von Fehlern verringert wird.


Die bevorstehende Veröffentlichung von Copilot X, das GPT-4 in Visual Studio Code integriert und über Sprachsteuerung verfügt, ist ein großer Fortschritt in diesem Bereich. Dieses Tool wird als sprachgesteuerter Programmierassistent fungieren und stellt einen wichtigen Schritt in Richtung einer umfassenderen Integration von KI in unsere Programmier-Workflows dar - ein Trend, der sich in der gesamten Technologiebranche immer mehr durchsetzt.

Generative KI: Der Rosetta-Stein von heute

Während des Gesprächs mit dem Team über generative KI zog CEO Greggory Elias eine interessante Analogie zwischen KI-generiertem Code und dem Stein von Rosetta, um die Möglichkeiten und Grenzen der Technologie zu veranschaulichen. So wie der Stein von Rosetta als Übersetzungsmechanismus für alte Sprachen diente, kann generative KI als Übersetzer für Programmiersprachen angesehen werden.

Generative KI funktioniert im Zusammenhang mit der Codierung ähnlich wie ein Übersetzer. Sie versucht, die Syntax, Konventionen und Redewendungen einer Sprache zu verstehen und sie in einer anderen wiederzugeben. Sie geht über eine einfache Wort-für-Wort-Übersetzung hinaus und zielt darauf ab, die Absicht, Logik und Struktur des ursprünglichen Codes zu erfassen.


Die Genauigkeit und Effektivität dieses Übersetzungsprozesses hängt jedoch in erheblichem Maße von der Verfügbarkeit und Reichhaltigkeit der spezifischen Programmiersprache oder Bibliothek in den Trainingsdaten der KI ab. Wenn die KI beispielsweise ausgiebig in Python und Java trainiert wurde, aber nur sehr wenig mit einer weniger verbreiteten Sprache wie Erlang zu tun hatte, kann es sein, dass sie Schwierigkeiten hat, Erlang-Code genau zu generieren oder zu übersetzen.

Die Qualität der Trainingsdaten: Ein entscheidender Faktor

Evan betonte auch die Bedeutung der Qualität der Trainingsdaten, die in die KI-Modelle einfließen. Das Internet ist reich an Code unterschiedlicher Qualität, und es ist eine große Herausforderung sicherzustellen, dass das KI-Modell auf qualitativ hochwertigem Code trainiert wird. Es wurde beobachtet, dass suboptimale Lösungen erzeugt werden können - sie funktionieren zwar, sind aber zu vereinfacht.

Nehmen wir zum Beispiel ein generatives KI-Modell, das darauf trainiert ist, Benutzer bei der Erstellung von SQL-Abfragen zu unterstützen. In der Vergangenheit erforderte die Erstellung der richtigen SQL-Abfrage jahrelanges Fachwissen, doch jetzt können Hunderttausende von Nutzern dies mit Hilfe generativer KI in wenigen Sekunden erreichen. Dies ist ein gewaltiger Schritt in Richtung Demokratisierung von Wissen und Fähigkeiten. Dieses Prinzip lässt sich über SQL hinaus auf alltäglichere Tools wie Microsoft Excel oder sogar Business Intelligence-Tools übertragen. Die Benutzer können bei der Erstellung komplexer Tabellen, Diagramme und Dashboards mit Leichtigkeit und Präzision unterstützt werden, was normalerweise fortgeschrittene Kenntnisse und Erfahrungen erfordert.


Wenn jedoch eine Bibliothek schlecht dokumentiert ist oder die Trainingsdaten der KI keine umfassenden Beispiele aus dieser Bibliothek enthalten, kann die KI weniger genauen oder weniger funktionalen Code produzieren. Diese Erkenntnis deckt sich mit allgemeineren Beobachtungen von KI-Forschern: Die Leistung eines KI-Modells hängt stark von der Fülle, Vielfalt und Qualität der Daten ab, mit denen es trainiert wurde.


Im Wesentlichen arbeitet generative KI, ähnlich wie menschliche Programmierer, besser mit Sprachen und Bibliotheken, mit denen sie besser vertraut ist. Dies unterstreicht die Bedeutung umfassender und qualitativ hochwertiger Trainingsdaten für die Entwicklung von KI-Modellen sowie die Bedeutung einer kontinuierlichen KI-Schulung und -Verfeinerung, wenn neue Sprachen auftauchen und bestehende sich weiterentwickeln. Im Großen und Ganzen trägt dies dazu bei, die Fähigkeit der KI zur Unterstützung der Nutzer bei verschiedenen Aufgaben kontinuierlich zu verbessern und ihre Effizienz und Produktivität zu steigern.

Eine neue Ära einläuten

Evans Erfahrungen mit generativer KI geben einen faszinierenden Einblick in das immense Potenzial und die damit verbundenen Herausforderungen dieser Technologie. Während sich der Bereich der KI weiter entwickelt, sind es Erfahrungen wie diese, die ihre Entwicklung leiten und sicherstellen, dass sie ein noch effektiveres Werkzeug für die Lösung realer Probleme wird

Generative KI-Modelle wie ChatGPT haben den Bedarf an Hunderttausenden von Programmierstunden und jahrelanger Spezialisierung in Bibliotheken sowohl für Programmierer als auch für Endnutzer erheblich reduziert. Dieser Wandel stellt einen gewaltigen Sprung nach vorn in der Zugänglichkeit und Benutzerfreundlichkeit von Programmieranwendungen dar.


Ein Blick auf die Ergebnisse aus unserem Artikel "ChatGPT und Bard bergen Gefahren für Programmierer" unterstreicht diesen Punkt. Beide KI-Modelle haben gezeigt, dass sie in der Lage sind, effektiv Code zu generieren, wodurch unzählige Stunden menschlicher Programmierarbeit entfallen können und bemerkenswerte Ergebnisse erzielt werden. Mit der weiteren Verbesserung dieser Technologien können wir einen noch größeren Einfluss auf die Einfachheit und Geschwindigkeit von Programmieraufgaben erwarten.


Das Aufkommen und die kontinuierliche Weiterentwicklung der generativen KI könnte eine neue Ära in der Welt der Programmierung einläuten, die durch beschleunigte Innovation und Inklusivität gekennzeichnet ist. Durch die Senkung der Einstiegshürden und die Vereinfachung des Programmiervorgangs versprechen diese fortschrittlichen KI-Modelle eine Zukunft, in der Programmierkenntnisse keine Voraussetzung mehr für die Entwicklung digitaler Lösungen sind. Auf dem Weg in diese aufregende Zukunft müssen wir am Puls dieser sich schnell entwickelnden Technologie bleiben und ihr transformatives Potenzial weiterhin nutzen.

de_DEDeutsch