Přeskočit obsah

Porozumění a odpovídání

Porozumění uživateli

V předchozím kroku jsme použili tlačítka jako jednoduchý a efektivní způsob vedení uživatelů. Tlačítka jsou skvělá, zejména v chatbotech, kde uživatelé rádi proklikávají nabízené možnosti.

Ale nyní je čas nechat AI porozumět tomu, co uživatel skutečně říká, pomocí přirozeného vstupu jako otázky nebo příkazy.

Detekce záměrů a entit

Pro porozumění zprávám od uživatelů ve volném formátu používáme Záměry a Entity.

  • Záměry pomáhají botovi pochopit, co uživatel chce.
  • Entity pomáhají extrahovat konkrétní detaily z toho, co řekl.

Příklad

Uživatel říká:

"Jaké je počasí v Praze?"

  • Záměr: Zjistit počasí
  • Entita: Město = Praha

To nám dává jak účel, tak klíčový detail potřebný k odpovědi.

**ℹ️ Info**

Záměry a Entity nejsou nutné, když bot používá generativní odpovědi založené na dokumentech, které jsme poskytli, místo statických odpovědí. To bude probráno později na této stránce.


🗨️ 1. Vylepšete svůj dialog o detekci záměrů

Aktualizujeme existující dialog, který jsme vytvořili v předchozích částech tutoriálu. Pokuste se replikovat dialog zobrazený na obrázku:

image-20250724-103612.png

  1. Přidejte modul Záměr před zprávy obsahující vaše odpovědi.
  2. V nastavení modulu Záměr definujte dva záměry s následujícími názvy a instrukcemi:

  3. Fakta o kočkáchUživatel chce znát zajímavý fakt o kočkách

  4. Zajímavosti o číslechUživatel se ptá na něco zajímavého o čísle
  5. Propojte každý výstup s odpovídající zprávou s odpovědí.
  6. Použijte výstup Ostatní pro zpracování neočekávaného vstupu (když uživatel napíše jiný záměr). Můžete uživatele jemně navést zpět k vašim tlačítkům.

**📝 Poznámka**

Možná jste si všimli, že dvě šipky ve vašem toku jsou červené místo zelených.

To znamená, že bot je nastaven na čekání na vstup od uživatele před pokračováním.

Poznámka: Pokud jsou v modulu Zpráva použita tlačítka, bot vždy čeká na vstup od uživatele, i když jsou šipky zelené.

Pauza pro vstup od uživatele

Když pracujete s volným textovým vstupem (místo tlačítek nebo formulářů), bot nemůže automaticky zjistit, kdy má pozastavit a naslouchat. Musíte ručně nastavit tuto pauzu.

To je obzvláště důležité u voicebotů, kde uživatelé odpovídají mluvením, protože nejsou k dispozici žádná tlačítka ani UI interakce pro spuštění dalšího kroku.

Jak nastavit pauzu:

  1. Klikněte na šipku spojující předchozí modul s modulem Záměr a nad ní se objeví malý panel nástrojů.
  2. Klikněte na ikonu Pauza (⏸️) a šipka se změní na červenou, což potvrzuje, že bot nyní bude v tomto bodě čekat na vstup.

**ℹ️ Info**

Pokud tento krok přeskočíte, bot může projít dialogem příliš rychle, aniž by dal uživateli šanci odpovědět, nebo můžete snadno vytvořit nekonečnou smyčku ve vašem toku dialogu.

Jinými slovy, bot projde vším spojeným zelenými šipkami bez pauzy a zastaví se pouze u červené šipky, modulu Zpráva s tlačítky, modulu Formulář nebo jiného modulu vyžadujícího interakci.

(Pokud se vám podaří vytvořit nekonečnou smyčku, tok dialogu bude po několika smyčkách přesměrován do dialogu výjimek.)

Otestujte detekci záměrů

Váš dialog by se nyní měl chovat takto:

image-20250724-014200.png


🧠 2. Přidejte generativní AI odpovědi

Rozšiřme znalosti bota, aby mohl odpovídat na více otázek souvisejících s kočkami bez ručního psaní každé odpovědi.

Zde přichází na řadu AI Knowledge: místo přidávání statických odpovědí nahrajeme nějaká data a necháme AI automaticky generovat odpovědi z nich.

📄 Nahrajte své znalosti

**ℹ️ Info**

