Codex - Sprich den Code

Do, 12. August 2021, Ralf Hersel

Als ich 1993 mein Informatikstudium beendete, gab uns unser Professor für 'Grundlagen der Informatik' einen sarkastischen Tipp mit auf den Weg: "Wenn ihr die Datensklaven des Jahres 2000 werden wollt, dann werdet Programmierer". Knapp 30 Jahre später scheint sich seine Vorhersage zu bewahrheiten.

Im Juni 2021 hat Microsoft in Github den Code-Assistenten 'Copilot' vorgestellt. Dieses Machine-Learning-System durchforstet den immensen Code-Bestand in den Github-Repositories und schlägt daraus Programm-Schnipsel für die Verwendung im eigenen Programmcode vor. Microsoft bezeichnet dieses Programm als 'künstlichen Mit-Programmierer' (AI pair programmer).

Hinter Copilot steckt die Firma OpenAI, die mit dem Sprachmodell 'Generative Pre-trained Transformer 3' (GPT-3) die Grundlage für den Copiloten bildet. Während Copilot Vorschläge auf der Basis von existierendem Code macht, geht das System Codex von OpenAI einen Schritt weiter.

Als Input dient hier die natürliche Sprache. Geschriebene Eingaben wie:

Add this image of a rocketship: datei.jpg. Make it be smallish. Crop it circularly.

.. führt zu dieser Ausgaben in JavaScript (die Eingaben werden als Kommentare vorangestellt):

OpenAI beschreibt das Codex-System wie folgt:

Wir haben eine verbesserte Version von OpenAI Codex erstellt, unserem KI-System, das natürliche Sprache in Code übersetzt, und wir veröffentlichen es ab heute über unsere API in einer privaten Beta. Codex ist das Modell, das den GitHub Copilot antreibt, den wir vor einem Monat in Zusammenarbeit mit GitHub entwickelt und eingeführt haben. Codex beherrscht mehr als ein Dutzend Programmiersprachen und kann nun einfache Befehle in natürlicher Sprache interpretieren und sie im Namen des Nutzers ausführen - so ist es möglich, eine natürlichsprachliche Schnittstelle zu bestehenden Anwendungen zu erstellen. Wir laden nun Unternehmen und Entwickler dazu ein, über unsere API auf OpenAI Codex aufzubauen.

Zu den unterstützten Programmiersprachen gehören unter anderem JavaScript, Python, Go, Perl, PHP, Ruby, Swift und TypeScript, wobei Python am besten umgesetzt werden kann. Zurzeit läuft ein privater Beta-Test, für den sich interessierte Teilnehmerinnen in eine Warteliste eintragen können.

Welche Auswirkungen Systeme wie Copilot und Codex auf die Programmierszene haben werden, sollte jetzt in der Community diskutiert werden. Hier gilt es lizenzrechtliche und gesellschaftliche Implikationen zu berücksichtigen. Die schnelle Entwicklung in der Maschinen-gestützten Programmierung scheint meinem alten Professor recht zu geben. Es wird das Selbstverständnis von Entwicklern auf die Probe gestellt.

Quelle: https://openai.com/blog/openai-codex/