RECAP: An End-to-End Platform for Capturing, Replaying, and Analyzing AI-Assisted Programming Interactions
Het artikel introduceert RECAP, een open-source platform dat passief AI-chatsessies vastlegt en verenigt met fijnmazige codebewerkingen om interactieve herhaling en geavanceerde analyse van ontwikkelaar-AI-interactiemogelijkheden mogelijk te maken, zoals gevalideerd door een implementatie met 41 studenten.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat je probeert te begrijpen hoe een student koken leert door ze te observeren terwijl ze een slimme keukenassistent gebruiken. Als je alleen kijkt naar het eindgerecht (de code die ze hebben ingediend) of alleen de tekstberichten leest die ze naar de assistent hebben gestuurd (de chatlogs), mis je het hele verhaal. Je ziet niet welke ingrediënten ze hebben geprobeerd en weggegooid, de momenten waarop ze het advies van de assistent negeerden, of hoe hun kookstrategie in de loop van de tijd veranderde.
RECAP is een nieuw instrument dat deze blinde vlek moet oplossen. Het fungeert als een "black box"-recorder voor programmeurs die AI-coding-assistants (zoals GitHub Copilot) gebruiken binnen hun code-editor (VS Code).
Hier is hoe het werkt, opgesplitst in eenvoudige onderdelen:
1. De "Schaduw"-recorder (De camera)
Stel je de computer van de programmeur voor als een drukke keuken. Meestal slaat een programmeur alleen zijn werk op wanneer hij op "commit" drukt (alsof je elk uur een foto maakt van het gerecht). Dit mist al het hakken, proeven en verbranden dat er tussen gebeurt.
RECAP installeert een kleine, onzichtbare extensie genaamd de Copilot Interaction Archiver.
- Het volgt de chat: Het neemt elke vraag die de student aan de AI stelt en elk antwoord dat de AI geeft, op.
- Het volgt de code: Het maakt een "schaduw"-versie van de code die een momentopname maakt elke keer dat de student opslaat, of zelfs wanneer ze alleen maar typen en nog niet hebben opgeslagen.
- De magische link: Het verbindt de twee. Het weet dat om 14:00 uur de student de AI om een specifieke oplossing vroeg, en om 14:02 uur die exacte oplossing in de code verscheen. Het koppelt de "prompt" aan het "resultaat".
2. De tijdsreiskijker (De terugspoelfunctie)
Zodra de data is verzameld, kunnen onderzoekers de Session Replay Viewer gebruiken. Dit is als een terugspoelfunctie in een videospel, maar dan voor programmeren.
- Het tijdlijn: In plaats van alleen een lijst met bestanden te zien, zie je één enkele, kleurrijke tijdlijn.
- Blauwe stippen zijn vragen die aan de AI zijn gesteld.
- Gele stippen zijn code die door de AI is voorgesteld.
- Groene stippen zijn code die de mens zelf heeft getypt.
- De rondleiding: Een onderzoeker kan op afspelen klikken en de hele sessie van de student zien ontvouwen. Ze kunnen zien: "Ah, hier vroeg de student de AI om een bug te fixen, de AI stelde een oplossing voor, de student verwierp deze, probeerde het zelf, faalde, en ging toen terug naar de AI."
3. Wat hebben ze gevonden? (Het detectivewerk)
De onderzoekers testten dit instrument in een universiteitsklas met 41 studenten die aan een twee weken durend project werkten. Ze telden niet alleen hoe vaak studenten AI gebruikten; ze gebruikten de terugspoelfunctie om interessante patronen op te sporen die anders onzichtbaar zouden zijn gebleven:
- De "Vastzitten"-lus: Een student zat 11 minuten vast in een lus. Ze plakte een foutmelding, de AI repareerde het, een nieuwe fout verscheen, ze plakte die, en de cyclus herhaalde zich. De terugspoelfunctie toonde deze cirkelvormige strijd duidelijk, terwijl een eindcodebestand er gewoon uitzag als een voltooid project.
- De "Frankenstein"-aanpak: Een student gebruikte één AI (ChatGPT) om een groot plan te maken, en plakte dat plan vervolgens in een andere AI (Copilot) om de code te schrijven. De terugspoelfunctie koppelde deze twee verschillende tools, en liet zien hoe studenten AI-assistenten met elkaar combineren.
- Leren rijden: Naarmate het project vorderde, vertrouwden studenten minder op de AI om de daadwerkelijke code te schrijven. Ze gebruikten de AI meer om concepten uit te leggen en te plannen, wat suggereert dat ze leren om zelf het stuur in handen te nemen in plaats van de AI het stuur te laten houden.
Waarom dit belangrijk is
Voor RECAP waren onderzoekers als detectives die een misdaad probeerden op te lossen door alleen naar het misdaadplek (de eindcode) of het dagboek van de verdachte (de chatlogs) te kijken, maar nooit het daadwerkelijke gebeurtenis te zien.
RECAP biedt de volledige film. Het stelt educatoren en onderzoekers in staat om precies te zien hoe mensen en AI samenwerken over langere periodes, en onthult het rommelige, trial-and-error-proces dat leidt tot het eindresultaat.
Belangrijke opmerking: Het artikel benadrukt dat dit instrument momenteel is ontworpen voor VS Code en GitHub Copilot. Het is een open-source instrument voor onderzoekers en docenten om te bestuderen hoe mensen leren en werken, geen instrument om studenten te beoordelen of een medisch apparaat. De verzamelde data is strikt geanonimiseerd en beschermd om de privacy van studenten te waarborgen.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.