OWIS ChatGPT dodatak

U brzo mijenjajućem svijetu digitalnih tehnologija, sposobnost brzog i učinkovitog pristupa informacijama postala je nužnost. Kao razvojni inženjeri OWIS sistema, prepoznali smo potencijal korištenja umjetne inteligencije za poboljšanje korisničkog iskustva. To nas je dovelo do stvaranja našeg ChatGPT plugin-a, osmišljenog za pružanje informacija u stvarnom vremenu o OWIS sistemu.

Naš plugin služi kao spona između ChatGPT-a i OWIS sistema, omogućujući korisnicima direktan pristup informacijama o OWIS sistemu direktno kroz ChatGPT aplikaciju.

U ovom članku prikazati ćemo tehničke aspekte našeg plugin-a, njegov razvoj, funkcionalnost i jedinstvenu vrijednost koju donosi korisnicima OWIS sistema.

Potreba za dodatkom

U ogromnom području umjetne inteligencije, ChatGPT se ističe kao moćan alat sposoban za razumijevanje i generiranje teksta sličnog ljudskom. Međutim, njegovo znanje temelji se na raznolikom skupu prethodnih podataka do određenog trenutka i nema sposobnost pristupa informacijama u stvarnom vremenu specifičnim za sistem. Tu naš plugin dolazi do izražaja.

OWIS sistem, sa svojim složenim funkcionalnostima i širokim mogućnostima, predstavlja složenu cjelinu. Korisnici često imaju pitanja o njegovim modulima, upravljanju procesima, upravljanju dokumentima i drugim aspektima. Iako je ChatGPT izvrstan konverzacijski AI, bez OWIS ChatGPT plugin-a nedostaje mu specifično znanje o OWIS sistemu.

U osnovi, OWIS ChatGPT plugin transformira ChatGPT u vodiča za OWIS sistem, poboljšavajući korisničko iskustvo i čineći pristup informacijama jednostavnim poput razgovora.

 

Kako ChatGPT plugin radi

Jedna od popularnih vrsta ChatGPT plugina je "ChatGPT Retrieval plugin". Ova vrsta plugin-a koristi se za pružanje informacija u stvarnom vremenu o određenoj domeni.

Ukratko, korisnik ChatGPT aplikacije može instalirati dostupne plugin-e kao ekstenzije za ChatGPT aplikaciju. Plugin predstavlja skup API-ja koji su dostupni ChatGPT aplikaciji. Kada korisnik postavi pitanje, ChatGPT aplikacija u pozadini proziva jedan od dostupnih API-ja. API je odgovoran za vraćanje teksta ChatGPT aplikaciji, koji sadrži odgovor na korisnikovo pitanje. Taj tekst služi kao kontekst na temelju kojeg ChatGPT daje odgovor korisniku.

Trenutno su ChatGPT plugin-i dostupni samo pretplatnicima ChatGPT Plus i developerima. Moguće je instalirati neograničen broj plugin-a, ali u jednom trenutku može biti aktivno samo tri plugin-a.

Aktiviranjem željenih plugin-a, čine ih dostupnim ChatGPT aplikaciji, gdje ChatGPT na temelju razgovora odlučuje hoće li koristiti neki od plugin-a.

Kako ChatGPT zna koji plugin koristiti na temelju korisnikovog pitanja?

Pri objavljivanju  plugin-a, potrebno je definirati manifest datoteku koja bi trebala biti smještena na yourdomain.com/.well-known/ai-plugin.json.

Sadržaj datoteke je u sljedećem formatu:

{

  "schema_version": "v1",

  "name_for_model": "owis",

  "name_for_human": "OWIS",

  "description_for_model": "Your description for model",

  "description_for_human": "Your description for human",

  "auth": {

    "type": "service_http",

    "authorization_type": "bearer",

    "verification_tokens": {

      "openai": ""

    }

  },

  "api": {

    "type": "openapi",

    "url": "yourdomain.com/.well-known/openapi.yaml",

    "has_user_authentication": false

  },

  "logo_url": "yourdomain.com/.well-known/logo.png",

  "contact_email": "",

  "legal_info_url": ""

}

