Testování a ladění pomocí emulátoru

PLATÍ PRO: SDK v4

Bot Framework Emulator je desktopová aplikace, která vývojářům robotů umožňuje testovat a ladit roboty místně nebo vzdáleně. Pomocí emulátoru můžete chatovat s robotem a kontrolovat zprávy, které robot odesílá a přijímá. Emulátor zobrazí zprávy tak, jak by se zobrazovaly v uživatelském rozhraní webového chatu a protokolují požadavky a odpovědi JSON při výměně zpráv s robotem. Než robota nasadíte do cloudu, spusťte ho místně a otestujte ho pomocí emulátoru. Robota můžete otestovat pomocí emulátoru, i když jste ho ještě nevytvořili pomocí služby Azure AI Bot Service nebo ho nakonfigurovali tak, aby běžel na libovolném kanálu.

Poznámka:

Sady SDK služby Bot Framework JavaScript, C# a Python budou nadále podporovány, ale sada Java SDK se vyřazuje s konečnou dlouhodobou podporou končící v listopadu 2023. V tomto úložišti budou provedeny pouze kritické opravy zabezpečení a chyb.

Stávající roboti sestavení pomocí sady Java SDK budou i nadále fungovat.

Pro nové vytváření robotů zvažte použití Power Virtual Agents a přečtěte si o výběru správného řešení chatovacího robota.

Další informace najdete v tématu Budoucnost vytváření robotů.

Předpoklady

Místní spuštění robota

Před připojením robota k bot Framework Emulatoru musíte robota spustit místně. Ke spuštění robota můžete použít Visual Studio nebo Visual Studio Code nebo použít příkazový řádek. Pokud chcete spustit robota pomocí příkazového řádku, postupujte takto:

  • Přejděte na příkazový řádek a změňte adresář na adresář projektu robota.

  • Spusťte robota spuštěním následujícího příkazu:

    dotnet run
    
  • Před spuštěním aplikace zkopírujte číslo portu na řádku . Stisknutím kombinace kláves CTRL+C se vypne.

    C# port number

V tuto chvíli by váš robot měl běžet místně.

Připojení robotovi běžícímu na místním hostiteli

Konfigurace nastavení proxy serveru

Při vývoji za podnikovým proxy serverem bude emulátor používat nakonfigurované proměnné HTTP_PROXY prostředí a HTTPS_PROXY, které určují trasu adresy URL proxy serveru pro požadavky HTTP a HTTPs v uvedeném pořadí.

Pokud se připojujete k robotovi, na localhostkterém běží, emulátor se nejprve pokusí směrovat přes proxy server před připojením k localhost. Proxy obvykle zablokuje připojení, pokud neurčíte, že by se mělo obejít pro localhost.

Chcete-li obejít HTTP_PROXY nastavení a HTTPS_PROXY umožnit emulátoru připojit se localhost, na místním počítači musíte definovat následující proměnnou prostředí:

NO_PROXY=localhost

Konfigurace emulátoru pro ověřování

Pokud robot vyžaduje ověření, zobrazí dialogové okno pro přihlášení, musíte nakonfigurovat emulátor, jak je znázorněno níže.

Použití ověřovacího kódu pro přihlášení

  1. Spusťte emulátor.
  2. V emulátoru vyberte Nastavení (ikona ozubeného kola) v levém podokně.
  3. Povolte funkci Bypass ngrok pro místní adresy.
  4. Povolte pro OAuthCards ověřovací kód pro přihlášení.
  5. Zvolte Uložit.

Když vyberete přihlašovací tlačítko zobrazené robotem, vygeneruje se ověřovací kód. Kód zadáte do pole chatu pro zadání robota, aby se ověřování uskutečnilo. Potom můžete provádět povolené operace.

Případně můžete provést níže popsané kroky.

Použití ověřovacích tokenů

  1. Spusťte emulátor.
  2. V emulátoru vyberte Nastavení (ikona ozubeného kola) v levém podokně.
  3. Zadejte místní cestu k ngroku. Další informace o nástroji ngrok naleznete v tématu ngrok.
  4. Po spuštění emulátoru povolte spustit ngrok.
  5. Povolte použití ověřovacích tokenů verze 1.0.
  6. Zvolte Uložit.

Když vyberete tlačítko pro přihlášení zobrazené robotem, zobrazí se výzva k zadání přihlašovacích údajů. Vygeneruje se ověřovací token. Potom můžete provádět povolené operace.

Emulator startup window

Pokud se chcete připojit k robotovi spuštěném místně, vyberte Otevřít robota. Přidejte číslo portu, které jste si zkopírovali dříve, do následující adresy URL a vložte aktualizovanou adresu URL na panel adres URL robota:

http://localhost:<port number>/api/messages

Emulator open-a-bot dialog

Pokud váš robot běží s přihlašovacími údaji účtu Microsoft (MSA), zadejte také tyto přihlašovací údaje.

Použití přihlašovacích údajů robota

Když robota otevřete, nastavte ID aplikace Microsoft a heslo aplikace Microsoft, pokud robot běží s přihlašovacími údaji. Pokud jste vytvořili robota pomocí služby Azure AI Bot Service, přihlašovací údaje jsou k dispozici ve službě App Service robota v části Nastavení –> Konfigurace. Pokud hodnoty neznáte, můžete je z místně spuštěného konfiguračního souboru robota odebrat a pak spustit robota v emulátoru. Pokud robot s těmito nastaveními neběží, není nutné spouštět emulátor s nastavením.

