Nå får utviklerne i UNE lov til å bruke Copilot – sånn får du til det samme

– Det første du trenger er tålmodighet, forteller Gøte Bengt Emanuel Røhnebæk Strindler i twoday, som nå får bruke Copilot som konsulent hos Utlendingsnemnda.

– Kanskje kan vi sammen øke andelen av departementer, direktorater, nemnder, rettsinstanser og så videre som bruker KI i dag fra en fjerdedel, til 4/5-deler i tiden fremover, skriver Gøte Bengt Emanuel Røhnebæk Strindler. 📸: Privat
– Kanskje kan vi sammen øke andelen av departementer, direktorater, nemnder, rettsinstanser og så videre som bruker KI i dag fra en fjerdedel, til 4/5-deler i tiden fremover, skriver Gøte Bengt Emanuel Røhnebæk Strindler. 📸: Privat Vis mer

Digitaliseringsministeren Karianne Tung uttalte til NRK at "Innen 2025 skal 80 prosent av offentlig sektor ta i bruk kunstig intelligens", om hun har noe hun skulle sagt om saken. Den dyktige journalisten hentet så klart inn en uttalelse fra en av våre mange KI-eksperter, postdoktor Lisa Reutter, som ikke overaskende "nesten måtte le litt" av det urealistiske målet. Som de sier i hjemlandet til OpenAI: "So far, so good".

Som innleid konsulent hos en liten, men robust del av utlendingsforvaltningen, nemlig UNE (Utlendingsnemnda), så synes jeg av en sjelden anledning at jeg her kan bidra videre på grunn av to ting:

  1. UNE er jo en del av offentlig sektor (selv om jeg personlig er ansatt i det private)
  2. Vi har nylig tatt i bruk kunstig intelligens i form av GitHub Copilot her i "nemnda" Så hvis du jobber i offentlig sektor, enten "på ekte" eller som innleid, og ønsker å ta i bruk KI, bør du lese videre.

Kanskje kan vi sammen øke andelen av departementer, direktorater, nemnder, rettsinstanser og så videre som bruker KI i dag fra en fjerdedel, til 4/5-deler i tiden fremover. Er det “flink pike” det kalles når man vil være best i klassen?

Disclaimer:
Når jeg snakker om å "ta i bruk KI", så er ingen så naive at vi ikke tror at alle mulige slags KI-verktøy og modeller har blitt tatt i bruk av utviklere og andre i offentlig sektor helt fra de har blitt tilgjengelige til i dag. Det jeg snakker om her, er en prosess hvor du får lov til å bruke det som en enhet, etter at sjefen til sjefen din har sagt ja, fordi du har lagt frem en sikkerhetsvurdering og noen gode eksempler på verdi for vedkommende.

Steg #1: Tålmodighet

Det første du trenger er tålmodighet.

Dette går jo litt imot det ambisiøse målet til minister Tung, men vi her på UNE begynte vår prosess mot Copilot allerede sommeren 2022, rett etter at verktøyet var ferdig med sin "technical preview" og ble tilgjengelig for de fleste.

Jeg spurte sjefen min om jeg “please, kunne ikke jeg få lov å prøve den her nye greia som jeg tror er kult?”. Hun sa “nja”, og så sa hun “kan du skrive noen setninger om hva det er for noe, så skal jeg høre med drift og avdelingslederen”.

Så gikk det 11 måneder med litt forsiktig masing før det skjedde noe.

Steg #2: "Men mamma, Frida har klemmepose i matboksen sin hver dag"

Det andre du trenger er kanskje akkurat det jeg gir deg nå: En mulighet til å si til noen med beslutningsmakt at "en-eller-annen bruker det allerede".

Vi så på situasjonen som en gjeng fugler (si duer, eller kanskje kråker) som sitter på en strømkabel og lurer på hvem som skal hoppe først (og forhåpentligvis fly av gårde på oppdriften). Vi fikk ferten om at en kråke ved navn DigDir allerede hadde hoppet og vi tok kontakt med dem for å høre om vi tenkte noenlunde likt.

Det gjorde vi, og fikk høre at de hadde skrudd på for lenge siden, hadde høstet gode erfaringer og hadde all intensjon om å fortsette. Mye av DigDirs kodebase ligger åpent på nettet, som kanskje betyr at Copilot er trent på den, og vil jo derfor være særs skikket til forslag for deres utviklere. Best i klassen!

En annen kråke ved navn Skatteetaten satt parallelt med oss og ventet på en gigantisk skikkelse lenger borte på kabelen ved navn EU, imens den skrev iherdig på et dokument med sin juridiske penn.

