Autentikoi käyttäjät GPT-toiminnoissa: Rakenna henkilökohtainen kalenteriassistentti
Rakenna käyttäjillesi henkilökohtainen kokemus suoraan GPT:ssäsi. Tämä opas näyttää, kuinka voit käyttää OAuthia luomaan henkilökohtaisen kalenteriassistentin GPT:ssä.
GPT:t ovat loistava tapa mukauttaa ChatGPT-kokemusta syvällisesti tiettyihin käyttötarkoituksiin. Vielä parempaa on, että ne mahdollistavat suoran vuorovaikutuksen palvelujesi kanssa käyttäen toimintoja.
Tässä opetusohjelmassa näytämme, kuinka voit käyttää OAuthia autentikoimaan käyttäjät GPT:si toiminnoissa. Rakennamme henkilökohtaisen kalenteriassistentin, jonka avulla käyttäjät voivat hallita tapahtumiaan suoraan GPT:ssä.
Lopullinen GPT näyttää tältä:
Vasemmalla puolella on käyttäjän vuorovaikutus GPT:n kanssa; oikealla puolella on verkkosovellus, joka näyttää käyttäjän kalenterin. Tämä lähestymistapa mahdollistaa myös muita asioita, kuten:
- Luo henkilökohtainen assistentti, joka auttaa käyttäjiä sulattamaan sähköpostit ja uutiset.
- Luo GPT lentojen selaamiseen ja varaamiseen poistumatta keskustelusta.
Tämän opetusohjelman tulokset ja resurssit:
- Lopullinen GPT on saatavilla ChatGPT:ssä.
- Demo-verkkosovellus on saatavilla osoitteessa gpt-agenda.fordemo.app.
- Täydellinen koodi on saatavilla GitHubissa GitHub.
Esivaatimukset
- Tällä hetkellä GPT:t ovat saatavilla vain ChatGPT Plus- ja sitä korkeammille käyttäjille.
- Logto Cloud -vuokralainen. Rekisteröidy ilmaiseksi, jos sinulla ei vielä ole.
- Verkkotunnus, jota voit hallita. Sitä käytetään sekä GPT:lle että Logto Cloudille.
- Verkkosovellus, joka voi altistaa REST-rajapinnat. Tässä opetusohjelmassa käytämme valmista kalenterisovellusta.
Luo ja määritä GPT
Luo GPT
- Avaa ChatGPT, vasemmalla puolella, napsauta Tarkastele GPT:tä -painiketta ja sitten oikeassa yläkulmassa olevaa Luo -painiketta.
- Uudella GPT-sivulla kirjoita nimi ja kuvaus GPT:llesi. Esimerkiksi, Kalenteriassistentti ja Hallitsee kalenteriasi suoraan keskustelussa.
- Voit halutessasi ladata logon GPT:llesi tai käyttää DALL-E:tä sen luomiseen napsauttamalla plus-kuvaketta.
Luo toiminto
Napsauta Luo uusi toiminto -painiketta alhaalla. Uudella sivulla on kolme osaa:
- Autentikointi: Tässä osassa voit määrittää, miten käyttäjät autentikoivat toimintosi yhteydessä. Jätämme sen Ei mitään -muotoon nyt.
- Skeema: OpenAPI skeema YAML-muodossa, joka määrittelee REST-rajapinnat toiminnollesi. Mitä yksityiskohtaisempi skeema on, sitä paremmin GPT ymmärtää käyttäjän aikomuksen.
- Tietosuojakäytäntö: Toimintosi tietosuojakäytännön URL.
Tässä opetusohjelmassa meillä on valmiiksi rakennettu kalenterisovellus, joka altistaa käyttäjän kalenterin hallintaan REST-rajapinnat. Voit löytää OpenAPI-skeeman GitHub-repossa.
Kun liität skeeman, GPT tunnistaa automaattisesti päätepisteet ja luo sinulle taulukon. Voit napsauttaa Testaa -painiketta testataksesi päätepisteitä.
GPT pyytää sinulta suostumusta API-kutsun tekemiseen. Napsauta Salli tai Salli aina -painiketta jatkaaksesi.
Jos päätepisteesi vaatii autentikointia, näet virheilmoituksen yllä olevassa muodossa. Kun tarkistamme palvelinlokeja, voimme nähdä, että GPT lähettää pyynnön ilman mitään autentikointitietoja.
Määritä mukautettu verkkotunnus Logto Cloudissa
ChatGPT vaatii, että sekä toimintojen että autentikointipäätepisteiden täytyy olla samassa juuritunnuksessa. Esimerkiksi, jos toimintopäätepisteesi on https://api.example.com/
, niin autentikointipäätepisteen täytyy olla jotain tämän kaltaista: https://auth.example.com/
.
Noudattaaksemme tätä vaatimusta, meidän täytyy määrittää mukautettu verkkotunnus Logto Cloudissa. Kirjaudu ensin Logto Cloudiin, napsauta Asetukset -välilehteä vasemmalla puolella ja sitten Verkkotunnukset -välilehteä yläosassa.
Yleensä kokoonpanon viimeistely kestää vain muutaman minuutin. Kun se on valmis, näet mukautetun verkkotunnuksen olevan Käytössä.
Luo sovellus Logto Cloudissa
OAuth-autentikointia varten meidän tulee luoda sovellus Logto Cloudissa. Kirjaudu Logto Cloudiin ja napsauta Sovellukset -välilehteä vasemmalla puolella, sitten napsauta Luo sovellus -painiketta oikeassa yläkulmassa.
Uudella sivulla napsauta "Luo sovellus ilman kehystä" alhaalla. Valitse "Perinteinen web" sovellustyypiksi ja anna sovellukselle nimi, esimerkiksi GPT Agenda Assistant. Sitten napsauta "Luo sovellus" alhaalla.
Kun sovellus on luotu, siirry PÄÄTTEET & KREDENTIAALIT -korttiin (saattaa olla tarpeen vierittää vähän alaspäin). Napsauta Näytä päätepisteet laajentaaksesi tiedot.
Määritä toiminto
Siirry takaisin GPT-toimintosivulle, napsauta Autentikointi -osaa ja valitse OAuth. Lomakekentät vastaavat seuraavia tietoja Logto Cloudissa:
- Client ID: Sovellustunnus Logto Cloudissa.
- Client Secret: Sovelluksen salaisuus Logto Cloudissa.
- Authorization URL: Valtuutuspäätepiste Logto Cloudissa.
- Token URL: Token-päätepiste Logto Cloudissa.
Scope -kenttään kirjoita openid offline_access
; "Token Exchange Method" -kenttä jätetään oletusarvoiseksi (POST-pyyntö).
Napsauta lopuksi Tallenna -painiketta alhaalla.
Päivitä Logto-sovelluksen asetukset
Palaa takaisin GPT-kokoonpanosivulle, nyt näet Palautus-URL -kentän Toiminnot -osiossa.
Kopioi kyseinen URL-osoite ja palaa Logto Cloud -sovellussivulle. Liitä URL Uudelleenohjaus-URI:t -osioon.
Vieritä nyt alas ja kytke päälle Aina anna uudistustoken tarjotaksesi uudistustoken-tuen GPT:lle. Tämä voi auttaa käyttäjiä pysymään kirjautuneena pidempään GPT:ssa.
Napsauta sitten Tallenna -painiketta alhaalla.
Tarkistuspiste: Testaa OAuth-virtaus
Nyt kun kaikki on valmista, testataan OAuth-virtaus varmistaaksemme, että kaikki toimii odotetusti. Palaa GPT-kokoonpanosivulle, napsauta luomaamme toimintoa ja napsauta Testaa -painiketta listItems-päätepisteelle (ensimmäinen niistä).
Esikatseluosio kehottaa sinua kirjautumaan sisään. Napsauta Kirjaudu sisään [toimintosi nimi] kanssa -painiketta ja viimeistele OAuth-virtaus.
Voit mukauttaa kirjautumiskokemusta, kuten brändäystä ja kirjautumismenetelmiä Logto Cloudissa. Lisätietoja saat 🎨 Mukauta kirjautumiskokemusta.
Jos kaikki toimii odotetusti, palvelimen taustajärjestelmäsi tulisi nähdä pyyntö, jossa on käyttöoikeustoken Authorization
otsikossa. Meidän tapauksessamme palvelimen taustajärjestelmä on kalenterisovellus. Se palauttaa käyttäjän kalenterin vasteen runkoon:
Hämmästyttävää on, että koska OpenAPI-skeemamme on tarpeeksi yksityiskohtainen, GPT voi suorittaa API-kutsun ilman lisäkokoonpanoa. Esimerkiksi, jos napsautat Testaa -painiketta createItems-päätepisteelle, näet, että GPT luo kyselyrunkoa sinulle (tai pyytää sinua toimittamaan puuttuvan tiedon, riippuen sen mielialasta).
Tarkista käyttöoikeustoken
Kun OAuth-virtaus toimii, voimme nyt tarkistaa käyttöoikeustokenin taustapalveluissa varmistaaksemme, että pyyntö tulee autentikoidulta käyttäjältä. Koska Logto on OIDC-palveluntarjoaja, voimme käyttää Userinfo-päätepistettä tarkistamaan käyttöoikeustokenin. Päätepiste löytyy Logto Cloud -sovellussivulta.
Lähetä yksinkertaisesti GET-pyyntö päätepisteelle käyttöoikeustokenin kanssa Authorization
otsikossa. Jos käyttöoikeustoken on kelvollinen, päätepiste palauttaa käyttäjän tiedot vasteen runkoon. Tässä on esimerkki Node.js:llä:
Voit löytää koko koodin GitHub-repossa GitHub.
Bonus: Reaaliaikainen synkronointi pääsovelluksen kanssa
Saatat käyttää omaa kalenterisovellustasi, ja autentikoinnin avulla voit synkronoida käyttäjän kalenterin reaaliajassa poistumatta keskustelusta. Nähdäksesi reaaliaikaisen synkronoinnin toiminnassa, voit siirtyä verkkosovellukseen ja kirjautua sisään samalla tilillä, jota käytit demo GPT:ssä.
Yhteenveto
GPT-toiminnot voivat olla voimakas työkalu henkilökohtaisen kokemuksen luomiseen käyttäjillesi. Jos sinulla on kysymyksiä tai palautetta, liity ystävällisesti keskusteluun Discord-palvelimellamme.