Wetenschap
Interview softwareonderzoeker Panichella

‘ChatGPT krijgt weinig kritiek, terwijl de uitkomsten soms echt niet kloppen’

In een veel gedownload artikel waarschuwen Delftse wetenschappers voor blind vertrouwen in kunstmatige intelligente programmeerhulpjes zoals ChatGPT. “Testen blijft nodig”, benadrukt softwareonderzoeker dr. Annibale Panichella.

Softwareonderzoekers Annibale Panichella (links) en June Sallou stellen het gebruik van AI-programmeerhulpjes ter discussie. (Foto: Jaden Accord)

Door een gelukkig toeval lijken moderne programmeertalen zoveel op gewone taal dat dezelfde technieken die in een taalmodel read-more-closed als ChatGPT zitten ook toepasbaar blijken op computer code. Dus: stel een taalmodel bloot aan heel veel computerprogramma’s en het leert vanzelf programmeren. Net als een kleuter leert praten. Populaire AI-programmeerassistenten als Github, CoPilot en ChatGPT zijn daar voorbeelden van.

Maar waar heeft een programmeerassistent zijn talenkennis eigenlijk opgedaan? In onderzoektermen: wat zijn de trainingsdata? Die worden meestal niet bekendgemaakt, en daar zitten onderzoekers in toenemende mate mee in hun maag.

Ze weten bijvoorbeeld dat opeenvolgende versies van programma’s gebruikt zijn als input, dus ook de software die naderhand vervangen is vanwege fouten of zwakke plekken voor hackers. Ook kunnen er tests voor software in de training zijn beland. Dat kun je vergelijken met theorie-rijexamen doen met een bekende oefenopgave. Data-lekkage noemen programmeurs dat.

‘ChatGPT geeft niet altijd hetzelfde antwoord op dezelfde vraag. Normaal zou je uitzoeken hoe dat komt’

Vanwege dit soort opkomende twijfel schreef dr. Annibale Panichella samen met zijn collega’s dr. June Sallou en dr. Thomas Durieux een spraakmakend artikel. Het wordt in april op de International Conference on Software Engineering (ICSE) in Lissabon gepresenteerd, maar nu al telt het document honderden downloads vanaf de TU Delft repository.

De drie auteurs werken op de afdeling software engineering van de faculteit Elektrotechniek, Wiskunde en Informatica (EWI). Delta sprak met dr. Panichella, om te horen waar de belangstelling voor het artikel vandaan komt.

Het artikel heet ‘Breaking the silence’. Over welke stilte gaat het?

“Mensen hebben veel vertrouwen in generatieve kunstmatige intelligentie, zoals ChatGPT. Ook onderzoekers zijn over grote taalmodellen of LLM’s (large language model, red.) vaak minder kritisch dan over andere technieken. ChatGPT krijgt weinig kritiek, terwijl de uitkomsten soms echt niet kloppen.

Zo geeft ChatGPT niet altijd hetzelfde antwoord op dezelfde vraag. Normaal zou je uitzoeken hoe dat komt door een vraag vaak te stellen en de uitkomsten met elkaar te vergelijken. Maar bij een groot taalmodel doen mensen dat niet. Ze herhalen hun opdracht een paar keer en kiezen er het beste resultaat uit. En niemand vindt dat raar.”

Waarom moet die stilte doorbroken worden?

“Als ik hierover begin, bijvoorbeeld tijdens een presentatie, zeggen mensen vaak dat het een goede opmerking is. Toch accepteren ze de uitkomsten omdat ze nu eenmaal niet kunnen weten hoe het model getraind is en met welke datasets.

Ik vind dat oneerlijk. Als ik namelijk traditionele algoritmes gebruik om een kunstmatige-intelligentiemodel te trainen luidt de eerste vraag: ‘welke training set heb je gebruikt? En waarmee is het model getest?’ Maar wanneer large language models gebruikt worden vraagt geen mens dat.”

Is het gebruik van ChatGPT en dergelijke standaard geworden bij programmeren?

“Zelf gebruik ik het veel, bijvoorbeeld als ik een stuk software schrijf en delen wil automatiseren. Dan vraag ik een LLM: kun je de code schrijven die dit en dit doet? Naderhand kijk ik of de code werkt. Die check is, zoals ik zei, een essentiële stap.”

‘Studenten kunnen de code van ChatGPT nooit klakkeloos vertrouwen’

Wat betekent dit voor programmerende studenten?

“Studenten die gebruikmaken van programmeerassistenten moeten zich ervan bewust zijn dat de code kwetsbaar kan zijn voor hackers, of zelfs fouten kan introduceren. Dat komt omdat de taalmodellen getraind zijn met meerdere versies van dezelfde software, waarvan een aantal bekende kwetsbare plekken hebben. Studenten kunnen de code van ChatGPT dus nooit klakkeloos vertrouwen. Ze moeten de code altijd nalopen. Testen blijft nodig.”

Hoe reageerden uw collega-onderzoekers op het artikel?

“De meesten zijn het met ons eens dat er richtlijnen moeten komen voor het gebruik van LLM’s in software engineering. Anderen vrezen dat zulke richtlijnen het nog moeilijker maken om hun onderzoek gepubliceerd te krijgen. Ze zullen dan moeten aantonen dat ze tijdens hun hele onderzoek aan die richtlijnen hebben voldaan.”

Wetenschapsredacteur Jos Wassink

Heb je een vraag of opmerking over dit artikel?

j.w.wassink@tudelft.nl

Comments are closed.