Testen en fouten opsporen met de emulator

VAN TOEPASSING OP: SDK v4

Bot Framework Emulator is een bureaubladtoepassing waarmee botontwikkelaars bots lokaal of extern kunnen testen en er fouten in kunnen opsporen. Met behulp van de emulator kunt u chatten met uw bot en de berichten inspecteren die uw bot verzendt en ontvangt. De emulator geeft berichten weer zoals ze worden weergegeven in een webchatgebruikersinterface en registreert JSON-aanvragen en -antwoorden terwijl u berichten uitwisselt met uw bot. Voordat u uw bot in de cloud implementeert, voert u deze lokaal uit en test u deze met behulp van de emulator. U kunt uw bot testen met behulp van de emulator, zelfs als u deze nog niet hebt gemaakt met Azure AI Bot Service of deze hebt geconfigureerd voor uitvoering op kanalen.

Notitie

De Sdk's voor Bot Framework JavaScript, C# en Python blijven ondersteund, maar de Java SDK wordt buiten gebruik gesteld met definitieve langetermijnondersteuning die eindigt op november 2023.

Bestaande bots die zijn gebouwd met de Java SDK blijven functioneren.

Voor het bouwen van nieuwe bots kunt u Power Virtual Agents gebruiken en lezen over het kiezen van de juiste chatbotoplossing.

Zie De toekomst van botbouw voor meer informatie.

Vereisten

  • Bot Framework Emulator installeren

Een bot lokaal uitvoeren

Voordat u uw bot verbindt met de Bot Framework Emulator, moet u uw bot lokaal uitvoeren. U kunt Visual Studio of Visual Studio Code gebruiken om uw bot uit te voeren of de opdrachtregel te gebruiken. Ga als volgt te werk om een bot uit te voeren met behulp van de opdrachtregel:

  • Ga naar de opdrachtprompt en wijzig de map in de projectmap van uw bot.

  • Start de bot door de volgende opdracht uit te voeren:

    dotnet run
    
  • Kopieer het poortnummer op de regel voordat de toepassing is gestart. Druk op Ctrl+C om af te sluiten.

    C#-poortnummer

Op dit moment moet uw bot lokaal worden uitgevoerd.

Verbinding maken naar een bot die wordt uitgevoerd op localhost

Proxy-instellingen configureren

Wanneer u zich achter een bedrijfsproxy ontwikkelt, gebruikt de emulator de geconfigureerde omgevingsvariabelen HTTP_PROXY en HTTPS_PROXY, waarmee respectievelijk de proxy-URL-route voor HTTP- en HTTPs-aanvragen wordt opgegeven.

Als u verbinding maakt met een bot waarop wordt uitgevoerd localhost, probeert de emulator eerst via de proxy te routeren voordat u verbinding maakt met localhost. Normaal gesproken blokkeert de proxy de verbinding, tenzij u opgeeft dat deze moet worden overgeslagen voor localhost.

Als u de HTTP_PROXY en HTTPS_PROXY instellingen wilt omzeilen en de emulator verbinding wilt laten maken localhost, moet u op uw lokale computer de volgende omgevingsvariabele definiëren:

NO_PROXY=localhost

De emulator configureren voor verificatie

Als een bot verificatie vereist en een aanmeldingsdialoogvenster weergeeft, moet u de emulator configureren zoals hieronder wordt weergegeven.

Een aanmeldingsverificatiecode gebruiken

  1. Start de emulator.
  2. Selecteer in de emulator Instellingen (het tandwielpictogram) in het linkerdeelvenster.
  3. Schakel Bypass ngrok in voor lokale adressen.
  4. Schakel een verificatiecode voor aanmelden in voor OAuthCards.
  5. Selecteer Opslaan.

Wanneer u de aanmeldingsknop selecteert die door de bot wordt weergegeven, wordt er een validatiecode gegenereerd. U voert de code in het chatvenster voor botinvoer in om de verificatie te laten plaatsvinden. Daarna kunt u de toegestane bewerkingen uitvoeren.

U kunt ook de onderstaande stappen uitvoeren.

Verificatietokens gebruiken

  1. Start de emulator.
  2. Selecteer in de emulator Instellingen (het tandwielpictogram) in het linkerdeelvenster.
  3. Voer het lokale pad naar ngrok in. Zie ngrok voor meer informatie over ngrok.
  4. Schakel Uitvoeren ngrok in wanneer de emulator wordt gestart.
  5. Schakel verificatietokens van versie 1.0 in.
  6. Selecteer Opslaan.

Wanneer u de aanmeldingsknop selecteert die door de bot wordt weergegeven, wordt u gevraagd uw referenties in te voeren. Er wordt een verificatietoken gegenereerd. Daarna kunt u de toegestane bewerkingen uitvoeren.

Opstartvenster van emulator

Als u lokaal verbinding wilt maken met een bot die wordt uitgevoerd, selecteert u Bot openen. Voeg het poortnummer toe dat u eerder in de volgende URL hebt gekopieerd en plak de bijgewerkte URL in de bot-URL-balk:

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

Dialoogvenster Emulator openen-een-bot

Als uw bot wordt uitgevoerd met MSA-referenties (Microsoft Account), voert u deze referenties ook in.

Botreferenties gebruiken

Wanneer u de bot opent, stelt u de Microsoft App-id en het Microsoft App-wachtwoord in als uw bot wordt uitgevoerd met referenties. Als u uw bot hebt gemaakt met de Azure AI Bot Service, zijn de referenties beschikbaar in de App Service van de bot, onder de sectie Instellingen -> Configuratie. Als u de waarden niet weet, kunt u deze verwijderen uit het configuratiebestand van de lokaal uitgevoerde bot en vervolgens de bot uitvoeren in de emulator. Als de bot niet wordt uitgevoerd met deze instellingen, hoeft u de emulator ook niet met de instellingen uit te voeren.

