- Die QEMU-Community hat ihre Richtlinien kürzlich geändert. Die Nutzung von AI-Code-Generatoren (z. B. Copilot, ChatGPT usw.) sowie das Einreichen von mit diesen Tools erzeugtem Code sind verboten
define policy forbidding use of AI code generators
- Das Interesse an der Nutzung von AI-Code-Generatoren ist zuletzt stark gestiegen, doch die Lizenzrechtliche Einordnung ihrer Ausgaben ist in der Branche noch nicht breit akzeptiert
- Wichtige Anbieter behaupten, es gebe kein Problem und die Lizenz könne frei gewählt werden, doch bei ihnen besteht ein Interessenkonflikt
- Da AI-Code-Generatoren mit Daten trainiert werden, die unter verschiedenen Lizenzen stehen, fehlt weiterhin ein branchenweiter Konsens über die Lizenzprobleme der erzeugten Ausgaben
- QEMU verlangt im DCO (Developer Certificate of Origin), dass Mitwirkende eindeutig das Recht haben müssen, Code unter der Lizenz des Projekts beizutragen
- Es wird ausdrücklich darauf hingewiesen, dass sich bei mit AI-Code-Generatoren erzeugtem Code die Einhaltung der DCO-Klauseln b/c nur schwer nachweisen lässt
- Daher wurde eine Richtlinie eingeführt, nach der Codebeiträge zum QEMU-Projekt nicht zugelassen werden, wenn die Nutzung von AI-Code-Generatoren eindeutig ist oder vermutet wird
Flexibilität der Richtlinie und Ausnahmen
- AI-gestützte Softwareentwicklung befindet sich noch in einem frühen Stadium, sodass rechtliche Fragen künftig voraussichtlich geklärt werden
- Mit der Weiterentwicklung der Tools wird erwartet, dass einige Werkzeuge künftig in Open-Source-Projekten sicher einsetzbar sein werden
- Derzeit gilt zunächst eine strenge und sichere Richtlinie, die bei Bedarf später gelockert werden kann
- Ausnahmeanträge sollen einzeln geprüft werden, um über eine Zulassung zu entscheiden
1 Kommentare
Hacker-News-Kommentare
CONTRIBUTING.mdfolgende Richtlinie für LLM-Codebeiträge aufzunehmenLLM-Generated Contribution Policy
Die Color-Bibliothek ist eine Bibliothek voller komplexer Mathematik und subtiler Entscheidungen. Alle Issues und PRs müssen auf einem tiefen Verständnis der Einreichenden beruhen; insbesondere bei PRs müssen Entwickler für jeden Commit ein DCO bestätigen. Wenn ein PR mit Hilfe eines LLM erstellt wurde, muss dies sowohl in der Commit-Nachricht als auch im PR offengelegt werden. Wenn eine LLM-Unterstützung ohne Nachweis erkannt wird, wird der PR abgelehnt. Inhalte, die von einem LLM erstellt und ohne Review eingereicht werden, werden ausnahmslos abgelehnt
Auch in
Als jemand, der ein Projekt allein verantwortet, versuche ich, die Balance zu halten, aber persönlich mag ich LLM-Codebeiträge nichtSECURITY.mdsoll es als LLM-Generated Security Report Policy festgelegt werden, dass von LLM erzeugte Sicherheitsmeldungen grundsätzlich nicht angenommen werdenIch kann mir kaum vorstellen, dass jemand einen PR einreicht, ohne den eigenen Code zu verstehen. Deshalb nervt es mich etwas, dass ich wegen solcher Leute möglicherweise sogar beim Einsatz von LLMs auf Autocomplete-Niveau eingeschränkt werde.
Automatische Refactoring-Aufgaben würde ich Copilot gern überlassen, aber in meinen Tests macht es meist alles kaputt und erzeugt oft ganze neue Blöcke, sodass ich am Ende langsamer bin, als wenn ich es per Hand mache.
Interessanterweise vervollständigt Copilot oft sogar denselben Bug, wenn ich gerade dabei bin, einen Fehler einzutippen. Es ergänzt sogar offensichtliche kontextuelle Fehler wie Tippfehler in Variablennamen
Meine High-Level-Arbeit würde ich niemals einer KI überlassen, aber repetitive und weniger wichtige Aufgaben beschleunige ich damit. Wenn ich Claude Code etwa die CSV-Dateien mit Datenbank-Benchmark-Ergebnissen gebe und es bitte, verschiedene Diagramme samt Ausreißeranalyse zu verknüpfen, erledigt es schnell etwas, das konzeptionell einfach ist, aber viel Zeit kosten würde, weil man Bibliotheken finden und alles aufsetzen muss
Ich denke darüber nach, was „Code verstehen“ überhaupt bedeutet. In einem meiner Projekte integriere ich ein völlig neues Storage-Backend in ein bestehendes VM-Orchestrierungssystem. Ich kenne den vorhandenen Code nicht, habe auch kaum Zeit, alles selbst zu implementieren, aber ich baue Testcluster auf, lasse verschiedene Szenarien laufen und habe das Gesamtbild aus Design- und Testperspektive ausreichend im Blick
Ich bin selbst Open-Source-Maintainer und kann mir gut vorstellen, wie stressig es ist, wenn minderwertige LLM-„Slop“-PRs hereinkommen. Am Ende müssen Maintainer den Code immer reviewen, egal ob der Autor ihn versteht oder nicht.
Künftig muss man wohl Wege finden, solche Werkzeuge sinnvoll zu nutzen und gleichzeitig anderen Entwicklern zu signalisieren, welches Qualitätsniveau eingereichter Code hat. Eine Lehre aus subtilen Bugs im frühen Linux-ZFS-Port ist für mich, dass gründliche Tests extrem wichtig sind — genauso wichtig wie menschliches Review und das Schreiben des Codes selbst
Dotnet Runtime nimmt KI sehr aktiv an. Von außen mag das belächelt werden, aber man sollte beachten, dass hervorragende Ingenieure wie Stephen Toub und David Fowler das unterstützen.
Unternehmen würde ich raten, sich beim nächsten Besuch von IBM, wenn wieder KI-Services verkauft werden sollen, nach einem tatsächlich zukunftsorientierten Partner umzusehen.
Als jemand aus North Carolina hoffe ich einfach, dass IBM und Red Hat den richtigen Kurs finden
Ich verstehe Leute, die KI wegen des Rechtsrisikos meiden, frage mich aber, ob die Sorge nicht manchmal übertrieben ist. Wer glaubt, irgendeine Möglichkeit wirklich auf null reduziert zu haben, hat meiner Meinung nach noch nicht genug darüber nachgedacht
case-Anweisungen Muster erkennen und die Tipparbeit stark reduzierenMein Gehirn hat schließlich auch viel Closed-Source-Code „gelernt“, und ich halte die Urheberrechtsdebatte rund um KI für eine westliche NIMBY-Haltung. Wenn man mit solchen rechtlichen „Was-wäre-wenns“ großartige Technologie ablehnt, könnte am Ende sogar die westliche Zivilisation selbst Schaden nehmen
Unabhängig von einem Verbot von KI-Beiträgen braucht es meiner Meinung nach eher klare Bereiche, in denen „hier darf KI verwendet werden“. Das CI-Setup von QEMU ist zum Beispiel kein Kernbereich, in dem Sicherheit gewahrt werden muss. Für interessante und neue Testfälle oder Umgebungen könnte man KI unter bestimmten Bedingungen durchaus zulassen
Letztlich ist „Wir nehmen es vorerst nicht an“ für alle die weniger komplexe und weniger dramatische Entscheidung
Dazu werden die QEMU-Lizenz und eine Liste nichtfreier Lizenzen verlinkt
Ich frage mich allerdings, ob es überhaupt eine praktikable Möglichkeit gibt, KI-generierten Code und von Menschen irgendwo abgeschriebenen Code wirklich zu unterscheiden. Open Source lebt davon, dass jeder beitragen kann, und genauso können auch Menschen im Code von anderen Quellen beeinflusst sein
Aus heutiger Sicht hat KI-generierter Code für mich keine eigene, unabhängige Identität, sondern ist eher ein Werkzeug in der Hand von Menschen
Inzwischen ist selbst diese Metapher wohl schon zu lang ausgewalzt worden
Das ist ungefähr so, als würde ich eine Strichfigur zeichnen und mir dann sagen lassen: „Vielleicht hast du dafür die Strichfigur von jemand anderem kopiert, also hast du kein Recht, sie einzureichen.“
Der eigentliche Zweck der Richtlinie ist wohl, sich für den Fall abzusichern, dass irgendwann doch jemand etwas einreicht, das mit KI-Code vermischt ist, damit man sagen kann: „Da konnten wir leider nichts machen.“ Ich glaube kaum, dass die Verfasser selbst nicht wissen, wie bedeutungslos die Richtlinie in dieser Hinsicht ist
Abgesehen von den Rechtsfragen gibt es beim Einsatz von KI-Code klar noch viele andere Probleme