Starcoder: Eigene Coding-Assistenten trainieren und nutzen

Wir zeigen, wie Sie Coding-Assistenten mit QLoRa feintunen und im Zusammenspiel mit Containersoftware und MLOps-Werkzeugen schnell unternehmensweit einsetzen.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht 1 Kommentar lesen
Lesezeit: 11 Min.
Von
  • Ramon Wartala
Inhaltsverzeichnis

KI-basierte Coding-Assistenten wie GitHub Copilot sind praktisch. In die Lieblings-IDE eingebettet, erzeugen sie während des Tippens im Quellcode Vorschläge. Es genügt, einen Kommentar oder einen Funktionsaufruf zu beginnen und kurz innezuhalten. Der Coding-Assistent übermittelt den Kontext und zeigt dem Benutzer einen Vorschlag inline an. Zum Übernehmen reicht ein Druck auf die Tab-Taste; möchte man den Code nicht, schreibt man einfach weiter.

Was GitHub Copilot (noch) nicht erlaubt, ist das Feintuning mit eigenen Daten, also das Anpassen auf die Codekonventionen des Unternehmens oder auf selbst entwickelte Bibliotheken und Programme. Und selbst wenn Microsoft oder OpenAI dies einmal anbieten sollten, ist es fraglich, ob man dann wirklich bereit ist, seinen Code mit externen Anbietern zu teilen. Das gilt nicht nur wegen etwaiger Geschäftsgeheimnisse, sondern auch wegen der DSGVO, denn gar nicht so selten verstecken sich im Code auch personenbezogene Daten.

Mehr zum Thema KI-Sprachmodelle:
Ramon Wartala

Ramon Wartala ist Director Data Science bei Accenture Song in Hamburg. Als Berater entwirft und implementiert er mit seinem Team Datenarchitekturen für Machine-Learning-Lösungen seiner Kunden.

Die Alternative sind vortrainierte Open-Source-Modelle, von denen es inzwischen eine ganze Reihe gibt. Das größte ist StarCoder von BigCode, einer Kooperation von ServiceNow und Hugging Face. StarCoder wurde mit "The Stack" trainiert – einem Datensatz, den das BigCode-Projekt zusammengetragen hat. Er enthält Code in 358 Programmiersprachen über 80 wurden zum StarCoder-Training benutzt. BigCode gibt an, zum Training ausschließlich Code verwendet zu haben, der unter einer permissiven Open-Source-Lizenz wie der BSD- oder Apache-Lizenz steht, um urheberrechtliche Probleme zu vermeiden.