Af Jakob Leander, Technology & Consulting Director i Devoteam
AI skal løftes fra spredte eksperimenter til robuste produktionsløsninger i en stor skala. Et vigtigt element i denne omstilling er en øget modenhed i arbejdet med at udvikle og drifte AI-modeller ved brug af MLOps, AI-versionen af DevOps. Dermed får virksomheden en dokumenteret, optimeret og sikker proces med afgørende gevinster for forretningen.
2023 var året, hvor interessen for AI eksploderede, takket være lanceringen af OpenAI’s ChatGPT i november 2022. Det er dog først nu, at virksomheder for alvor begynder at arbejde struktureret og målrettet med AI for at skabe vedvarende gevinster. En MicKinsey-rapport fra 30. maj 2024 fortæller, at brug af AI steg til 72% globalt, mens niveauet de foregående fem år lå på omkring 50%. Samtidig bruger over 50% af de adspurgte virksomheder AI i mere end én funktion i virksomheden, mens andelen lå under 30% i 2023.
Fra håndbåret til MLOps
Nok så vigtigt har tilgangen til AI også ændret sig. I starten var det begrænsede og spredte eksperimenter for at samle erfaring. Næste niveau er implementering af AI i en større skala for at få fuld udbytte af de teknologiske muligheder. Med andre ord skal AI opjusteres til hele produktionsløsninger.
Det vil i praksis sige, at udvikling af AI-løsninger skal ske med samme systematiske tilgang, vi har brugt år på at lære inden for softwareudvikling. Ting som automatiseret byg, test og overvågning skal også gælde for AI-løsninger.
Metoden kaldes MLOps, som er AI-versionen af DevOps – Development og Operations. MLOps fokuserer på at strømline processer, så der sker et skifte fra håndbårne AI-eksperimenter til løsninger, som bliver sat i produktion, vedligeholdt og overvåget.
I dag oplever mange, at det output en data scientist producerer, bliver sat manuelt i produktion. Det betyder, at der let sker fejl, og at løsninger kun i begrænset omfang bliver overvåget. Skiftet til en strømlinet proces er nødvendig for at sikre et effektivt og robust produkt, hvor man både kan stole på, at modellerne gør det, man forventer, og at de kan håndtere de svartider og oppetider, der kræves af dem, når de fx skal servicere kunderne.
Microsoft anbefaler 7 nøgleprincipper for MLOps:
- Brug versionskontrol til al kode og data for fuld sporbarhed.
- Brug flere miljøer (udvikling, test og produktion) så fejl fanges, inden de giver problemer.
- Vedligehold infrastruktur som kode (IaC) og under versionskontrol.
- Hav fuld sporbarhed af eksperimenter, dvs. svar på hvilke data, hvilke versioner og hvilket output.
- Test kode, dataintegritet og modelintegritet automatisk. Fejl er svære at spotte manuelt.
- Brug Continuous Integration (CI) og Continuous Delivery (CD), som vi kender fra klassisk DevOps til automatisk at bygge samt teste kode og modeller.
- Overvåg services, modeller og data. Data og modeller kan blive upålidelige over tid, og overvågning er kritisk.
Traceability, sporbarhed som en integreret del af MLOps er en vigtig faktor i forhold til transparens og compliance. Det betyder, at man til enhver tid kan forklare, hvorfor en given model opfører sig, som den gør samt hvilken kode og data, der er brugt til at træne den. Derudover har man testrapporter, der beviser, at man har gjort alt, hvad man kunne for at validere, at ting fungerer, som de skal. Traceability er blandt andet et af kravene i EU’s forordning AI Act.
Kombination af hyldevarer og egenudvikling
I dag er AI som regel ikke længere noget, hvor man bygger det hele selv. I praksis er det en blanding af traditionel softwarekode, API’er, ting man har bygget eller fine-tuned og halvfabrikata samt modeller fra cloudleverandører eller open source communities. Microsoft tilbyder med co-pilots og diverse Azure-services både færdige apps og komponenter, der fungerer som klodser, man kan kombinere til en færdig løsning.
Denne tilgang betyder, at der er mange versioner af ting, der skal passe sammen. Derfor bliver orkestrering af versioner, afhængigheder og automatisk test af den samlede løsning kritisk for at sikre stabilitet i praksis.
MLOps er en rejse
MLOps – og DevOps – kan være en kompliceret proces i komme i gang med. Ud over de tekniske skills og processer for at lave et robust produkt, skal MLOps også håndtere den mere usikre side af AI. Der skal der være tid og ressourcer til initialt at eksperimentere med data og modeller, indtil man har et fungerende og sikkert produkt.
Det er derfor en god idé at indføre MLOps som en række af forbedringer i forhold til det modenhedsniveau, man starter på. Nedenstående figur viser fem modenhedsgrader baseret på data fra Microsoft.
Eksempler på brug af MLOps
Så hvordan kan MLOps gøre gavn i praksis? Her er nogle eksempler på virksomheder, der bruger MLOps til at optimere deres modeller.
- En detailvirksomhed analyserer sig frem til den optimale lokation for butikker.
- En online-virksomhed bruger modeller til at forstå brugeradfærd og tilbyde de rette produkter.
- En streaming-service bearbejder brugerdata for at optimere indhold til den enkelte bruger.
- En medicinsk forskningsenhed vil effektivisere, herunder automatisere, analyser af enorme mængder data.
Fælles for disse løsninger er, at MLOps sikrer, at man ikke blot har en AI-model, der kan løse et problem, men at modellen virker robust i produktion, og at man løbende overvåger, at den løser den definerede opgave.
Devoteam Cloud Enabler for MLOps
Devoteam tilbyder en metode og en accelerator for at implementere MLOps i Azure med fokus på time-to-market og sikkerhed i løsningerne. Vores accelerator tager udgangspunkt i de nyeste Azure-komponenter, herunder Azure Machine Learning, Azure OpenAI og Azure Kubernetes Service. Vi kalder vores metode for Cloud Enabler for MLOps.
Den indeholder metode, dokumentation, infrastruktur, MLOps automatisering, overvågning og et antal jobs, der end-to-end viser, hvordan man bygger sine pipelines. Cloud Enabler for MLOps understøtter både simple machine learning-modeller og mere avancerede scenarier som fx fine-tuning af en stor sprogmodel (LLM). Produktet, der bygges, er for de fleste modellers vedkommende en container med en API, der kan hostes i Azure Cloud eller on-premise, hvis det foretrækkes.
Et af de grundlæggende principper i vores tilgang er, at vi hjælper kunden i gang med hurtigt at få etableret en platform for MLOps. Samtidig sikrer vi, at kunden bliver selvforsynende med den rette viden og metode til at arbejde på egen hånd.
Har du planer om at løfte AI til næste niveau i din organisation og skabe robuste AI-løsninger ved hjælp af MLOps? Uanset om du har brug for at tale om konkrete behov og udfordringer i din forretning, eller blot har spørgsmål til artiklen, er du velkommen til at tage kontakt til os, og så vender vi tilbage hurtigst muligt.