SpinThePersona
Ett interaktivt AI-projekt som genererar personas och livsberättelser för att utforska hur kön, plats och tidsperiod kan forma människors livsvillkor.

Konceptet
Projektet gjordes i kursen Tillförlitlig människa-AI-interaktion. Idén var att göra skillnader i könsroller och livsvillkor över tid och mellan kulturer mer konkreta genom interaktiv storytelling. Användaren spinner fram egenskaper för två personas, genererar deras berättelser och kan sedan jämföra hur exempelvis kön, samhällsklass, region och tidsperiod påverkar deras möjligheter och vardag.

Interaktionen
React-gränssnittet är uppbyggt kring två persona-kort. Varje sida kan spinna fram kombinationer av bland annat kön, region och tidsperiod, därefter generera en berättelse och slutligen jämföra Persona A med Persona B. Det gör AI-genereringen till en del av ett tydligt användarflöde i stället för en fristående chattupplevelse.

AI & arkitektur
Frontend är byggd i React och kommunicerar med ett FastAPI-backend i Python. Textgenerering hanteras genom Mistral och bildgenerering genom Stability AI. Projektets arkitektur separerar därför användargränssnittet från de externa AI-tjänsterna, vilket gör det enklare att hantera API-anrop och förändra genereringslogiken utan att blanda den med UI-koden.

Tillförlitlighet & begränsningar
Eftersom tjänsten presenterar AI-genererat innehåll om historia, kultur och kön blev tillförlitlighet en central designfråga. I projektet diskuterade vi transparens, förklarbarhet, historisk korrekthet och risken för stereotyp eller partisk output. En viktig begränsning är att en språkmodell fortfarande kan generera felaktiga eller förenklade påståenden. En mer mogen version skulle därför kunna grunda berättelserna i verifierbara historiska källor och tydligare visa vad som är genererat respektive källbelagt.

Mitt bidrag & lärdomar
I gruppen på tre gjorde jag nästan hela appen, förutom själva hjulanimationen. Jag byggde bland annat det mesta av React-gränssnittet, Python/FastAPI-backendet och kopplingen till AI-tjänsterna. Det var första gången jag jobbade praktiskt med Python i ett backendprojekt. Jag fick också en bättre förståelse för hur LLM-funktioner behöver planeras, byggas in och begränsas för att fungera bra i en app.