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.
Stávající roboti sestavení pomocí sady Java SDK budou i nadále fungovat.
Při vytváření nových robotů zvažte použití aplikace Microsoft Copilot Studio a přečtěte si o výběru správného řešení copilotu.
Další informace najdete v tématu Budoucnost vytváření robotů.
Požadavky
- Instalace bot Framework Emulatoru
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.
V tuto chvíli by váš robot měl běžet místně.
Připojení k 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 localhost
které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í
- Spusťte emulátor.
- V emulátoru vyberte Nastavení (ikona ozubeného kola) v levém podokně.
- Povolte pro OAuthCards ověřovací kód pro přihlášení.
- 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ů
- Spusťte emulátor.
- V emulátoru vyberte Nastavení (ikona ozubeného kola) v levém podokně.
- Povolte použití ověřovacích tokenů verze 1.0.
- 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.
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
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.
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.
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.
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í:
Vyberte Soubor a pak se přihlaste pomocí Azure.
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.
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:
V emulátoru vyberte Nastavení (ikona ozubeného kola) v levém podokně.
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í.
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.