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 en basiskennis krijgt 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. Het botpakket wordt gehost door de Azure Bot Service. 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 of the Azure Bot Service architecture.

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 gebruikt u uw bot? 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 hier duidelijk over. 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 u 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. Als u uw publiek kent, kunt u bepalen hoe complex uw botontwerp moet zijn. Bedenk welke talen u voor de bot wilt implementeren.

    Tip

    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.

    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 LUIS, QnA of veelgestelde vragen gebruiken.
  • Ontwerp tekst- en spraakvariatiereacties voor uw bot met behulp van sjablonen voor het genereren van talen.
  • Bots in meerdere talen ontwerpen.
  • Test rechtstreeks in Composer met ingesloten Webchat.
  • Bots publiceren naar Azure-app Service en Azure Functions.
  • Integreer externe services, zoals LUIS-apps en QnA Maker-knowledge bases.

Dialoogvensters en gespreksstroom maken

Dialoogvensters bepalen de gesprekken die een bot met de gebruikers heeft. Dialoogvensters bevatten antwoordsjablonen voor het genereren van talen waarmee botreacties en instructies worden gedefinieerd voor het uitvoeren van taken, zoals 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 dialoogvensters op basis van context. Deze typen dialoogvensters gebruiken doorgaans externe gegevens, onderhouden stateful gespreksgegevens en zorgen voor noodzakelijke onderbrekingen in het gesprek.

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 reeks bots maken om een meer modulaire en herbruikbare set botfunctionaliteit te maken. U kunt deze kleinere, modulaire onderdelen in meerdere combinaties combineren om een set mogelijkheden voor verschillende bovenliggende bots 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 tekst met opmaak, afbeelding en knopinhoud te maken om een interactievere ervaring te bieden dan tekst zonder opmaak. Composer biedt verschillende kaarttypen, waaronder miniatuur, aanmelding, 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 deze om vraag- en antwoordparen te extraheren uit bestaande documenten en websites in veelgestelde vragen. 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.

Test uw bot met Webchat

U kunt de functionaliteit van uw bot rechtstreeks in Composer testen met Webchat. Webchat uw bot uitvoert in een lokale botruntime, wat betekent dat u uw bot lokaal op uw ontwikkelcomputer kunt testen zonder deze te publiceren naar Azure. Webchat beschikt over volledige foutopsporings-, transcriptopname- en botstatusinspectiemogelijkheden voor het testen van alle aspecten van botmogelijkheden.

Middleware toevoegen en botfunctionaliteit uitbreiden met de Bot Framework SDK

Gebruik Visual Studio, Visual Studio Code of de ondersteunde IDE van uw keuze en de Bot Framework SDK om botbroncode te bewerken en botfunctionaliteit uit te breiden. 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.