Onthoud het volgende bij het maken van een AD-id-providertoepassing:

  • Wanneer het ondersteunde accounttype is ingesteld op één tenant en u een persoonlijk abonnement gebruikt in plaats van een Microsoft-account, krijgt de emulator de foutmelding: de Microsoft App-id of het Microsoft App-wachtwoord van de bot is onjuist.
  • In dit geval moeten de ondersteunde accounttypen worden ingesteld op Accounts in elke organisatiedirectory (Elke Microsoft Entra ID-directory - Multitenant) en persoonlijke Microsoft-accounts (bijvoorbeeld Xbox).

Zie Een Microsoft Entra ID-id-id-providertoepassing maken en een nieuwe toepassing registreren met behulp van Azure Portal voor meer informatie.

Gedetailleerde berichtactiviteiten weergeven met de Inspector

Verzend een bericht naar uw bot. De bot zou moeten reageren. U kunt de berichtenballon in het gespreksvenster selecteren, en de onbewerkte JSON-activiteit controleren met behulp van de functie CONTROLE aan de rechterkant van het venster. Als deze optie is geselecteerd, kleurt de berichtenballon geel en wordt het JSON-activiteitsobject aan de linkerkant van het chatvenster weergegeven. De JSON-informatie bevat belangrijke metagegevens, waaronder de kanaal-id, het activiteitstype, de conversatie-id, het tekstbericht, de eindpunt-URL, enzovoort. U kunt activiteiten inspecteren die van de gebruiker zijn verzonden en activiteiten waarmee de bot reageert.

JSON voor berichtactiviteit emulator

Tip

U kunt fouten opsporen in statuswijzigingen in een bot die is verbonden met een kanaal door Inspectie-middleware toe te voegen aan de bot.

Services inspecteren

Notitie

Azure AI QnA Maker wordt op 31 maart 2025 buiten gebruik gesteld. Vanaf 1 oktober 2022 kunt u geen nieuwe resources of kennisbanken voor QnA Maker maken. Een nieuwere versie van de vraag- en antwoordmogelijkheid is nu beschikbaar als onderdeel van Azure AI Language.

Aangepaste vraagantwoorden, een functie van Azure AI Language, is de bijgewerkte versie van de QnA Maker-service. Zie Natuurlijke taalbegrip voor meer informatie over vraag- en antwoordondersteuning in de Bot Framework SDK.

Notitie

Language Understanding (LUIS) wordt op 1 oktober 2025 buiten gebruik gesteld. Vanaf 1 april 2023 kunt u geen nieuwe LUIS-resources maken. Er is nu een nieuwere versie van taalkennis beschikbaar als onderdeel van Azure AI Language.

Conversational Language Understanding (CLU), een functie van Azure AI Language, is de bijgewerkte versie van LUIS. Zie Natuurlijke taalkennis voor meer informatie over ondersteuning voor taalkennis in de Bot Framework SDK.

Met de emulator kunt u ook de JSON-antwoorden van LUIS en QnA Maker inspecteren. Als een bot met een verbonden taalservice gebruikt, kunt u in het venster LOG rechtsonder trace selecteren. Dit nieuwe hulpprogramma biedt ook functies om uw taalservices rechtstreeks vanuit de emulator bij te werken.

LUIS Inspector

Met een verbonden LUIS-service geeft de traceringskoppeling Luis Trace aan. Wanneer deze optie is geselecteerd, wordt het onbewerkte antwoord van uw LUIS-service weergegeven, inclusief intenties en entiteiten, samen met de opgegeven scores. U kunt intenties opnieuw toewijzen voor uw gebruikersuitingen.

QnA Inspector

Met een verbonden QnA Maker-service wordt in het logboek QnA Trace weergegeven. Wanneer deze optie is geselecteerd, kunt u een voorbeeld bekijken van de vraag en het antwoordpaar dat aan die activiteit is gekoppeld, samen met een betrouwbaarheidsscore. Vervolgens kunt u een alternatieve formulering voor een vraag voor een antwoord toevoegen.

Aanmelden bij Azure

U kunt de emulator gebruiken om u aan te melden bij uw Azure-account. Dit is handig voor u om services toe te voegen en te beheren waarvoor uw bot afhankelijk is. Aanmelden:

  1. Selecteer Bestand en meld u aan met Azure.

    Emulator aanmelden met Azure

  2. Selecteer Aanmelden met uw Azure-account in het welkomstscherm. U kunt eventueel de emulator laten aanmelden bij het opnieuw opstarten van de emulatortoepassing.

    Geslaagde aanmelding van Azure-emulator

Gegevensverzameling uitschakelen

Als u besluit dat u de emulator niet langer wilt toestaan om gebruiksgegevens te verzamelen, kunt u het verzamelen van gegevens eenvoudig uitschakelen door de volgende stappen uit te voeren:

  1. Selecteer in de emulator Instellingen (het tandwielpictogram) in het linkerdeelvenster.

    Knop Emulatorinstellingen

  2. Schakel onder Gegevensverzameling deselecteer Help bij het verbeteren van de emulator door ons toe te staan gebruiksgegevens te verzamelen.

  3. Selecteer Opslaan.

Als u van gedachten verandert, kunt u gegevensverzameling later opnieuw inschakelen.

Aanvullende bronnen

De Bot Framework Emulator is open source. U kunt bijdragen aan de ontwikkeling en bugs en suggesties indienen.

Zie algemene problemen en de andere artikelen over probleemoplossing in die sectie voor het oplossen van problemen .

Volgende stap

Gebruik inspectie-middleware om fouten op te sporen in een bot die is verbonden met een kanaal.