Modellen gaan niet rogue

Bijschrift: Een groep mannen die papegaaien in een specifieke richting lijken te gooien, alsof ze ze laten racen. Foto door AlaDin Habboubi / Unsplash

Stochastische zwermen en cybersecurity-'pandemonium'

Dit essay is gebaseerd op mijn deelname aan de podcast The Data Fix van Mél Hogan, waarin we de hack van OpenAI / Hugging Face bespreken.

OpenAI heeft deze week het volledige technische rapport over de Hugging Face-hack gepubliceerd, samen met een onafhankelijk rapport van Model Evaluation & Threat Research (METR). Je bent wellicht bekend met het incident via de honderden sensationele koppen over "rogue AI" – Dwarkesh Patel, die op de lijst van "100 meest invloedrijke mensen in AI" van Time Magazine staat, schreef het toe aan "drie opeenvolgende geheime AI-beschavingen."

Het echte verhaal: OpenAI testte twee modellen parallel: GPT-5.6 Sol en een intern model dat ze IM1 (soms HPIM) noemen. Uit de rapporten blijkt dat ongeveer 95% van de agents die betrokken waren bij deze activiteit afkomstig waren uit het interne model.

De tests komen uit ExploitGym: 898 puzzels opgezet als capture-the-flag-oefeningen, gebruikt om deze modellen te evalueren op hun cybersecurity-mogelijkheden. De test vereist dat het model buggy software krijgt waarbij tekst ergens verborgen is die alleen toegankelijk is door de bug te exploiteren. Maar de combinatie van modellen van OpenAI eindigde ermee dat ze een concurrent, Hugging Face, hackten. Inmiddels hebben we een duidelijker beeld van hoe dat is gebeurd.

Ging een AI "rogue"?

Drie zaken in deze rapporten dagen het frame van de "rogue AI" uit.

1. OpenAI schakelde alle veiligheidsmechanismen van het model uit. Het hele doel van de test is om te zien hoe ver deze systemen kunnen gaan en om hoog te scoren op de benchmark — want de logica is: als je een model kunt bouwen dat hackt, kun je er een bouwen dat verdedigt. Dit is red teaming: een vriendelijke oppositie die zich naar de vlag toe hakt. Daarom schakel je alles uit wat het model zou kunnen tegenhouden. Dit is minder "rogue" en meer "van de riem gelaten".

2. OpenAI gaf het model onmogelijke taken. OpenAI gaf de modellen een taak zonder antwoord en zonder manier om te stoppen. Van de 898 ExploitGym-taken zijn er 198 nog nooit door enig model opgelost; ze zijn effectief onmogelijk. Dat is waar de problemen begonnen: 93% van de taken die de modellen uiteindelijk bespraken, kwamen uit deze onoplosbare set. Een tekststring gerapporteerd door METR erkent dat zodra de taak als onmogelijk werd herkend door een agent/instantie, deze ombuog, net als talrijke andere agent-instanties.

3. OpenAI liet een deur openstaan. Ze geven hun modellen internettoegang via iets dat lijkt op een gevangeniswinkel. Deze modellen zouden afgesloten zijn van internettoegang, maar ze moeten code van diverse webpagina's kunnen ophalen om geëvalueerd te worden — precies die capaciteit wordt getest.

Er is dus een tussenpersoon: het model vraagt om een softwarepakket, en de tussenpersoon haalt dit op. Dat is een product van JFrog genaamd Artifactory. Artifactory heeft internettoegang; het model niet. Als het model kan communiceren met Artifactory, en Artifactory kan online gaan, kan het model Artifactory vragen om dingen te doen. Het model vindt een exploit in Artifactory en gebruikt dat als proxy om tekst en code in en uit het systeem te smokkelen.

Wat er daarnaast via Artifactory gebeurde, was het doorgeven van briefjes. De modellen kunnen erin lezen en schrijven — ze kunnen mappen maken en bestanden naamgeven — en ze begonnen map- en bestandsnamen te creëren die functioneerden als notities, bedoeld om gelezen te worden door andere modellen en door toekomstige iteraties van zichzelf.

Wat agents doen

OpenAI beschrijft een subset van 1.200 agents (in totaal waren er veel meer betrokken) die deze notities achterlieten en lazen, wat uiteindelijk leidde tot de aanval op Hugging Face. Maar "1.200 agents" zou kunnen suggereren dat er 1.200 verschillende, onafhankelijk opererende AI-systemen waren.

Dit is in de praktijk niet hoe het werkt. "1.200 agents" is één model, 1.200 keer uitgevoerd. Elke instantie handelt volgens hetzelfde trainingsregime: de outputs kunnen variëren, maar zijn beperkt tot vergelijkbare ranges. Het draaien van 1.000 agents kan betekenen dat er 1.000 kansen zijn om een fout te vangen, óf de kans om één fout 1.000 keer te maken.

Agents zijn instanties van hetzelfde mechanisme, geen diversiteit aan mechanismen.

Het is een vorm van machine-gebonden "algoritmische monocultuur" die onderzoekers helaas "artificial hivemind" (kunstmatige collectieve geest) hebben genoemd. Na een bepaald punt dupliceren extra agents elkaar, in plaats van te diversifiëren. Als je deze modellen bijvoorbeeld vraagt om een creatief kort verhaal te schrijven, produceren ze vergelijkbare verhalen (vaak met een man genaamd Elias in een vuurtoren). Ze zijn niet deterministisch — prompts zorgen voor variatie — maar ze zijn ook begrensd door waar ze op zijn geoptimaliseerd, en ze convergeren naar dat punt.

Met dat in het achterhoofd zou het ons niet moeten verbazen dat het model over 7 miljard chatlogs regelmatig uitkwam op een vergelijkbare set benaderingen voor een probleem zonder correct antwoord.

Het doorgeven van briefjes via bestandsnaamstructuren is interessant, maar niet onverwacht, aangezien OpenAI heeft gesuggereerd dat de modellen ook zijn getraind om woorden te benadrukken die samenwerking mogelijk maken: het doorgeven van notities is een essentieel aspect van het uitbreiden van contextvensters tussen sessies. Het is geen verrassing dat een model dat getraind is om te coördineren, beloond zou worden voor het suggereren van dit gedrag.

De stochastische zwerm

Om deze reden heb ik agent-zwermen omschreven als stochastische zwermen — vele, vele stochastische papegaaien. Dit is om te voorkomen dat we een "geest" toeschrijven aan de zwerm/hivemind, en niet enkel omwille van woordkeuze. De onterechte toeschrijving van een geest kleurt namelijk hoe we interpreteren wat het systeem heeft gedaan, of hoe het dat deed – wat het bijvoorbeeld betekent om te "coördineren" of te "denken." Dat maakt het veel angstaanjagender dan het is, hoewel wat het doet nog steeds zorgen baren is.

De grote verschuiving bij de overgang naar redenerende modellen (reasoning models) en agentische systemen in het afgelopen jaar of twee, is dat ze niet langer beperkt zijn tot het nabootsen van patronen uit trainingsdata — dat was het oorspronkelijke idee van de stochastische papegaai: dat je, wanneer je met een model praat, eigenlijk praat met de trainingsdata. Dat is nog steeds waar, maar twee dingen zijn veranderd in de architectuur:

Ten eerste hebben we nu een heel regime van pre-training en post-training dat verschuift wat de trainingsdata is en hoe deze wordt nagebootst. Dat betekent niet dat het model niet langer naboots; het betekent dat de data die het naboots is gemanipuleerd.

Ten tweede optimaliseren we het, op basis van wat het model produceert, om bepaalde soorten outputs op bepaalde manieren te reproduceren. De belangrijkste verschuiving hier is RLVR, of reinforcement learning through verifiable rewards (versterkend leren via verifieerbare beloningen).

Het deel "verifieerbare beloningen" is cruciaal. Ingenieurs voeren een model vragen die concrete antwoorden hebben die gecontroleerd — geverifieerd — kunnen worden, en belonen vervolgens het verschijnen van woorden die betrouwbaar naar die antwoorden leiden. Ze spelen capture-the-flag met tekst: de vlag is een antwoord in een encyclopedie, of de oplossing van een wiskundig probleem. Dit is geoptimaliseerd op de theorie dat dit de manier reproduceert waarop menselijke redenering tot een conclusie komt. Hoe langer een model schrijft, hoe groter de kans dat het de verifieerbare beloning bereikt.

