söndag 9 juli 2023

Hur testar vi ChatGPTs gränser?

Är ChatGPT en stokastisk papegoja? Bild från craiyon.com.


För nästan 20 år sen läste jag en filosofikurs som hette "Modeller för Mänskligt Tänkande". Den handlade om olika sätt att förstå människans medvetande och kognition och innehöll delkurser i både neurala nätverk och mer konventionella försök till artificiell intelligens som schackdatorn Deep Blue. Under en av delkurserna fick vi läsa om ELIZA, ett program som simulerar en konversation med en psykoterapeut. Det sker med hjälp av generella frågor och meningar där en del ord plockas ur användarens tidigare input. ELIZA innehåller inget neuralt nätverk utan är ett traditionellt datorprogram där du kan utläsa ur koden hur den kommer att svara, men tydligen tillskrevs den ändå både tankar och känslor av de första som fick testa den på 60-talet. 

Något senare under mina studier snubblade jag över en version av ELIZA som ingick i programmet Emacs. Jag och några andra studenter roade oss med att utforska programmets begränsningar och försökte få den att skriva rent nonsens. Det visade sig vara väldigt lätt, faktum är att ska ELIZA framstå som vettig över huvud taget måste man vara noga med att hålla sig inom ramarna för vad samtalet "ska" handla om. (Om nån vill testa finns det onlineversioner, t.ex. här. Eller så kan man ladda ner Emacs.) 

De senaste månadernas diskussioner runt ChatGPT har fått mig att tänka på ELIZA, mestadels på grund av allt snack om vad den "vet" och "förstår", och hur den anses vara steg på vägen till generell artificiell intelligens som överträffar människor. Exemplet ELIZA antyder att vi inte nödvändigtvis kan lita på våra egna intuitiva bedömningar av en chatbot, vare sig den är byggt på konventionell kod eller på neurala nätverk. Vi verkar ha en inneboende tendens att tillskriva maskiner och andra föremål mänskliga egenskaper, och den tendensen kan sätta krokben för oss.

En annan anledning till att jag funderat över ELIZA är en rakt motsatt tendens hos om inte alla så åtminstone många människor, den att man vill ta reda på hur saker funkar, hitta gränserna, och "knäcka koden" som jag och de andra studenterna gjorde med ELIZA. På vilka sätt har vi egentligen testat ChatGPTs gränser under månaderna sen den blev tillgänglig online - och finns det gränser vi borde testa mer?

ChatGPT och säkerhet

De begränsningar som utforskats absolut mest - åtminstone avsiktligt - är antagligen de mekanismer som ska hindra ChatGPT från att uttrycka sig i kontroversiella frågor, leverera problematiskt innehåll (rasism, sexism etc.) eller hjälpa användarna att begå brott. I början verkar det ha varit ganska lätt att ta sig runt de här begränsningarna bara genom att ställa frågan annorlunda - vill ChatGPT inte tipsa om sajter där du kan ladda ner piratkopierade filmer kan du be den lista vilka sidor du ska undvika om du inte vill komma i kontakt med några läskiga torrents. Mer avancerade varianter ger ChatGPT en karaktär att spela, företrädelsevis då en karaktär som inte bryr sig om regler och kan säga lite vad som helst. Liknande knep ska tydligen vara användbara för att generera propaganda.

När jag läste på om ChatGPT inför mina inlägg om ifall den kan skriva patent (finns här och här) fick jag det bestämda intrycket att språkmodellen som är kärnan i ChatGPT inte har några såna här begränsningar i sig. Den är helt enkelt tränad med enorma mängder text till att kunna förutsäga sannolikheten för att ett visst ord är nästa ord i en given mening. Spärrar som hindrar ChatGPT från att tipsa om piratsajter etc. borde då rimligtvis vara inprogrammerade som nån sorts kontroll antingen av ord som förekommer i frågan eller ord som dyker upp i svaret. Det är också tydligt att OpenAI ändrar på de här spärrarna i takt med att folk hittar mer och mer kreativa sätt att ta sig runt dem - att få ChatGPT att spela rollen som någon som inte bryr sig om regler verkar till exempel ha blivit betydligt svårare med tiden. Med hänsyn taget inte bara till utvecklingen inom AI utan också till den mänskliga naturen skulle jag gissa att det här kommer att bli en sorts evig kapplöpning liknande den mellan de som skriver virus och de som utvecklar antivirusprogram.

ChatGPT och fakta

En annan av ChatGPTs begränsningar som testats ordentligt men kanske inte lika avsiktligt är hur pass (o)tillförlitlig den är när det gäller fakta. Den kan svara på vilken som är världens längsta flod och skriva kod som är åtminstone nästan korrekt - men den kan också skriva om icke-existerande rättsfall (och om icke-existerande rättspraxis för patent, som jag nämnt i ett tidigare inlägg).

Rent praktiskt innebär det innebär att du inte kan lita på ChatGPT. Om du faktiskt vill ha svar på en ren faktafråga är det därför fortfarande enklare att använda en vanlig sökmotor (eller Wikipedia) - du kommer ju ändå att behöva verifiera ChatGPTs svar innan du använder det. Med sökmotorn och Wikipedia har du också en chans att ta reda på varifrån informationen kommer, vilket gör det lättare att avgöra om du ska lita på den eller inte.

