Onderwerpen
Home / Artikelen

Open-sourceprojecten weren AI-code: waarom en wat het zegt over AI-hulp

De moderators van r/opensource, een van de grote open-sourcegemeenschappen op Reddit, hebben afgelopen zaterdagavond nieuwe regels ingevoerd. De opvallendste is dat projecten die AI gebruiken, met AI gemaakt zijn of voor AI bedoeld zijn, er niet meer welkom zijn. AI zoals die nu bestaat past volgens de moderators niet bij hun gemeenschap. The Verge beschrijft hoe dat een storm van kritiek opleverde, tot een afgesplitste concurrent, r/trueopensource, aan toe.
Laptop met programmeercode op het scherm op een bureau
Foto: Chris Ried via Unsplash
Inhoudsopgave

Het is een extreme stap, en een die meer zegt over de zorgen in de open-sourcewereld dan over AI-code alleen. Want r/opensource is niet de eerste die de deur dichtdoet, en de redenen die eerder werden genoemd, zijn ook voor jou interessant als je zelf AI laat programmeren.

Wat r/opensource precies verbiedt

Het AI-verbod is breed. Een moderator legde in de reacties uit dat er ruimte is voor nuance, zoals software die toevallig AI gebruikt voor toegankelijkheid, bijvoorbeeld automatische ondertiteling. Maar critici wijzen erop dat zelfs de Linux-kernel inmiddels code bevat die met AI is gemaakt, waardoor in theorie elk project dat daarop draait onder het verbod valt.

Daarnaast kwamen er regels die niets met AI-code te maken lijken te hebben, maar er wel uit voortkomen. Projecten moeten minstens een jaar oud zijn, actief onderhouden worden en meerdere bijdragers hebben. En wie geen Engels spreekt, moet een andere gemeenschap zoeken. De moderators zeggen dat ze niet kunnen zien of een bericht door AI geschreven of door AI vertaald is, en dat iemand die geen Engels spreekt zelf niet kan controleren of de vertaling klopt.

Die laatste regel laat het echte probleem zien. Het gaat de moderators niet alleen om de kwaliteit van AI-code, maar om de hoeveelheid. Wie een gemeenschap beheert, kan de stroom aan AI-gegenereerde projecten en berichten simpelweg niet meer bijbenen.

Eerdere projecten gingen voor

Echte softwareprojecten trokken die grens al eerder, en hun motivatie is concreter. De Linux-distributie Gentoo verbood in april 2024 bijdragen die met hulp van AI-taalmodellen zijn gemaakt. In het beleid van Gentoo staan drie redenen. Ten eerste het auteursrecht, omdat nog niet duidelijk is van wie AI-code is en of die de licentie van het project kan ondermijnen. Ten tweede de kwaliteit, omdat taalmodellen goed zijn in het maken van inhoud die er plausibel uitziet maar niets betekent. En ten derde ethische bezwaren, van energieverbruik tot spam.

Het besturingssysteem NetBSD gaat net zo ver. Code die door een taalmodel als Copilot of ChatGPT is gegenereerd, geldt daar als besmet en mag alleen met voorafgaande schriftelijke toestemming van het kernteam worden toegevoegd.

De Linux-kernel kiest een andere weg. Daar mag AI-hulp wel, maar onder strikte voorwaarden. De richtlijnen van de kernel vragen dat je meldt welk deel van een bijdrage door een tool is gemaakt. Een AI-assistent mag nooit zelf tekenen voor de bijdrage. Alleen een mens kan juridisch verklaren dat de code mag worden ingebracht, en die mens is volledig verantwoordelijk voor wat er ingestuurd wordt. Als reden noemen de richtlijnen dat de tijd van reviewers schaars is en dat het helpt om te weten welk deel van een bijdrage van een mens komt.

Wat het zegt over de kwaliteit van AI-code

Leg die beleidsstukken naast elkaar en je ziet dat niemand beweert dat AI geen werkende code kan schrijven. Het probleem zit ergens anders. AI-code ziet er bijna altijd goed uit. Hij is netjes opgemaakt, heeft keurige namen en commentaar, en draait vaak ook. Juist daardoor vallen de fouten minder op, en moet iemand anders ze vinden.

Dat iemand is in open source een vrijwilliger die in zijn vrije tijd bijdragen nakijkt. Gentoo noemt het letterlijk een oneerlijke belasting voor ontwikkelaars en gebruikers om bijdragen te controleren op fouten die door AI zijn ontstaan. Een bijdrage die in tien minuten met AI is gemaakt, kan een reviewer een uur kosten. Kun je de inzender niets vragen omdat die zelf niet weet hoe zijn code werkt, dan wordt het nog lastiger.

Dat is ook de kern van het verschil tussen de aanpak van Gentoo en die van Linux. Gentoo verbiedt, Linux zegt dat je AI mag gebruiken zolang een mens alles begrijpt, controleert en ervoor tekent. De vraag is dus niet of je AI gebruikt, maar of iemand de uitkomst echt begrijpt.

Wat je hiervan leert als je zelf met AI programmeert

Bouw je met een chatbot of een codeerassistent een eigen website, script of app, dan gelden dezelfde lessen. Lees wat de AI maakt, ook als het werkt. Vraag de AI om uit te leggen wat elke functie doet en test het met invoer waar het mis kan gaan, zoals een leeg veld of een heel lange naam. Wees ook zuinig met de sleutels en accounts waar je een codeertool bij laat. Dat het daar mis kan gaan, bleek bij de gehackte AI-codeertool OpenCode.

Wil je bijdragen aan een open-sourceproject, lees dan eerst de bijdrageregels van dat project, meestal te vinden in een bestand dat CONTRIBUTING heet. Steeds meer projecten zeggen daar iets over AI. Meld het als je AI hebt gebruikt, ook als het niet verplicht is, en stuur alleen code in die je zelf kunt uitleggen.

Het verbod op r/opensource zal in deze vorm misschien niet lang standhouden, daarvoor is de kritiek te groot. Maar de vermoeidheid erachter is echt. Wie AI gebruikt om te programmeren, doet er goed aan om te bewijzen dat hij weet wat hij instuurt.

Redactie Zendis

Lees meer over onze redactie en werkwijze.