Kao što vidite, jedno od polja u ovoj datoteci je 'description_for_model'. U tom polju potrebno je pružiti opis ili upute ChatGPT aplikaciji o tome što plugin predstavlja i kada ga može koristiti.

Primjer:

"Dodatak za dohvaćanje informacija o OWIS sustavu. OWIS predstavlja integrirano rješenje..."

ChatGPT sprema vrijednost ovog polja u embedding tj. vektorskom formatu. Kada korisnik postavi pitanje, ChatGPT pravi embedding pitanja i računa kosinusnu sličnost između embedding-a upita i embedding-a opisa aktivnih plugin-a. Na temelju ove kosinusne sličnosti, ChatGPT određuje da li će koristiti neki od plugin-a, i ako da, koji. 

Kako ChatGPT određuje koji API koristiti?

Vidjeli smo kako ChatGPT određuje koji plugin koristiti na temelju korisnikovog pitanja. Budući da plugin može sadržavati više API-ja koji su dostupni ChatGPT-u, postavlja se pitanje kako ChatGPT zna koji API koristiti?

Osim manifest datoteke, potrebno je da developeri definišu dostupne API-je u datoteci: yourdomain.com/.well-known/openapi.yaml, koristeći OPENAPI specifikaciju.

Ova datoteka treba pružiti jasan opis API-ja kao i svih parametara. Ti opisi služe kao smjernice za ChatGPT aplikaciju u određivanju koji API proziva i s kojim parametrima.

Na primjer, pretpostavimo da razvijamo plugin za zadatke (Todo plugin) koji, između ostalog, sadrži API za kreiranje zadatka sa payload-om: {"text": string, "due_date": Date}.

Ako korisnik ChatGPT aplikacije ima aktiviran to-do plugin, može ga aktivirati sljedećom porukom:

Korisnik: Kreiraj zadatak: "Odgovorite na e-mail do 08.12.2023."

Na temelju ove poruke, ChatGPT će pretpostaviti da treba pozvati API za kreiranje zadatka i pozvat će ga s sljedećim parametrima: {"text": "Odgovorite na e-mail", "due_date": 08.12.2023}.

Još jedan primjer poruke može biti:

Korisnik: Kreiraj zadatak: "Odgovorite na e-mail do petka."

U ovom slučaju, ChatGPT će poslati datum prvog sljedećeg petka za due_date. 

ChatGPT transformira parametre na temelju razgovora kako bi se uskladili s pozvanim API-jem.

Na primjer, ako korisnik postavi prvo pitanje:

Korisnik: "Šta su akcije u OWIS sistemu?"

ChatGPT će pozvati API i vjerojatno proslijediti tekst nepromijenjen:

ChatGPT proziva API s pitanjem: "Šta su akcije u OWIS sistemu?"

Međutim, ako korisnik postavi sljedeće pitanje:

Korisnik: "A akcije?"

ChatGPT će taj tekst preoblikovati u format koji bolje odgovara API-ju:

ChatGPT proziva API s pitanjem: "Što su akcije u OWIS sistemu?"

To nas dovodi do ideje da možemo instruirati ChatGPT kako da transformiše parametre prije proozivanja API-ja.

Na primjer, OWIS ChatGPT plugin sadrži API api/query s parametrom queries: string[].

S obzirom na to da je OWIS baza znanja trenutno na bosanskom jeziku, bilo je potrebno transformisati parametar i prevesti ga na bosanski jezik. Stoga smo u OPENAPI specifikaciji dali upute ChatGPT-u da prevede pitanje na bosanski jezik, ako korisnik postavi pitanje na drugom jeziku. To omogućuje OWIS ChatGPT plugin da bude dostupan svim korisnicima bez obzira na njihov jezik. 

required:

        - queries

      type: object

      properties:

        queries:

          type: array

          description: …Query list MUST be in Bosnian language. Translate if not in Bosnian…

Previous
Previous

OWIS Q: OWIS sa AI tehnologijom

Next
Next

Vaša organizacija je porasla od startapa. Šta dalje?