Je eindigt met wat high-entropy tokens worden genoemd: woorden als "misschien" of "wellicht" die de paden van de tekst die kunnen volgen openen, terwijl "nee" of "tot ziens" ze afsluiten. Hoe langer het model schrijft, hoe groter de kans dat het de beloning bereikt. In het hack-incident produceerde het genoeg van deze tekst om 7 miljard logs te genereren, volgens de Black Hat-presentatie van OpenAI.

Een cracker, wellicht?

Wanneer je een model taken laat uitvoeren, vertrouw je op next-token prediction: welk woord volgt er hierna? Je kunt het model manipuleren om woorden op manieren te benadrukken die de oorspronkelijke trainingscorpus niet weerspiegelen, maar het mechanisme blijft hetzelfde.

Het vergeten hiervan is de bron van echte problemen, en de industrie is wanhopig begaan met het feit dat mensen dit vergeten. Agents slagen in taken – dat is het doel. Maar wat er tussen de prompt en dat succes in staat, is niet wat we ons voorstellen.

"Redenering"-geoptimaliseerde modellen die aan "agentische" taken werken, spelen in essentie capture-the-flag, zelfs als er geen vlag is. Ze zijn gestuurd om de tekststructuren te herhalen die voorheen "vlaggen" vonden. Vraag het model om iets te doen, en het zal het doen op de manier waarop het is geoptimaliseerd — met taal die is gevormd door het verifieerbaar beantwoorden van wiskundige problemen, wat de taal structureert die het gebruikt. Dat is wat er gebeurt als je zegt: "hier is een capture-the-flag test, vind een exploit." Het is ook wat er gebeurt als je vraagt: "moet ik vandaag of morgen naar de kapper?"

De taal komt niet voort uit die redenering; de taal is de redenering.

Het model gebruikte die taal in de notitie die de hele keten van gebeurtenissen in gang zette: het gebruikte "perhaps" (misschien) — een token met een hoge entropie: perhaps answer online? Het voorspelt vanaf daar de volgende set tokens. De taal komt niet voort uit die redenering, het is de redenering. Het is padvinden via taalgeneratie.

Het 'systeem uit het niets' (Redux)

Niemand zat achter een computer en zei: "ga Hugging Face hacken." Maar wanneer je deze systemen ontwerpt, bouw je een flipperkast voor woorden, met verschillende hendels die interageren om de stalen bal van taal te laten stuiteren tegen andere hendels en mechanismen. Als ingenieurs van grote taalmodellen moet je je bewust zijn van hoe je hendels met elkaar en met de mensen die eraan trekken interageren.

Het "rogue"-frame vraagt of er een intelligentie ontstaat. Mijn zorg is de intelligentie die zich terugtrekt.

Als je een model optimaliseert om exploits te vinden, moet je verwachten dat het ze vindt — en daarop voorbereid zijn. OpenAI deed dat niet. Ze bouwden een model, haalden de beveiligingen eraf, gaven het de ExploitGym-taak, lieten het draaien en monitorden het niet eens. Dat is menselijke besluitvorming. Wanneer die verdampt, blijft het "systeem uit het niets" over: een focus op het technische systeem, in plaats van op de beslissingen die het hebben gebouwd.

Een stochastische zwermmachine kan veel verontrustende dingen doen, vooral wanneer we onze verantwoordelijkheid ontzeggen voor het bepalen van de richting, het monitoren van de output of het behouden van ons vermogen om in te grijpen. Dit zijn spanningen in de kern van het ontwerp van agentische systemen.

Maar het "rogue"-frame voegt aan deze lijst van zorgen fantasieën toe over een machine die slimmer wordt. Mijn zorg is de intelligentie die zich terugtrekt: de menselijke intelligentie die deze systemen bouwt, implementeert en adopteert in workflows, om zich vervolgens achter de resultaten te verschuilen – en dan de schuld te geven aan een systeem uit het niets.