Diskussioner om ChatGPTs tillförlitlighet slutar ofta i svepande formuleringar om att problemet naturligtvis kommer att lösas i kommande generationer av GPT (t.ex. utgår man från det i den här artikeln). Det är mer ont om förklaringar på hur det ska gå till. Att räkna ut sannolikheten för att något visst ord är nästa ord i texten är ju kärnan i GPT, och det är möjligt på grund av stora mängder träningsdata. Blir man tvungen att bara använda träningsdata med korrekt information för att lösa tillförlitlighetsproblemet från grunden, eller kan man implementera en kontrollfunktion som bara accepterar genererad text om den är korrekt? Och hur hanterar man i så fall frågor där svaren är genuint osäkra eller kontroversiella? Jag tror säkert att kommande varianter av GPT kommer att vara bättre på många sätt, men jag är inte övertygad om att de kommer att lösa tillförlitlighetsproblemet.

Sen kan man också fråga sig om det verkligen är rimligt att använda ChatGPT som en sorts super-Google. Det är visserligen rätt spännande att den kan tyckas "veta" vilken som är världens längsta flod eller var du ska placera parenteserna i din programkod bara för att rätt svar dök upp som ett av de mest sannolika alternativen när den letade efter nästa ord, men ChatGPT är optimerad för att generera text som verkar rimlig, inte text som är sanningsenlig. Jag tror det är bättre att inte förvänta sig korrekt fakta av ChatGPT, och det är jag tydligen inte ensam om

ChatGPT och... sunt förnuft?

När jag testade att använda ChatGPT för att skriva patent-text om en påhittad uppfinning uppstod det en del missförstånd som knappast hade inträffat med en människa. De hade framför allt att göra med praktiska grejer som människor begriper för att de har erfarenheter av hur världen funkar. Det är en begränsning hos ChatGPT som jag inte har sett särskilt mycket diskussioner om, men jag hittade faktiskt en artikel som har fler exempel på frågor ChatGPT har svårt med. Till exempel, om man ska tända en grill, ska man fläkta kolen med ett papper eller en sten? Kan man använda ett hamburgerbröd för att hålla sitt hår på plats? Artikelförfattaren blev inte så imponerad av ChatGPTs svar, framför allt inte när den faktiskt skrev att man kunde använda ett hamburgerbröd som hårnät.

Jag testade att ställa frågorna från artiken till ChatGPT tillsammans med några egna frågor, t.ex. om en smörkniv eller en yxa är bäst för att dela en vattenmelon. Svaren varierade, i vissa fall svarade den som i artikeln och i andra gav den ett annat svar. Vad som också var intressant var att när jag bad den generera ett nytt svar på samma fråga ändrade den sig påfallande ofta - både när det gällde smörkniven och yxan och om hamburgerbröd som hårnät. Det är ett tecken på att ChatGPT inte har nån intern modell av hur världen funkar, som vi människor har. 

Baserat på vad vi vet om hur den faktiskt funkar är detta inte så konstigt, men med tanke på hur diskussionen kring AI låter just nu och vår allmänna tendens att se mänskliga tankar och avsikter lite varstans (som i fallet ELIZA) kan det vara bra att komma ihåg hur fel ChatGPT kan ha. ChatGPT gör nämligen misstag som är svåra att få att gå ihop med att den skulle uppvisa tecken på generell artificiell intelligens, men de är lätta att förstå om man ser ChatGPT som en stokastisk papegoja.

Stokastiska papegojor och vilka risker vi prioriterar

Begreppet "stokastisk papegoja" introducerades av AI-experterna Emily M. Bender och Timnit Gebru i en omdiskuterad artikel från 2021 för att beskriva språkmodeller som GPT. "Stokastisk" är ett annat ord för slumpmässig och syftar på att det finns ett inslag av slump i vilket ord modellen väljer ut för att fortsätta en mening, medan "papegoja" kommer sig av att den upprepar saker som finns i träningsdata men inte direkt kan komma på något själv. Artikeln tar upp olika risker med de här stokastiska papegojorna, från miljöpåverkan som uppstår när energi används till att träna dem till deras tendenser att reproducera existerande fördomar eller människors benägenhet att sätta för stor tilltro till modellernas resultat. 

Benders och Gebrus artikel är fortfarande relevant, men i diskussionerna som uppstått runt ChatGPT verkar det vara få som alls reflekterar över att GPT-3 och GPT-4 sannolikt fortfarande bara är stokastiska papegojor snarare än självständiga tänkare. Det leder till dramatiska rubriker om existensiella risker och artiklar, som den här från The Guardian, där man frågar fem experter om hur AI kommer att förgöra världen och bara en pratar om risker som finns nu, i dag, med den AI-teknik vi faktiskt har. Jag tror det är riskabelt att fokusera så mycket på vad som skulle kunna hända om AI blir smartare än människor, framför allt när det stjäl uppmärksamheten från mer omedelbara problem. Därför tror jag det är bra att påminna sig om, och testa, ChatGPTs gränser.