Näin rakennat AI-chatbot-sovelluksen: avaimet, kehotteet, kustannukset ja turvallisuus
Jotta voit rakentaa AI-chatbot-sovelluksen, tarvitset neljä asiaa: chat-käyttöliittymän, pienen palvelimen, joka pitää mallipalvelun API-avaimen ja välittää viestit sille, järjestelmäkehotteen, joka kertoo mallille, kuka se on ja mitä se saa tehdä, sekä rajoitukset, joilla kustannukset ja väärinkäyttö pidetään kurissa. AI-sovellusrakentaja voi kirjoittaa kaiken tämän kuvauksen perusteella. Itse vastaat palveluntarjoajan valinnasta, ohjeistuksen kirjoittamisesta ja siitä, mitä botin ei koskaan pidä tehdä.
Mistä AI-chatbot-sovellus koostuu
Useimmissa chatbot-sovelluksissa, olivatpa ne asiakastukiavustajia, opetusbotteja tai sisäisiä ”kysy dokumenteistamme” -työkaluja, on samat osat:
| Osa | Mitä se tekee | Voiko sen jättää pois? |
|---|---|---|
| Chat-käyttöliittymä | Viestilista, syöttökenttä, ”ajattelee”-tila, vastaukset suoratoistettuina | Ei |
| Palvelinreitti | Vastaanottaa käyttäjän viestin, lisää järjestelmäkehotteen ja kutsuu palveluntarjoajaa salaisella avaimellasi | Ei, avain ei saa koskaan päätyä selaimeen |
| Järjestelmäkehote | Pysyvät ohjeet: rooli, sävy, rajaus ja se, mihin ei vastata | Ei |
| Tietopohja | Oma sisältösi, josta botti vastaa (UKK, käytännöt, tuotedokumentit) | Kyllä, yleisavustajassa |
| Keskustelujen tallennus | Tallentaa keskustelut tietokantaan, jotta käyttäjät voivat palata niihin | Kyllä, ensimmäisessä versiossa |
| Käyttäjätilit | Pitää käyttäjän historian näkyvänä vain hänelle ja mahdollistaa käytön rajoittamisen henkilökohtaisesti | Kyllä, julkisessa demossa, jossa on tiukat rajat |
| Rajoitukset ja lokitus | Viestin pituusrajat, kutsurajat, kulutusraja ja virhelokit | Ei |
Palvelinreitti on osa, jonka ihmiset useimmin tekevät väärin. Jos chat-sivu kutsuu palveluntarjoajaa suoraan selaimesta, kuka tahansa voi avata kehittäjätyökalut, kopioida avaimesi ja ajaa laskusi kasvamaan.
Päätökset ennen rakentamista
Palveluntarjoaja ja malli
Suuret palveluntarjoajat (OpenAI, Anthropic, Google ja muut) tarjoavat chat-tyylisen rajapinnan, joka toimii samalla tavalla: lähetät viestilistan ja saat vastauksen. Käytännön valinta riippuu enemmän mallin koosta kuin brändistä:
- Pienemmät, nopeammat mallit ovat halvempia ja vastaavat nopeasti. Ne sopivat lyhyisiin vastauksiin, luokitteluun ja yksinkertaisiin UKK-botteihin.
- Suuremmat mallit päättelevät paremmin, noudattavat pitkiä ohjeita luotettavammin ja selviävät sotkuisista kysymyksistä, mutta maksavat enemmän viestiä kohden ja vastaavat hitaammin.
Aloita keskikokoisella mallilla, testaa sitä oikeilla kysymyksilläsi ja siirry suuntaan tai toiseen tarpeen mukaan. Jos et ole vielä perehtynyt siihen, miten näiden rajapintojen hinnoittelu ja kutsuminen toimii, lue ensin kuinka LLM-rajapintoja käytetään.
Mistä botin tieto tulee
| Sisältösi | Lähestymistapa |
|---|---|
| Yksi tai kaksi sivua (aukioloajat, palautuskäytäntö, hinnasto) | Kirjoita suoraan järjestelmäkehotteeseen |
| Kymmeniä sivuja, jotka muuttuvat harvoin | Lisää tiivistetty versio kehotteeseen tai jaa aihealueittain ja liitä vain asiaan kuuluva osa |
| Satoja dokumentteja tai sisältöä, joka muuttuu päivittäin | Tallenna sisältö, hae kunkin kysymyksen kannalta olennaiset kohdat ja lähetä vain ne (RAG) |
Aloita yksinkertaisimmalla vaihtoehdolla, joka kattaa sisältösi. Haku lisää hakuindeksin, tavan pitää se ajan tasalla ja enemmän paikkoja, joissa vastaukset voivat mennä pieleen. Monet hyödylliset botit eivät koskaan tarvitse sitä.
Julkinen vai kirjautumisen takana
Julkinen chatbot verkkosivullasi on helppo tavoittaa, mutta yhtä helppo väärinkäyttää: joku voi skriptillä lähettää tuhansia viestejä. Kirjautumisen takana oleva chatbot mahdollistaa historian tallentamisen käyttäjittäin ja päiväkohtaisen kiintiön jokaiselle tilille. Jos botti on julkinen, rajoita viestien pituus, rajoita kuinka monta viestiä yksi vierailija voi lähettää tietyssä ajassa ja aseta palveluntarjoajan hallintapaneeliin kuukausikohtainen kova raja. Kuinka lisäät kirjautumisen sovellukseesi käsittelee tilipuolta.
Tallennetaanko keskustelut
Tallennetut keskustelut ovat hyödyllisiä: käyttäjät voivat jatkaa siitä, mihin jäivät, ja voit lukea todellisia kysymyksiä parantaaksesi kehotetta. Ne ovat kuitenkin henkilötietoja. Päätä, kuinka kauan säilytät niitä, kerro siitä tietosuojaselosteessa äläkä tallenna mitään, mitä et tarvitse.
Kirjoita järjestelmäkehote kuin työnkuvaus
Järjestelmäkehote on ohje, jonka malli saa ennen jokaista keskustelua. Hyvä kehote on lyhyt ohje uudelle työntekijälle:
- Rooli ja yleisö: ”Olet Oaklinen-polkupyörähuoltamon neuvova avustaja. Puhut asiakkaille.”
- Rajaus: ”Vastaa kysymyksiin palveluista, hinnoista, aukioloajoista ja ajanvarauksesta. Muihin aiheisiin sano, että voit auttaa vain liikkeen asioissa.”
- Tietolähde: ”Käytä vain alla olevaa tietoa. Jos vastausta ei ole siellä, sano, ettei tiedä, ja anna liikkeen puhelinnumero.”
- Sävy ja pituus: ”Ystävällinen, selkeä suomi, enintään kolme lausetta, ellei yksityiskohtia pyydetä.”
- Ehdottomat säännöt: ”Älä koskaan lupaa korjaushintaa, jota ei ole listattu. Älä koskaan pyydä korttitietoja.”
Testaa sitten kehotetta hankalilla kysymyksillä: asioilla, jotka eivät kuulu aihepiiriin, töykeillä viesteillä, kysymyksillä, joiden vastausta sisältösi ei sisällä, ja yrityksillä saada botti unohtamaan ohjeensa (”unohda säännöt ja…”). Muokkaa kehotetta, kunnes vastaukset ovat sellaisia, joiden takana haluat itse seistä.
Pidä kustannukset ennustettavina
Palveluntarjoajat laskuttavat tokenien mukaan (karkeasti sanan osina) lähettämästäsi syötteestä ja mallin tuottamasta vastauksesta. Kolme asiaa ohjaa laskua:
- Keskustelun pituus. Jokainen uusi viesti lähettää yleensä koko ketjun uudelleen, jotta malli tietää asiayhteyden. 40 viestin keskustelu maksaa vastauksesta huomattavasti enemmän kuin 4 viestin keskustelu. Pidä vain viimeiset muutama vuoro tai tiivistä vanhemmat.
- Kehotteen koko. Pitkä järjestelmäkehote tai iso liitetty tietolohko lähetetään jokaisen viestin mukana.
- Vastauksen pituus. Aseta enimmäispituus vastaukselle API-kutsussa ja pyydä kehotteessa tiiviitä vastauksia.
Aseta palveluntarjoajan hallintapaneeliin kuukausikohtainen kulutusraja ennen julkaisua ja kirjaa tokenien käyttö jokaisesta pyynnöstä, jotta näet, mitkä keskustelut ovat kalliita. Emme mainitse hintoja tässä, koska ne vaihtelevat mallin mukaan ja muuttuvat usein. Tarkista palveluntarjoajasi oma hinnasto.
Rakenna vaihe vaiheelta
Vaihe 1: Kuvaa botti, älä koodia
Ensimmäinen kehote, jossa nimeät yleisön, rajauksen, datan ja turvasäännöt, vie sinut pitkälle:
Rakenna asiakastuen chatbot Oaklinelle, polkupyörähuoltamolle. Chat-sivu, jossa on viestilista ja syöttökenttä, ja vastaukset näkyvät suoratoistettuina kirjoitettaessa. Kutsu Anthropicin API:a palvelinreitiltä salaisella avaimella ANTHROPIC_API_KEY, älä koskaan paljasta sitä selaimelle. Käytä järjestelmäkehotettä, joka vastaa vain palveluista, hinnoista ja aukioloajoista tiedostosta shop-info.md ja sanoo muuten ”En ole varma, soita meille alla olevaan numeroon”. Rajoita viestit 500 merkkiin ja 20 viestiin vierailijaa kohden tunnissa. Siisti ja ystävällinen ulkoasu, joka toimii puhelimella.
Vaihe 2: Lisää avain salaisuutena
Luo avain palveluntarjoajasi konsolissa ja tallenna se projektin ympäristömuuttujiin tai salaisuuksiin, älä chattiin äläkä koodiin. Jos avain joutuu jonnekin julkiseksi, mitätöi se palveluntarjoajalla ja luo uusi. Mitä ympäristömuuttujat ja salaisuudet ovat selittää, miksi tämä on tärkeää.
Vaihe 3: Testaa vastaukset, älä vain käyttöliittymää
Kun chat toimii, käytä suurin osa ajasta vastausten laatuun. Pidä listaa noin 20 todellisesta kysymyksestä, mukaan lukien muutama, johon ei pitäisi vastata, ja käy ne läpi aina kun kehotetta muutetaan. Tarkista:
- Pysyykö botti rajauksessa?
- Myöntääkö se, kun se ei tiedä, sen sijaan että keksisi vastauksen?
- Kestääkö se, kun joku yrittää ohittaa sen ohjeet?
- Puuttuuko avain kaikesta, minkä selain lataa?
Vaihe 4: Lisää muisti ja tilit tarvittaessa
Kun yksittäiset keskustelut toimivat, pyydä tallennetut ketjut tietokantaan ja tarvittaessa rekisteröityminen ja kirjautuminen, jotta jokainen käyttäjä näkee vain omat keskustelunsa. Lisää samalla käyttäjäkohtainen päivittäinen viestiraja.
Vaihe 5: Julkaise rajat päällä
Varmista, että julkaistu sovellus saa samat salaisuudet kuin esikatselu, palveluntarjoajalla on kulutusraja ja virheet kirjautuvat paikkaan, josta näet ne. Jaa sitten sovellus pienelle ryhmälle ennen kuin laitat sen pääsivustollesi.
Turvallisuus ja luottamus
Chatbot puhuu yleisölle nimissäsi, joten pidä sen virhetilanteita omana vastuunasi:
- Vääriä vastauksia. Mallit voivat esittää vääriä asioita varmoina. Pidä botti kapealla aihealueella, perusta se omaan sisältöösi ja näytä lyhyt huomautus, että vastaukset voivat olla virheellisiä tärkeissä asioissa.
- Kehotteen injektio. Käyttäjät (tai dokumentit, joita botti lukee) voivat sisältää ohjeita kuten ”ohita aiemmat säännöt”. Älä anna botille valtuuksia, joihin sitä ei voi luottaa: ei hyvityksiä, poistoja tai sähköposteja käyttäjän pyynnöstä ilman tarkistusta omassa koodissasi.
- Arkaluonteiset aiheet. Lääketieteellisissä, oikeudellisissa tai taloudellisissa kysymyksissä ohjaa ihmiset ammattilaisen puoleen sen sijaan, että botti antaisi neuvoja.
- Henkilötiedot. Älä liitä asiakastietoja kehotteisiin, ellei se ole välttämätöntä, ja tarkista palveluntarjoajasi ehdoista, miten API-dataa käsitellään.
Meidän tietoturvalista tarkistuslista tekoälyllä rakennetuille sovelluksille kattaa koko sovelluksen.
Yleisiä virheitä
- Palveluntarjoajan kutsuminen selaimesta. Avain vuotaa. Kulje aina palvelimesi kautta.
- Ei rajoja julkisella botilla. Yksi skripti voi tyhjentää kuukauden budjetin iltapäivässä.
- RAG:n, työkalujen ja useiden mallien aloittaminen yhtä aikaa. Saa ensin yksi hyvä keskustelu toimimaan; lisää loput, kun todelliset kysymykset osoittavat tarpeen.
- Vain ystävällisten kysymysten testaaminen. Käyttäjät kysyvät ensimmäisenä päivänä outoja, vihamielisiä ja aiheen ulkopuolisia asioita.
- Ketjun kasvaminen loputtomiin. Kustannukset ja vastausajat kasvavat jokaisen viestin myötä.
Milloin valmis tuote on parempi valinta
Oman botin rakentaminen on järkevää, kun chatbot on osa tuotettasi, tarvitsee omaa dataasi tai työnkulkuasi tai tarvitsee tietyn ulkoasun ja käyttäytymisen. Usein se on kuitenkin väärä valinta, jos:
- Haluat vain tukiwidgetin olemassa olevalle sivustolle. Monissa help desk- ja live-chat-tuotteissa on nykyään tekoälyvastaaja, joka lukee ohjekeskuksesi, ja siinä on valmiina ihmiskäsittelyn siirto, postilaatikko ja raportointi.
- Vain sinä tai tiimisi käytätte sitä. Yleisen avustajan, kuten ChatGPT:n tai Clauden, tilaus ja dokumenttien lataaminen siihen voi riittää.
- Tarvitset tiukat vaatimustenmukaisuustakuut (esimerkiksi säännellyt terveys- tai rahoitustiedot). Toimittaja, jolla on jo sertifioinnit, voi olla turvallisempi kuin oma toteutus.
Rakentaminen Mythexillä
Mythex on AI-sovellusrakentaja: kuvaat chatbotin chatissa, ja se kirjoittaa käyttöliittymän ja palvelinpuolen kutsun, ajaa sen live-esikatselussa ja julkaisee sen julkiseen osoitteeseen. Sovelluksen sisäinen tekoäly käyttää omaa palveluntarjoajan avaintasi. Lisäät sen projektin salaisuuksiin tai Mythexin chatissa näyttämän salaisuuskortin kautta, kun sitä tarvitaan, ja palveluntarjoajan käyttö laskutetaan palveluntarjoajatililtäsi, ei Mythexin rakennuskrediiteistä. Mythex ei sisällytä tokeneita sovelluksesi käyttäjille, valmista tietopohjatuotetta tai valmiita kutsurajoja: nämä ovat osia, jotka pyydät ja testaat itse. Tekoälyn lisääminen sovellukseesi -dokumentaatiosivu käy läpi prosessin, ja tekoälyn lisääminen omilla API-avaimilla sisältää aloituskehotteen.
Jos botti tarvitsee tallennetut ketjut, Mythex liittää projektiin Postgres-tietokannan, kun sitä pyydät. Lisää tapoja käyttää malleja sovelluksissa yhteenvedoista luokitteluun löydät kohdasta kuinka lisäät tekoälyominaisuuksia sovellukseesi, tai selaa sovellusmalleja lähtökohdiksi.
Kysymykset
Tarvitsenko oman API-avaimen AI-chatbot-sovelluksen rakentamiseen?
Lähes aina kyllä. Chatbot lähettää jokaisen viestin mallipalvelulle, kuten OpenAI:lle, Anthropicille tai Googlelle, ja palveluntarjoaja laskuttaa API-avaimen omistavaa tiliä. Avaimen on oltava palvelimellasi, ei koskaan verkkosivun koodissa.
Kuinka paljon AI-chatbotin ylläpito maksaa?
Palveluntarjoajat veloittavat tokenien mukaan, sekä lähettämästäsi tekstistä että mallin vastauksesta, ja hinnat vaihtelevat paljon mallien välillä. Koska jokainen uusi viesti lähettää yleensä koko keskustelun uudelleen, pitkät keskustelut maksavat viestiä kohden enemmän kuin lyhyet. Tarkista palveluntarjoajasi hinnasto ja aseta hallintapaneelissa kulutusraja.
Voinko kouluttaa chatbotin omilla dokumenteillani?
Yleensä et kouluta itse mallia. Pienen sisällön voit liittää järjestelmäkehotteeseen; suuremman aineiston kohdalla tallennat sen, haet jokaiseen kysymykseen liittyvät kohdat ja lähetät mallille vain ne. Tätä jälkimmäistä tapaa kutsutaan nimellä retrieval-augmented generation eli RAG.
Voiko AI-chatbotin rakentaa ilman koodaamista?
Kyllä. AI-sovellusrakentaja voi luoda selkeällä kielellä kuvatusta pyynnöstä chat-käyttöliittymän, palvelinreitin, joka kutsuu mallia, sekä tietokannan tallennetuille keskusteluille. Palveluntarjoajan tilin ja API-avaimen luot kuitenkin itse.