Hoe Azure Bot Service werkt

Voltooid

In deze les verkent u het gebruik van Bot Framework Composer om bots te ontwerpen in een interactieve visuele ontwerper. U leert hoe u uw bot kunt uitbreiden met AI en taalmogelijkheden in Bot Framework Composer. U krijgt ook basiskennis van het maken van een bot, het uitbreiden van botmogelijkheden en het publiceren van een bot in de Azure Bot Service.

Wat is de architectuur van een botpakket?

Azure Bot Service en Bot Framework ondersteunen het volledige proces voor het maken van bots. Het ondersteunde proces omvat ontwerp-, bouw-, test- en publicatietaken.

Botontwikkelaars gebruiken Bot Framework Composer om een botpakket te maken. Dit pakket bevat de botlogica en details over botintegraties en verbindingen, waaronder invoerkanalen en verificatie. Het botpakket bevat ook aangepaste botcode. De Azure Bot Service fungeert als host voor het botpakket. U kunt een Azure-bot beschouwen als een Azure-web-app met een paar extra functies die het primaire eindpunt bieden voor botinteractie. Via de Bot Service kunnen gebruikers communiceren met de bot. Ondertussen kan het binnenkomende en uitgaande REST-interacties voor externe kanalen en andere integraties beheren.

Notitie

Het botpakket kan ook worden onderhouden met behulp van de Bot Framework SDK via Visual Studio of Visual Studio Code.

Diagram van de Azure Bot Service-architectuur.

Overweeg het type bot dat u wilt maken

Voordat u uw bot bouwt, moet u beslissen welk type bot u maakt. Houd rekening met de volgende vragen wanneer u besluit:

  • Waarvoor wordt uw bot gebruikt? Bepaal welk type bot u wilt bouwen. Planning helpt bij het definiëren van de functionaliteiten die u wilt implementeren.

  • Welke problemen wil uw bot oplossen? Wees duidelijk over dit antwoord. Het oplossen van problemen voor klanten is een belangrijke overweging bij het bouwen van bots. U moet ook rekening houden met zaken als het oplossen van het probleem van de gebruiker beter, eenvoudiger of sneller dan de alternatieve ervaringen.

  • Wie gebruikt uw bot? Als u een bot ontwerpt, is het veilig om ervan uit te gaan dat u verwacht dat gebruikers deze gebruiken. Verschillende klanten verwachten verschillende gebruikerservaringen. Door uw publiek te kennen, kunt u bepalen hoe complex uw botontwerp moet zijn. Bedenk welke talen u voor de bot wilt implementeren.

    Aanbeveling

    Het garanderen van een geweldige gebruikerservaring moet uw nummer één prioriteit zijn bij het ontwerpen van een bot.

  • Waar wordt uw bot gebruikt? U moet bepalen op welke platforms uw bot wordt uitgevoerd. Een bot die is ontworpen om te worden uitgevoerd op een mobiel apparaat, vereist bijvoorbeeld functies zoals het verzenden van sms-berichten (Short Message Service).

    Belangrijk

    De publicatie-ervaring varieert van platform tot platform.

Kernfunctionaliteit voor bot ontwikkelen in Bot Framework Composer

U kunt Composer gebruiken om een bot te ontwerpen, bouwen, uitbreiden en testen. Composer is een visueel bewerkingscanvas voor het bouwen van bots. Dit is doorgaans het startpunt voor het maken van de Azure Bot Service.

U kunt de visuele ontwerper van Composer gebruiken om intuïtief de kernfunctionaliteit voor uw bot te ontwikkelen. U kunt het volgende doen:

  • Voeg mogelijkheden voor natuurlijke taalkennis toe aan uw bot met QnA Maker. U kunt mogelijkheden zoals Language Understanding Intelligence Service (LUIS), QnA of Veelgestelde vragen gebruiken.
  • Maak antwoorden op tekst- en spraakvariaties voor uw bot met behulp van sjablonen voor het genereren van talen.
  • Bouw bots in meerdere talen.
  • Test uw bot rechtstreeks in Composer met behulp van ingesloten Web Chat.
  • Bots publiceren naar Azure App Service en Azure Functions.
  • Integreer externe services, zoals LUIS-apps en QnA Maker-knowledge bases.

Dialogen en gespreksverloop maken

Dialoogvensters bepalen de gesprekken die een bot met de gebruikers heeft. Dialoogvensters bevatten antwoordsjablonen voor het genereren van taal waarmee botreacties en instructies worden gedefinieerd voor hoe een bot taken uitvoert. Bijvoorbeeld het maken van dinerreserveringen in een restaurant of het maken van een Outlook-agenda-item.

