Breadcrumbs

3 Pochopení a Odpovídání

Pochopení uživatele

V předchozím kroku jsme použili tlačítka jako jednoduchý a efektivní způsob pro vedení uživatelů. Tlačítka jsou skvělá, zvláště u chatbotů, kde uživatelé rádi klikají na nabízené možnosti.

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

Rozpoznání záměru a entit

Pro pochopení textových zpráv od uživatelů využíváme Záměry a Entity.

  • Záměry pomáhají botovi pochopit co uživatel chce.

  • Entity pomáhají extrahovat specifické detaily z toho, co bylo řečeno.

Příklad

Uživatel řekne:

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

  • Záměr: Zjistit počasí

  • Entita: Město = Praha

Tímto získáme jak účel, tak klíčový detail potřebný pro odpověď.

Záměry a entity nejsou nutné, pokud bot používá generativní odpovědi na základě poskytnutých dokumentů, místo statických odpovědí. To bude vysvětleno později na této stránce.


🗨️ 1. Vylepšení dialogu detekcí záměru

Aktualizujeme stávající dialog, který jsme vytvořili v předchozích částech návodu. Snažte se replikovat dialog zobrazený na obrázku:

image-20250724-103612.png
  1. Přidejte modul Záměru před zprávami obsahujícími vaše odpovědi.

  2. V nastavení modulu Záměru definujte dva záměry s následujícími názvy a instrukcemi:

    • Kočičí faktaUživatel chce znát zábavný fakt o kočkách

    • Číselná zajímavostUživatel se ptá na zajímavosti o čísle

  3. Přiřaďte každý výstup k příslušné odpovědi.

  4. Použijte výstup Jiné pro neočekávané vstupy (když uživatel napíše jiný záměr). Můžete uživatele jemně navést zpět k tlačítkům.

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é.

Pozastavit pro vstup od uživatele

Když pracujete s volným textovým vstupem (namísto tlačítek nebo formulářů), bot automaticky nerozpozná, kdy by měl zastavit a poslouchat. Musíte ručně nastavit tuto pauzu.

To je zvláště důležité u hlasových botů, kde uživatelé odpovídají mluvením, protože neexistují tlačítka ani interakce UI, které by spouštěly další krok.

Jak nastavit pauzu:

  1. Klikněte na šipku, která spojuje předchozí modul s modulem záměru, a nad ní se objeví malá nástrojová lišta.

  2. Klikněte na ikonu Pause (⏸️) a šipka se změní na červenou, což potvrdí, že bot bude nyní čekat na vstup v tomto bodě.

Pokud tento krok přeskočíte, bot může projít dialog bez možnosti uživatele odpovědět a snadno vytvořit nekonečnou smyčku ve vašem dialogovém toku.

Jinými slovy, bot projde všechno spojené zelenými šipkami bez zastavení a zastaví se pouze na červené šipce, modulu zprávy s tlačítky, formuláři nebo jiném modulu vyžadujícím interakci.

(Pokud vytvoříte nekonečnou smyčku, dialogový tok bude přesměrován na výjimkový dialog po několika smyčkách.)


Otestujte detekci záměru

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.

Tady přichází na řadu AI Knowledge: namísto přidávání statických odpovědí nahrajeme data a necháme, aby AI generovala odpovědi automaticky na jejich základě.


📄 Nahrajte své znalosti

Pro tento návod použijeme základní textový soubor, ale můžete také nahrát soubory PDF, propojit webové stránky nebo propojit Google Sheets. Podívejte se na článek 🧠 AI Znalosti, pokud chcete prozkoumat jiné typy zdrojů.

  1. V nabídce vlevo přejděte na AI Knowledge.

  2. Zobrazí se stávající prázdný zdroj dat Files. 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.
    cat_fact.txt(← tento šablonový soubor můžete stáhnout pro tento úkol)

  4. Po nahrání se váš soubor zobrazí v seznamu, ale ještě není synchronizován.

  5. Klikněte na Aktualizace obsahu (ikonu 🔄 vlevo nahoře), aby se nový obsah synchronizoval s AI vyhledávačem.

AI Knowledge je automaticky aktualizována (výchozí nastavení je každých 24 hodin), ale ruční synchronizace zajistí, že budou vaše změny okamžitě k dispozici.

3-1.gif


🔁 Aktualizujte dialog pro využívání AI Knowledge

Nyní, když jsou znalosti k dispozici a synchronizovány, je zapojme do logiky bota:

  1. Vraťte se do svého testovacího dialogu v sekci Dialogy.

  2. Najděte modul AI Knowledge v panelu Moduly.

  3. Přetáhněte jej a propojte s tokem, jak je ukázáno na obrázku.

  4. Volitelně upravte nastavení Výzva v modulu AI Knowledge, pokud chcete, aby AI odpovídala specifickým způsobem (např. tónem, formátem atd.).

image-20250724-103528.png


✅ Vyzkoušejte to

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

„Jaká je průměrná hmotnost kočky?“

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

Budou zodpovězeny pouze otázky týkající se témat zahrnutých ve vaší AI znalostní základně. "Řekni mi jednu náhodnou skutečnost." nebude fungovat s moduly znalostí AI.

image-20250724-104223.png

Přidáním odpovědí generovaných AI se váš bot stane mnohem lépe škálovatelným a snazším na údržbu bez nutnosti ručně ošetřovat každou možnou odpověď. To funguje velmi dobře s FAQ, Podmínkami použití apod.

💡

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

  • Statické odpovědi → Kontrola stavu objednávky, Vrácení zboží apod.

  • Generativní odpovědi → FAQ, Informace o společnosti/produktu apod.

Dalším krokem bude připojení bota k externím službám pomocí API. Například zavoláme skutečné API faktů o číslech pro dynamické odpovědi na otázky na základě uživatelského vstupu.

Reálná data + AI = výkonné, chytré boty.
Podívejme se, jak to nastavit.


⭐ Bonusový úkol - Chytřejší navázání s volným zadáním

Místo ukončení dialogu nudnou větou „Ještě něco?“ položíme personalizovanou otázku na základě toho, co se právě odehrálo v konverzaci.

Použijeme modul Volné zadání. Umožňuje používat model LLM s vlastním zadáním pro generování odpovědí AI na základě historie konverzace a vlastní instrukce.

  1. Nahraďte statickou zprávu „Ještě něco?“ modulem Volné zadání.

  2. Použijte toto zadání:

    „Na základě předchozí konverzace se zeptejte uživatele, zda potřebuje ještě něco nebo má další otázky. Buďte vtipní a na žádné otázky neodpovídejte.“

  3. Nezapomeňte: Modul Volné zadání neodesílá odpověď přímo. Pouze ukládá výsledek do proměnné kontextu $llm_value (o kontextech se dozvíme více později).

  4. Přidejte modul Zpráva přímo po modulu Volné zadání a vložte $llm_value jako obsah zprávy.

  5. Bot přečte odpověď uloženou v proměnné kontextu $llm_value a zobrazí ji jako zprávu.

image-20250724-114835.png

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

💡

Tento scénář je zábavný, ale může být nákladný na tokeny jen kvůli generování následných odpovědí. Ale modul Volné zadání můžete použít na mnoho důležitých míst, jako jsou souhrny, FAQ z menších sad dat (například tabulky zahrnuté do vašich systémových zadání) apod.

image-20250724-104701.png