En RisiFrutti-kampanj med AI
“Skapa Din Smak-kampanjen” för RisiFrutti är 24HR:s första publika projekt som använder AI. Det är et klockrent exempel där en diffusion-modell kombinerat med en stor språkmodell (LLM) kan visualisera tävlingsbidrag på ett sätt som tidigare inte har varit möjligt.
Tillsammans med Orkla Foods och Silver+ har vi tagit fram en rolig kampanj för RisiFrutti.
Kampanjen går ut på att de tävlande ska komponera en ny smak för RisiFrutti samt ta fram ett namn på smaken. Det var uppdragsbeskrivningen vi fick från Orkla Foods och Silver+. Vi såg med en gång möjlighet att ge kampanjen lite extra krydda genom att låta en AI-generera ett unikt lock baserat på ingredienserna den tävlande valt, -okej, riktigt så enkelt är det inte.
Hur använder man AI i en reklamkampanj?
Efter att den tävlande har valt upp till tre ingredienser och namngivit sin skapelse i ett gammalt hederligt textfält så startar en fyrstegsprocess på ett flertal servrar. Det är inte enbart en illustration till locket som skapas, vi ber även AI:n om hjälp med färger och att moderera bidragen.
Ett återkommande problem med den här typen av tävlingar är att folk skapar förpackningar med stötande budskap som sedan delas på sociala medier. Tidigare har vi byggt system där man har behövt godkänna varje bidrag manuellt vilket har resulterat i att de tävlande har fått vänta med att se sina bidrag. Ett annat alternativ har varit att folk i efterhand har kunnat flagga bidrag som har upplevts stötande vilket har skapat otroligt mycket merarbete. Men nu, med den automatiska analysen som AI kan bistå med så kan man komma runt problemet utan någon större investering.
Steg Ett: En LLM (valfri modell eftersom vi alltid bygger med MACH arkitektur, men av flera anledningar valde vi OpenAI) kontrollerar så att namnet inte kan uppfattas som stötande. Om det skulle kunna vara stötande så skriver LLMen om namnet till något gulligt.
Steg Två: AI:n efterfrågar (återigen OpenAI men hade kunnat vara Claude osv) en lista med lämpliga färger baserade på ingredienserna som den tävlande valt.
Steg Tre: En diffusionsmodell, (Dalle-3 från OpenAI av flera anledningar men… MACH arkitektur osv, vi kan välja vad vi vill) skapar en illustration utifrån färgerna och ingredienserna.
Steg Fyra: Fyra olika bilder skapas:
- “Tillfälligt besök” texten i en av de färger som vi har fått från steg två
- Loggan och duttarna i färger från steg två
- Det auto-korrade namnet
- Den AI-skapade illustrationen
De bilderna utgör lager som kombineras till en bild med hjälp av en skräddarsydd komponent på servern skrivet i RUST, ett snabbt och effektivt språk som minskar belastningen på servern avsevärt.
Vad bör man tänka på när man väljer AI-modell?
Modellens specialisering och användningsområde: Det fanns varken budget eller behov av att träna upp en modell själva, därför var det viktigt att välja en som var specialiserad på just den uppgiften som behövde lösas. Vissa modeller är bättre för textanalys, medan andra är optimerade för bildigenkänning eller talförståelse. Vi behövde en Large Language Model för språkhantering och en Diffusion-modell för bildgenerering. Det finns många olika alternativ som hade klarat att utföra uppgiften.
Anpassningsmöjligheter och API-stöd: För-tränade modeller kan vara begränsade när det gäller hur mycket de kan anpassas till specifika behov. För oss var det var viktigt att modellen kunde erbjuda ett API för att integreras i vår tech stack, och att det fanns möjlighet att finjustera vissa parametrar eller implementera justeringar utan att behöva träna om modellen från grunden.
Prestanda och kompatibilitet: Vi gjorde tester för att utvärdera modellernas prestanda vad gäller hastighet, och skalbarhet. Vi kollade att de kunde hantera den datamängd och förfrågningar som projektet krävde. Självklart kollade vi även så att de var kompatibla med Orklas befintliga tech stack, inklusive molnplattformar och mjukvaru-ramverk.
Pris och betalmodeller: En viktig faktor var så klart priset. Vissa leverantörer erbjuder betalning per användning (pay-as-you-go), vilket kan vara fördelaktigt för mindre projekt.
Kvalitén på resultatet: Det visade sig ganska snabbt att vissa modeller var betydligt bättre på att leverera den typ av resultat som vi behövde. Det var extra tydligt med bildgenereringen där vissa modeller inte klarade av enkla saker som att lägga det genererade motivet mot en enfärgad bakgrund, men även texthanteringen varierar väldigt från en modell till en annan.
Efter noga övervägande så föll valet på OpenAI för både text och bild (LLM och diffusion modell) eftersom de levererade mest pang för pengarna, mycket goda resultat till en rimlig penning. Det finns modeller som var billigare och sämre, samt modeller som var dyrare och något bättre. Sen fanns det modeller där prissättningen blev otydlig.
Hur jämför man AI-modeller på bästa sätt?
Alla som någon gång har utvärderat vilket system som är bäst lämpat för att lösa ett behov, vet hur svårt det är. Att bara kolla på listor med checkboxar ger inte hela bilden. Att läsa glassigt säljmaterial blir man inte heller så klok av. Det bästa är att använda produkten i ett så skarpt läge som möjligt i den tekniska miljö som den färdiga lösningen sedan ska ligga i.
Här hade vi enorma fördelar tack vare vår mångåriga erfarenhet av att bygga enligt MACH-arkitekturprinciper. Det var inga problem att utvärdera olika modeller mot en “skarp” front-end i kundens verkliga miljö. I framtiden kan vi väldigt enkelt skicka något av våra tre anrop till en helt annan modell om det skulle ge dem några fördelar.
Det finns dessutom många nya, kanske inte alltid stabila aktörer som vill in i den hypade LLM-marknaden. Det har varit guld värt att kunna utvärdera dem i så realistiska situationer som möjligt.