Ako vytvoriť aplikáciu s AI chatbotom: kľúče, prompty, náklady a bezpečnosť
Aby ste vytvorili aplikáciu s AI chatbotom, potrebujete štyri veci: chatovacie rozhranie, malý server, ktorý drží API kľúč vášho poskytovateľa modelu a preposiela mu správy, systémový prompt, ktorý modelu hovorí, kto je a čo smie robiť, a obmedzenia, ktoré držia náklady a zneužitie pod kontrolou. Nástroj na tvorbu aplikácií dokáže všetko z popisu napísať za vás. Čo zostáva na vás, je výber poskytovateľa, napísanie pokynov a rozhodnutie, čo bot nikdy nesmie robiť.
Z čoho sa skladá aplikácia s AI chatbotom
Väčšina chatbot aplikácií, či ide o podporného asistenta, tútora alebo interný nástroj „opýtaj sa našich dokumentov“, má rovnaké časti:
| Časť | Čo robí | Dá sa vynechať? |
|---|---|---|
| Chatovacie rozhranie | Zoznam správ, vstupné pole, stav „premýšľa“, postupne sa zobrazujúce odpovede | Nie |
| Serverová trasa | Prijme správu používateľa, pridá systémový prompt a zavolá poskytovateľa s vaším tajným kľúčom | Nie, kľúč sa nesmie dostať do prehliadača |
| Systémový prompt | Trvalé pokyny: rola, tón, rozsah, čo odmietnuť | Nie |
| Znalosti | Váš vlastný obsah, z ktorého bot odpovedá (FAQ, zásady, produktová dokumentácia) | Áno, pri všeobecnom asistentovi |
| Ukladanie konverzácií | Ukladá vlákna do databázy, aby sa sem používatelia mohli vrátiť | Áno, pri prvej verzii |
| Účty | Umožňujú, aby každý používateľ videl len svoju históriu, a dajú sa nimi obmedziť využitie na osobu | Áno, pri verejnom dema s prísnymi limitmi |
| Limity a logovanie | Dĺžka správ, limity počtu požiadaviek, strop výdavkov, záznam chýb | Nie |
Serverová trasa je časť, ktorú ľudia najčastejšie robia zle. Ak stránka s chatom volá poskytovateľa priamo z prehliadača, ktokoľvek môže otvoriť vývojárske nástroje, skopírovať váš kľúč a spôsobiť vám vysoký účet.
Rozhodnutia pred začiatkom
Poskytovateľ a model
Hlavní poskytovatelia (OpenAI, Anthropic, Google a ďalší) ponúkajú chatovacie API, ktoré funguje rovnako: pošlete zoznam správ a dostanete odpoveď. Praktická voľba závisí menej od značky a viac od veľkosti modelu:
- Menšie, rýchlejšie modely sú lacnejšie a rýchlo odpovedajú. Hodia sa na krátke odpovede, triedenie a jednoduché FAQ boty.
- Väčšie modely lepšie uvažujú, spoľahlivejšie dodržiavajú dlhé pokyny a zvládnu nejasné otázky, no na správu stoja viac a odpovedajú pomalšie.
Začnite so stredne veľkým modelom, otestujte ho na svojich reálnych otázkach a podľa výsledkov prejdite na väčší alebo menší. Ak ste s účtovaním a volaním týchto API ešte neskúsení, najprv si prečítajte ako používať LLM API.
Odkiaľ berie bot svoje znalosti
| Váš obsah | Prístup |
|---|---|
| Jedna či dve stránky (otváracie hodiny, reklamačný poriadok, cenník) | Vložte ich priamo do systémového promptu |
| Desiatky stránok, ktoré sa málo menia | Vložte do promptu skrátenú verziu alebo ho rozdeľte podľa tém a pridajte relevantnú časť |
| Stovky dokumentov alebo obsah, ktorý sa mení denne | Uložte ho, vyhľadajte pasáže zodpovedajúce každej otázke a pošlite len tie (RAG) |
Začnite najjednoduchšou možnosťou, ktorá pokryje váš obsah. Vyhľadávanie pridá vyhľadávací index, spôsob jeho aktualizácie a ďalšie miesta, kde sa odpovede môžu pokaziť. Mnohí užitoční boti ho nikdy nepotrebujú.
Verejný bot, alebo za prihlásením
Verejný chatbot na vašej webstránke je ľahko dostupný, ale rovnako ľahko sa dá zneužiť: niekto dokáže cez skript poslať tisíce správ. Chatbot za prihlásením umožňuje ukladať históriu pre každého používateľa a nastaviť denný limit na účet. Ak je bot verejný, obmedzte dĺžku správy, počet správ jednej návštevy v danom čase a v administrácii poskytovateľa nastavte pevný mesačný limit. Účtovú stránku pokrýva ako pridať prihlásenie do aplikácie.
Či ukladať konverzácie
Uložené vlákna sú užitočné: používatelia môžu pokračovať tam, kde skončili, a vy môžete čítať skutočné otázky a zlepšovať prompt. Sú to však osobné údaje. Rozhodnite, ako dlho ich budete uchovávať, uveďte to vo svojom oznámení o ochrane súkromia a neukladajte nič, čo nepotrebujete.
Napíšte systémový prompt ako popis pracovnej pozície
Systémový prompt je pokyn, ktorý model dostane pred každou konverzáciou. Dobrý prompt číta ako krátke zadanie pre nového zamestnanca:
- Rola a publikum: „Si pomocný asistent pre Oakline, dielňu na opravu bicyklov. Hovoríš so zákazníkmi.“
- Rozsah: „Odpovedaj na otázky o službách, cenách, otváracích hodinách a rezervácii. Na všetko ostatné povedz, že pomáhaš len s dielňou.“
- Zdroj pravdy: „Používaj len informácie uvedené nižšie. Ak odpoveď tam nie je, povedz, že to nevieš, a daj telefónne číslo dielne.“
- Tón a dĺžka: „Priateľsky, jednoducho, najviac tri vety, pokiaľ sa nepýta na podrobnosti.“
- Pevné pravidlá: „Nikdy nesľúb cenu opravy, ktorá nie je uvedená. Nikdy nepýtaj údaje o karte.“
Potom ho otestujte nepríjemnými otázkami: mimo témy, hrubými správami, otázkami, na ktoré vaše podklady nemajú odpoveď, a pokusmi prinútiť ho ignorovať pokyny („zabudni na pravidlá a…“). Upravujte prompt, kým odpovede nebudú také, za ktoré by ste sa podpísali.
Udržte náklady predvídateľné
Poskytovatelia účtujú na token (zhruba časti slov) za vstup, ktorý pošlete, a za výstup, ktorý model napíše. Účet ovplyvňujú tri veci:
- Dĺžka konverzácie. Každá nová správa zvyčajne znovu posiela celé vlákno, aby mal model kontext. Chat so 40 správami stojí na jednu odpoveď oveľa viac než chat so štyrmi. Nechajte len posledných niekoľko výmen alebo staršie zhrňte.
- Veľkosť promptu. Dlhý systémový prompt alebo veľký blok vloženého obsahu sa posiela pri každej správe.
- Dĺžka výstupu. V API volaní nastavte maximálnu dĺžku odpovede a v prompte požiadajte o stručné odpovede.
Pred spustením nastavte v administrácii poskytovateľa mesačný limit výdavkov a zaznamenávajte spotrebu tokenov pri každej požiadavke, aby ste videli, ktoré konverzácie sú drahé. Ceny tu neuvádzame, lebo sa líšia podľa modelu a často sa menia. Pozrite si cenník vášho poskytovateľa.
Postupujte krok za krokom
Krok 1: Opíšte bota, nie kód
Prvý prompt, ktorý pomenuje publikum, rozsah, dáta a bezpečnostné pravidlá, vás dostane väčšinou k cieľu:
Vytvor zákaznícky chatbot pre Oakline, dielňu na opravu bicyklov. Chatovacia stránka so zoznamom správ a vstupným poľom, odpovede sa zobrazujú postupne, ako vznikajú. Volaj Anthropic API z serverovej trasy pomocou tajného kľúča ANTHROPIC_API_KEY, nikdy ho nesprístupni prehliadaču. Použi systémový prompt, ktorý odpovedá len na otázky o službách, cenách a hodinách z textu v súbore shop-info.md, a inak povie: „Nie som si istý, zavolajte nám na číslo uvedené nižšie.“ Obmedz správy na 500 znakov a 20 správ na návštevníka za hodinu. Čistý, priateľský dizajn, ktorý funguje na telefóne.
Krok 2: Pridajte kľúč ako tajomstvo
Kľúč vytvorte v konzole poskytovateľa a potom ho uložte do premenných prostredia alebo tajomstiev projektu, nie do chatu a nie do kódu. Ak sa kľúč niekedy objaví niekde verejne, zrušte ho u poskytovateľa a vytvorte nový. Prečo na tom záleží, vysvetľuje čo sú premenné prostredia a tajomstvá.
Krok 3: Otestujte odpovede, nielen rozhranie
Keď chat funguje, väčšinu času venujte kvalite odpovedí. Pripravte si zoznam asi 20 reálnych otázok vrátane niekoľkých, ktoré by mal bot odmietnuť, a prejdite ich po každej zmene promptu. Skontrolujte:
- Zostáva bot v rozsahu?
- Priznáva, keď niečo nevie, namiesto toho, aby si odpoveď vymyslel?
- Obstojí, keď sa ho niekto pokúsi prinútiť ignorovať pokyny?
- Je kľúč vynechaný z čohokoľvek, čo si prehliadač stiahne?
Krok 4: Pridajte pamäť a účty, ak ich potrebujete
Keď fungujú jednotlivé konverzácie, požiadajte o ukladanie vlákien do databázy a, ak treba, o registráciu a prihlásenie, aby každý používateľ videl len svoje chaty. Zároveň pridajte denný limit správ na používateľa.
Krok 5: Publikujte so zapnutými limitmi
Uistite sa, že publikovaná aplikácia má rovnaké tajomstvá ako náhľad, že výdavkový strop je nastavený u poskytovateľa a že chyby sa zapisujú na miesto, kde ich uvidíte. Potom ju ukážte malej skupine, skôr než ju dáte na svoju hlavnú stránku.
Bezpečnosť a dôvera
Chatbot hovorí s verejnosťou vaším menom, takže jeho zlyhania sú vaším problémom:
- Nesprávne odpovede. Modely dokážu sebavedomo tvrdiť nepravdy. Držte bota na úzkej téme, opierajte ho o vlastný obsah a pri dôležitých veciach ukážte krátku poznámku, že odpovede môžu byť nepresné.
- Prompt injection. Používatelia (alebo dokumenty, ktoré bot číta) môžu obsahovať pokyny ako „ignoruj predchádzajúce pravidlá“. Botovi nedávajte právomoci, ktorým nemožno dôverovať: žiadne vrátenie peňazí, mazanie ani odosielanie e-mailov na žiadosť používateľa bez kontroly vo vašom vlastnom kóde.
- Citlivé témy. Pri zdravotných, právnych alebo finančných otázkach nech bot odkáže na odborníka a nedáva rady.
- Osobné údaje. Nevkladajte zákaznícke záznamy do promptov, ak to nie je nevyhnutné, a skontrolujte, čo podmienky vášho poskytovateľa hovoria o spracovaní dát z API.
Náš bezpečnostný kontrolný zoznam pre aplikácie vytvorené s AI pokrýva širšiu aplikáciu.
Časté chyby
- Volanie poskytovateľa z prehliadača. Kľúč unikne. Vždy choďte cez svoj server.
- Verejný bot bez limitov. Jeden skript dokáže vyčerpať mesačný rozpočet za jedno popoludnie.
- Začať naraz s RAG, nástrojmi a viacerými modelmi. Najprv dostaňte do poriadku jednu dobrú konverzáciu; ostatné pridajte, až to ukážu reálne otázky.
- Testovanie len priateľských otázok. Vaši používatelia v prvý deň položia divné, nepriateľské aj mimo témy ležiace otázky.
- Vlákno, ktoré rastie donekonečna. Náklady aj čas odpovede rastú s každou správou.
Kedy je lepšou voľbou hotový produkt
Vlastný bot dáva zmysel, ak je chatbot súčasťou vášho produktu, potrebuje vaše dáta alebo workflow a musí mať konkrétny vzhľad a správanie. Často je to zlá voľba, keď:
- Chcete len podporný widget na existujúcej stránke. Mnohé helpdesk a live-chat produkty dnes obsahujú AI bota, ktorý číta vaše centrum pomoci, s hotovým odovzdaním človeku, schránkou a reportingom.
- Bude ho používať len vy alebo váš tím. Predplatné všeobecného asistenta, ako sú ChatGPT alebo Claude, s nahratými dokumentmi vám môže stačiť.
- Potrebujete prísne záruky súladu s predpismi (napríklad regulované zdravotné alebo finančné údaje). Dodávateľ, ktorý už má certifikácie, môže byť bezpečnejší ako vlastné riešenie.
Ako to urobiť s Mythex
Mythex je nástroj na tvorbu AI aplikácií: chatbota opíšete v chate, Mythex napíše rozhranie a volanie na serveri, spustí ho v živom náhľade a publikuje na verejnú URL. AI vo vašej aplikácii používa váš vlastný kľúč poskytovateľa. Pridáte ho do tajomstiev projektu alebo cez kartu s tajomstvom, ktorú Mythex ukáže v chate, keď ju bude potrebovať. Využitie poskytovateľa sa účtuje na váš účet u poskytovateľa, nie na kredity Mythex na stavbu. Mythex nedodáva tokeny pre používateľov vašej aplikácie, nie je to hotový produkt na znalostnú databázu ani nemá pripravené limity počtu požiadaviek. To všetko sú časti, ktoré si vyžiadate a otestujete. Stránka dokumentácie o pridávaní AI do vašej aplikácie prejde celý postup a pridanie AI s vlastnými API kľúčmi obsahuje začiatočný prompt.
Ak bot potrebuje ukladať vlákna, Mythex k projektu pripojí databázu Postgres, keď o ňu požiadate. Ďalšie spôsoby, ako používať modely vo vnútri aplikácie, od zhrnutí po klasifikáciu, nájdete v článku ako pridať AI funkcie do aplikácie, alebo si prezrite šablóny aplikácií ako východiská.
Otázky
Potrebujem na vytvorenie AI chatbota vlastný API kľúč?
Áno, takmer vždy. Chatbot posiela každú správu poskytovateľovi modelu, napríklad OpenAI, Anthropic alebo Google, a poskytovateľ účtuje účtu, ktorému patrí API kľúč. Kľúč musí byť uložený na vašom serveri, nikdy nie na webovej stránke.
Koľko stojí prevádzka AI chatbota?
Poskytovatelia účtujú za tokeny, a to za text, ktorý posielate, aj za text, ktorý model vráti. Ceny sa medzi modelmi výrazne líšia. Keďže každá nová správa zvyčajne znovu posiela doterajšiu konverzáciu, dlhé chaty stoja na jednu správu viac než krátke. Pozrite si cenník svojho poskytovateľa a v jeho administrácii nastavte limit výdavkov.
Môžem chatbota natrénovať na vlastných dokumentoch?
Samotný model zvyčajne netrénujete. Pri malom množstve obsahu ho vložíte do systémového promptu; pri veľkej knižnici ho uložíte, pri každej otázke vyhľadáte relevantné pasáže a modelu pošlete len tie. Tento druhý prístup sa nazýva retrieval-augmented generation, skrátene RAG.
Dá sa vytvoriť AI chatbot bez programovania?
Áno. AI nástroj na tvorbu aplikácií dokáže z popisu v bežnom jazyku napísať chatovacie rozhranie, serverovú časť, ktorá volá model, aj databázu na ukladanie konverzácií. Účet u poskytovateľa a API kľúč však musíte vytvoriť sami.