Pro tento tutoriál použijeme základní textový soubor, ale můžete také nahrávat PDF, připojovat webové stránky nebo propojit Google Sheets. Viz článek 🧠 AI Knowledge, pokud chcete prozkoumat další typy zdrojů.

  1. Přejděte na AI Knowledge z levého menu.
  2. Uvidíte existující prázdný zdroj dat Soubory. Klikněte na něj a v pravém horním rohu klikněte na ➕ Přidat soubory.
  3. Nahrajte svůj soubor a klikněte na Uložit. (← můžete si stáhnout tuto šablonu pro toto cvičení)
  4. Po nahrání se váš soubor objeví v seznamu, ale ještě není synchronizován.
  5. Klikněte na Aktualizace obsahu (ikona 🔄 vlevo nahoře) pro synchronizaci vašeho nového obsahu s AI vyhledávačem.

**ℹ️ Info**

AI Knowledge se automaticky obnovuje (výchozí nastavení je každých 24 hodin), ale ruční synchronizace zajistí, že vaše změny jsou okamžitě dostupné.

3-1.gif

🔁 Aktualizujte svůj dialog pro použití AI Knowledge

Nyní, když jsou znalosti dostupné a synchronizované, pojďme je propojit do logiky bota:

  1. Vraťte se ke svému testovacímu dialogu v sekci Dialogy.
  2. Najděte modul AI Knowledge v panelu Moduly.
  3. Přetáhněte ho a připojte k toku, jak je znázorněno na obrázku.
  4. Volitelně upravte nastavení Prompt v modulu AI Knowledge, pokud chcete, aby AI odpovídala specifickým způsobem (např. tón, formát atd.).

image-20250724-103528.png

✅ Otestujte to

Přejděte na Testovací panel a zeptejte se bota na něco nového, například:

"Jaká je průměrná váha kočky?"

Pokud váš soubor AI Knowledge obsahuje relevantní informace, AI je použije k odpovědi — i když záměr nebyl explicitně definován.

**ℹ️ Info**

Budou zodpovězeny pouze otázky o tématech, která jsou obsažena ve vaší znalostní bázi AI Knowledge. "Řekni mi jeden náhodný fakt." nebude fungovat s moduly AI Knowledge.

image-20250724-104223.png

Přidáním odpovědí generovaných AI se váš bot stává mnohem škálovatelnějším a snadnějším na údržbu – není potřeba ručně kódovat každou možnou odpověď. To funguje velmi dobře s FAQ, obchodními podmínkami atd.

💡

Reálné projekty obvykle kombinují oba přístupy:

  • Statické odpovědi → Kontrola stavu objednávky, Vrácení zboží atd.
  • Generativní odpovědi → FAQ, Informace o firmě/produktu atd.

Dále posuneme věci dál připojením bota k externím službám pomocí API. Například zavoláme skutečné API pro fakta o číslech, abychom dynamicky odpovídali na triviální otázky na základě vstupu uživatele.

Data v reálném čase + AI = výkonní, chytří boti. Pojďme se podívat, jak to nastavit.


⭐ Bonusový úkol – Chytřejší navázání s Free Prompt

Místo ukončení dialogu nudným "Ještě něco?" se zeptáme na personalizovanou otázku založenou na tom, co se právě stalo v konverzaci.

**ℹ️ Info**

Použijeme modul Free Prompt. Umožňuje vám použít LLM model s vaším promptem pro generování AI odpovědí na základě historie konverzace a vašich vlastních instrukcí.

  1. Nahraďte statický modul Zpráva "Ještě něco?" modulem Free Prompt.
  2. Použijte tento prompt:

"Na základě předchozí konverzace se uživatele zeptej, zda potřebuje něco dalšího nebo má další otázky. Buď vtipný a neodpovídej na žádné otázky." 3. Pamatujte: Free Prompt neodesílá odpověď přímo. Pouze ukládá výsledek do kontextové proměnné $llm_value (více o kontextech se naučíme později). 4. Přidejte modul Zpráva hned za modul Free Prompt a vložte $llm_value jako obsah zprávy. 5. Bot přečte odpověď uloženou v kontextové proměnné $llm_value a zobrazí ji jako zprávu.

image-20250724-114835.png

Toto není nutné, ale ukazuje to, jak výkonný a zábavný může být váš chatbot, když zkombinujete kontext + LLM.

💡

I když je tento případ použití zábavný, mohlo by být trochu drahé utrácet tokeny jen za generování navázání. Nicméně můžete Free Prompt použít na mnoha důležitých místech, jako jsou shrnutí, FAQ z menších datových sad (např. tabulky zahrnuté ve vašich systémových promptech) atd.

image-20250724-104701.png