Veel dialoogvensters zijn lineair, met een eenvoudige vraag- en antwoordvolgorde. Maar sommige dialoogvensters bevatten ook geavanceerde gesprekslogica. Deze logica kan bestaan uit vertakkingen, lussen en dynamische en adaptieve dialogen op basis van context. Deze typen dialogen gebruiken doorgaans externe gegevens, houden gespreksgegevens bij en onderbreken indien nodig.

Externe stromen met vaardigheden en andere bots opnemen

U kunt complexere gespreksstromen maken door Composer-vaardigheden, NuGet-pakketten en zelfs andere Azure Bot Service-bots in uw bot te importeren. U kunt een geneste serie bots maken om een meer modulaire en herbruikbare botfunctionaliteitenset te creëren. U kunt deze kleinere, modulaire onderdelen in diverse combinaties samenstellen om een reeks functionaliteiten voor verschillende bovenliggende bots aan te bieden. U hebt bijvoorbeeld een bot die de gespreksstroom verwerkt rond het beheren van agenda-items, met invoer en antwoorden, zoals 'wanneer is mijn volgende vergadering?' of 'Hebt u een vergaderruimte nodig?' Door de bot als vaardigheid te verpakken, kunt u eenvoudig de vaardigheid (en de bijbehorende mogelijkheid voor het verwerken van agendagesprekken) integreren in elke andere bot die u maakt.

Kaarten, afbeeldingen en knoppen gebruiken om het gesprek te verbeteren

U kunt verschillende visuele en interactieve methoden gebruiken om het gesprek voor de gebruikers van uw bot te verbeteren. Gebruik kaarten om rijke tekst, afbeeldingen en knoppen te maken voor een interactievere ervaring dan alleen platte tekst. Composer biedt verschillende kaarttypen, waaronder miniatuur, inloggen, audio en video.

Taalkennis en intelligentie uitbreiden met LUIS en QnA Maker

LUIS biedt verwerking van natuurlijke taal met een volledig intentie- en entiteitsbeheersysteem. U kunt eerder gemaakte LUIS-apps integreren of nieuwe apps maken in Composer om robuuste mogelijkheden voor natuurlijke taalbegrip toe te voegen aan uw bot.

QnA Maker is een cloudservice. Gebruik het om vraag- en antwoordparen te extraheren uit bestaande veelgestelde vragen-stijl documenten en websites. Vervolgens kunt u die informatie importeren in een knowledge base die kennisexperts handmatig kunnen cureren. U kunt uw bot integreren met een QnA-knowledge base. Met deze integratie kunt u het meest geschikte antwoord vinden voor elke invoer in natuurlijke taal.

Uw bot testen met Web Chat

U kunt de functionaliteit van uw bot rechtstreeks testen in Composer met Web Chat. Web Chat voert uw bot uit in een lokale botruntime. Dit betekent dat u uw bot lokaal op uw ontwikkelcomputer kunt testen zonder deze te publiceren naar Azure. Web Chat heeft volledige foutopsporing, transcriptopname en mogelijkheden voor botstatusinspectie voor het testen van alle aspecten van botmogelijkheden.

Middleware toevoegen en botfunctionaliteit uitbreiden met de Bot Framework SDK

Als u de broncode van de bot wilt bewerken en de functionaliteit van de bot wilt uitbreiden, kunt u Visual Studio, Visual Studio Code of de ondersteunde IDE van uw keuze gebruiken met de Bot Framework SDK. Bots verpakken en publiceren als NuGet-pakketten. Importeer deze pakketten in Composer voor eenvoudige integratie. U kunt naadloos schakelen tussen Composer en de Bot Framework SDK gedurende de levenscyclus van botontwikkeling. Deze mobiliteit zorgt ervoor dat u altijd het meest effectieve hulpprogramma gebruikt voor elke ontwikkeltaak.

Uw bot publiceren naar Azure

De Azure Bot Service host botfunctionaliteit in Azure. Publiceer bots rechtstreeks vanuit de Composer-interface en maak een end-to-end ontwikkelervaring in Composer.

Azure Bot Service host een bot in een Azure Web App-resource. Deze resource bevat de code, logica en basis-HTTP REST-eindpunten voor connectiviteit met externe resources. Azure Bot Service biedt ook kant-en-klare Bot Service-kanalen. Bot Service-kanalen bieden een adapterlaag waarmee botinteractie wordt aangepast aan een ander chatserviceprotocol, zoals Facebook, Slack, Teams, telefonie en andere.

Wanneer u vanuit Composer publiceert, kan het publicatieproces ook afhankelijke Azure-resources maken of importeren. Deze resources omvatten LUIS, QnA Maker, Azure Cosmos DB, Application Insights en Blob Storage.