Při vytváření aplikace zprostředkovatele identity AD mějte na paměti následující:

  • Pokud je podporovaný typ účtu nastavený na jednoho tenanta, pokud místo účtu Microsoft používáte osobní předplatné, emulátor vydá chybu: ID aplikace Microsoft robota nebo heslo aplikace Microsoftu není správné.
  • V tomto případě musí být podporované typy účtů nastavené na Účty v libovolném adresáři organizace (jakýkoli adresář Microsoft Entra ID – Víceklient) a osobní účty Microsoft (např. Xbox).

Další informace najdete v tématu Vytvoření aplikace zprostředkovatele identity Microsoft Entra ID a registrace nové aplikace pomocí webu Azure Portal.

Zobrazení podrobných aktivit zpráv pomocí inspektoru

Odešlete robotovi zprávu a ten by vám měl odpovědět. V okně konverzace můžete vybrat bublinu zprávy a prozkoumat nezpracovanou aktivitu JSON s využitím funkce INSPECTOR na pravé straně okna. Když vyberete bublinu zprávy, její barva se změní na žlutou a nalevo od okna chatu se zobrazí objekt JSON aktivity. Informace JSON zahrnují klíčová metadata, včetně ID kanálu, typu aktivity, ID konverzace, textové zprávy, adresy URL koncového bodu atd. Můžete zkontrolovat aktivity odeslané od uživatele a aktivity, se kterými robot reaguje.

Emulator message activity JSON

Tip

Změny stavu v robotovi připojeném k kanálu můžete ladit přidáním middlewaru kontroly do robota.

Kontrola služeb

Poznámka:

Azure AI QnA Maker bude vyřazený 31. března 2025. Od 1. října 2022 nebudete moci vytvářet nové zdroje ani znalostní báze QnA Maker. Novější verze funkce pro otázky a odpovědi je teď dostupná jako součást jazyka Azure AI.

Vlastní odpověď na otázky, funkce jazyka Azure AI, je aktualizovaná verze služby QnA Maker. Další informace o podpoře otázek a odpovědí v sadě SDK služby Bot Framework najdete v tématu Principy přirozeného jazyka.

Poznámka:

Služba Language Understanding (LUIS) bude vyřazena 1. října 2025. Od 1. dubna 2023 nebudete moct vytvářet nové prostředky LUIS. Novější verze language understanding je teď dostupná jako součást jazyka Azure AI.

Konverzační jazyk understanding (CLU), funkce jazyka Azure AI, je aktualizovaná verze služby LUIS. Další informace o podpoře porozumění jazyku v sadě SDK služby Bot Framework najdete v tématu Principy přirozeného jazyka.

Pomocí emulátoru můžete také zkontrolovat odpovědi JSON ze služby LUIS a služby QnA Maker. Pokud používáte robota s připojenou službou jazyka, můžete v okně LOG v pravé dolní části vybrat trasování. Tento nový nástroj také poskytuje funkce pro aktualizaci jazykových služeb přímo z emulátoru.

LUIS Inspector

S připojenou službou LUIS určuje odkaz trasování luis. Po výběru se zobrazí nezpracovaná odpověď ze služby LUIS, která obsahuje záměry a entity spolu se zadanými skóre. Záměry pro promluvy uživatele můžete znovu přiřadit.

QnA Inspector

S připojenou službou QnA Maker se v protokolu zobrazí trasování QnA. Pokud je tato možnost vybraná, můžete zobrazit náhled páru otázek a odpovědí přidružených k dané aktivitě spolu se skóre spolehlivosti. Tady můžete pro odpověď přidat alternativní znění otázky.

Přihlášení k Azure

Emulátor můžete použít k přihlášení ke svému účtu Azure. To je užitečné pro přidání a správu služeb, na které robot závisí. Přihlášení:

  1. Vyberte Soubor a pak se přihlaste pomocí Azure.

    Emulator sign in with Azure

  2. Na úvodní obrazovce vyberte Přihlásit se pomocí svého účtu Azure. Volitelně můžete mít emulátor, abyste se přihlásili napříč restartováními aplikace emulátoru.

    Emulator Azure sign-in success

Zakázání shromažďování dat

Pokud se rozhodnete, že už nechcete emulátoru povolit shromažďování dat o využití, můžete shromažďování dat snadno zakázat pomocí následujícího postupu:

  1. V emulátoru vyberte Nastavení (ikona ozubeného kola) v levém podokně.

    Emulator settings button

  2. V části Shromažďování dat zrušte výběr možnosti Pomozte vylepšit emulátor tím, že nám umožní shromažďovat data o využití.

  3. Zvolte Uložit.

Pokud si to rozmyslíte, můžete shromažďování dat později znovu použít.

Další materiály

Bot Framework Emulator je open source. Můžete přispívat k vývoji a odesílat chyby a návrhy.

Informace o řešení potíží najdete v tématu Řešení obecných problémů a dalších článků o řešení potíží v této části.

Další krok

K ladění robota připojeného k kanálu použijte middleware kontroly.