En tredje, mye mindre og mer selvstendig kråke ved navn Norsk Helsenett hoppet rett før vi hoppet selv. Det var surt å bli slått på målstreken så klart, men vi er alle kråker og alle kråker er like (men noen kråker...).

Det er nok mange som har hoppet, og flyr mot sine KI-solnedganger i mer stillhet en meg som skriver dette med mitt nebb.

Steg #3: Nå skal det vurderes, book et møterom!

Det tredje du trenger er en gjennomgang av sikkerhet.

For å være litt flåsete her, men til syvende og sist så er mesteparten av dette punktet en øvelse i "stoler vi på denne, eller denne, aktøren". I vårt tilfelle var det "stoler vi på Microsoft?". Da kan det være lurt å lære deg noen salgbare setninger. Som min personlige favoritt: "Om vi ikke kan stole på Microsoft, så er vi allerede helt på jordet".

UNEs sikkerhet var vår høyeste prioritet, utviklernes ønske om å prøve noe gøy var lenger ned på listen. Vår sikkerhetsvurdering gjennomført i løpet av høsten i fjor endte med en klar anbefaling om å ta Copilot i bruk, men da med en Business- eller Enterprise-lisens og alle forhåndsregler tilbudt av Microsoft skrudd på. Dette inkluderer en garanti om at koden som en er en del av prompten ikke blir lagret noe sted, ikke blir brukt på videre trening av LLMene og at alt er kryptert igjennom hele næringskjeden.

«UNEs sikkerhet var vår høyeste prioritet, utviklernes ønske om å prøve noe gøy var lenger ned på listen.»

Her fikk vi også introdusert ideen om en .copilotignore-fil (tilsvarende en .gitignore), men denne har vist seg at endrer status fra "DET FUNKER" til "Copilots ikke-deterministiske natur lar seg ikke overstyre av en skarve fil, så trå varsomt med din tillit". Dette direkte fra Microsoft Developer Forums.

På grunn av den ikke-deterministiske naturen til de som lager Copilot valgte vi derfor også å være føre var på dette og gjennomførte en ganske omfattende kokvask av kodebasen i samtlige miljøer for å luke ut det vi kunne av potensielle eksponerte secrets, URLer, passord, nøkler, brukernavn osv (som jo ikke skal ligge der uansett).

Det mest slitsomme med dette er at man må reintrodusere en del ting når man skal teste lokalt, for eksempel via swagger.

Steg #4: Forventning? Nei, den har vi ikke sett

Etter dette så er det på tide med en runde med forventingshåndtering.

Som kode24 selv skriver så er det en stor forskjell på hvor stort utbytte utviklere mener de skal få/får ved hjelp av disse verktøyene, og hva sjefen mener/tror de skal få.

Dette teller dobbelt for sjefen til sjefen. Og så dobbelt for sjefen til sjefen til sjefen, hele veien opp til Minister Tung.

Her meldes det også om at juniorer får masse hjelp, men gjør flere feil, og at seniorer får litt hjelp, og gjør de samme feilen de alltid har gjort, blant annet å stole på juniorene.

Steg #5: Skru på!

Du er snart klar. Det eneste som nå gjenstår er å skru på.

Har du GitHub-organisasjonen din klar? Vet du hvem som skal betale for dette? Skal alle i organisasjonen få tilgang eller bare noen? Hvordan var det nå igjen med disse valgene man må ta på organisasjonsnivå? Skal du skru på chatte-funksjonen eller ikke? Skal Copilot-lisensen være en del av on-boarding og off-boarding? Hvorfor må du prate med noen i Litauen? Er det påskeferie nå plutselig, så hen har reist på ferie?

Hallo? Hei? Hello, world!

Konklusjon

Vi har brukt Copilot i litt under en måned nå, og av og til er den utrolig smart, og av og til ikke så smart.

Den lærer oss og vi lærer den. Den gjør uten tvil kjedelige oppgaver lettere, og er en kløpper når det lønner seg med litt .flatMap().

Som utvikler i offentlig sektor så er det lett å se verdien og KI-verktøyet har en klar funksjon. Dette er ikke alltid tilfellet, så kanskje de som ikke er sikre må legge til et punkt inn mellom mine Step Two og Step Three som handler om en kartlegging av hva verktøyet/verktøyene kan og skal brukes til?

Alle veier fører uansett til Rom, eller himmelen, eller til effektiv offentlig forvaltning innen 2025. Amen! (som jeg mener å huske betyr: “La det skje!”)