De siste månedene har det vært mye snakk om store språkmodeller (LLM) som GPT-4, og hvordan denne typen "kunstig intelligens" skaper nye muligheter innenfor programvareutvikling. Men det å integrere denne typen AI-løsninger i egne applikasjoner på en god måte kan være vanskelig.
Et team hos Microsoft ønsker å gjøre denne jobben enklere, når de nå annonserer TypeChat. Med på teamet er ingen ringere enn C#-skaper og TypeScript-sjef Anders Hejlsberg.
Med TypeChat vil du kunne bruke typedefinisjoner i koden din til å motta AI-respons i et strukturert og typesikkert format, skriver InfoWorld.
Svar til å stole på
En av styrkene til store språkmodeller er at du stiller spørsmål til dem ved hjelp av naturlig språk, og også får svarene i naturlig språk. Men for utviklere som skal bygge applikasjoner som kommuniserer med språkmodellene, er slike ustrukturerte svar langt fra noen fordel.
«Det å analysere naturlig språk er ekstremt vanskelig.»
– Bølgen av LLM-er vi har nå bruker naturlig språk som standard – språk mennesker kommuniserer med, som engelsk. Det å analysere naturlig språk er ekstremt vanskelig, skriver TypeChat-teamet.
Hvordan kan du gjøre om svarene til noe du kan bruke i koden din, og hvordan kan du sikre at svarene er til å stole på?
Løsningen er ifølge TypeChat-teamet å bruke JSON og TypeScript.
Forvirret av TypeScript i React? Sjekk dette
Nytt bibliotek gjør det enklere
Det er i dag mulig å instruere språkmodellene om å svare i et strukturert format, som JSON. Ifølge TypeChat-teamet får du vanligvis ganske fornuftige svar tilbake hvis du gir språkmodellen et eksempel på hvordan du vil at JSON-svaret skal være utformet.
Men selv om du får svarene i JSON-format, har du ingen garanti for at svarene er fornuftige. Slike språkmodeller kan som kjent finne på mye rart.
Løsningen er ifølge TypeChat-teamet å bruke typer til å dobbeltsjekke at alt går riktig for seg.
«Siden LLM-er har sett så mange typedefinisjoner, så fungerer typer også som en bra guide for hvordan en AI skal svare.»
– Vi har funnet ut at siden LLM-er har sett så mange typedefinisjoner, så fungerer typer også som en bra guide for hvordan en AI skal svare.
Du gir altså først AI-en beskjed om å svare i JSON-format som tilfredsstiller en typedefinisjon du har gitt den. Ved å deretter bruke TypeScript-kompilatoren til å sjekke om svaret til AI-en tilfredsstiller denne typedefinisjonen, kan du korrigere AI-en hvis den skulle gjøre feil.
Det nye TypeChat-biblioteket skal gjøre denne prosessen enklere å ta i bruk i egne applikasjoner.
Erstatter "prompt engineering"
Ifølge dokumentasjonen erstatter TypeChat prompt engineering med schema engineering:
Du gir TypeChat typedefinisjoner som beskriver hvordan du vil ha svarene, så lager TypeChat et spørsmål ("prompt") basert på disse. TypeChat sjekker at svaret passer med skjemaet, hvis ikke "godsnakker" den med AI-en til den får et svar i riktig format.
Biblioteket er åpen kildekode og kan installeres via npm. GitHub-repoet finner du her.