AI-drodling: RAGAz

Jeg ønsker en app kalt «RAGAz» hvor jeg kan be om informasjon fra Azure-tenanten min – f.eks. «Hvor mange App Services har jeg?»

Appen skal basert på forespørselen jeg taster inn selv finne riktig Azure Resource Graph spørring og sende den til riktig funksjon i applikasjon som deretter returnerer responsen fra Azure Resource Graph REST API. 🤓

Resultatet skal presenteres på en lettlest måte. 🤩

Når resultatet er klart så skal det bli synlig to knapper:

  • 🤖 Terraform: Brukes for å generere Terraform-kode basert på resultatet.
  • 🚀 Anbefalinger: Bruker om man ønsker anbefalinger/forbedringer basert på resultatet.

👴 Hvordan løste jeg det?

Applikasjonen starter opp og jeg taster inn det jeg lurer på. 🤔

For å starte enkelt ønsker jeg en liste over App Services og status (om den kjører eller ikke).

Resultatet er akkurat det jeg ba om 🥳

Det som skjedde når jeg trykte på «Kjør» er følgende:

  1. Spørsmålet mitt («user prompt») sendes til OpenAI sammen med «system prompt» som vist i boksen under. I tillegg sender jeg med beskrivelse av ulike funksjoner som den kan kalle selv – bl.a. en funksjon getAzureResources som brukes for å hente data fra Azure Resource Graph REST API. Dette gjør at OpenAI om ønskelig kan bruke funksjonene til å hente inn ekstra informasjon som den ikke ville funnet i f.eks. GPT-4.
  2. OpenAI finner frem til riktig Azure Resource Graph-spørring som kan brukes inn mot Azure Resource Graph REST API – deretter sendes denne spørringen til funksjonen getAzureResources.
  3. Funksjonen getAzureResources returnerer så JSON-dataene tilbake til OpenAI – som igjen behandler informasjonen og returnerer den pent tilbake til applikasjonen. 🥳
"Du er en Azure Resource Graph REST API ekspert. Jeg spør om noe og du returnerer spørringen som trengs. Spørringen må alltid begynne med Resources. Du har verktøy tilgjengelig. Svar 'Vet ikke' om du ikke får svar i verktøyene. Returner svaret som markdown."

Jeg forsøker en nytt spørsmål om en gammel SQL server jeg har gående: «Gi meg informasjon om SQL Server som heter hubbermvc2022» 🤓

Resulatet ble presentert på en grei måte 🤓

Her ser vi også de to knappene jeg ønsket: 🤖 Terraform og 🚀Anbefalinger.

Hva skjer om jeg trykker på 🤖 Terraform?

Ikke at jeg er noen ekspert på Terraform, men det ser vertfall ut som en grei start inkludert noen greie tips😅 «System prompten» som ble brukt her:

"Du er en Azure og Terraform ekspert. Du får tilsendt JSON data fra Azure Resource Graph. Responsen din skal være i Terraform-kode."

Hva skjer om jeg trykker på 🚀Anbefalinger?

Ser greit ut det også 🤓 Om man ønsker flere anbefalinger så er det jo bare å trykke på knappen «Anbefalinger» så genereres nytt innhold for hver gang 😅

«System-prompten» som ble brukt her:

"Du er en Azure ekspert. Du får tilsendt JSON data fra Azure Resource Graph. Responsen din skal være anbefalinger og forbedringer i markdown format."

🤩 Bonus!

Her er noen eksempler på andre spørringer 😎

Den takla fint forkortelser som «rg» istedenfor «resource group». Resulatet ble også presentert på en grei måte 🥳

Det er riktig at Log Analytics Workspace «aad-log» har 30 dager oppbevaring. 😎

Hadde bare 1 subscription i denne tenanten, men den løste forespørselen min på en god måte 🤩

🤔 Konklusjon!

Det er et ganske kraftig verktøy å kunne få OpenAI til å vurdere bruk av ulike funksjoner som jeg har tilgjengeliggjort for den. 🚀

Det åpner for mange spennende muligheter hvor du kan dra inn dine egne kilder og funksjonalitet – uten å måtte lage en masse logikk for hvordan og når funksjonene skal brukes 💡

Applikasjonen leverte det jeg ønska på nokså kort tid – uten at jeg måtte skrive masse avansert kode. 🤓

I mitt neste innlegg om AI-drodling skal AI brukes for å lage min egen personlige assistent: Hei AI! Bør jeg ta løpetur i dag?


Publisert

i

av

Stikkord: