Uw QnA Maker-app plannen

Als u uw QnA Maker-app wilt plannen, moet u weten hoe QnA Maker werkt en communiceert met andere Azure-services. U moet ook een goed begrip hebben van Knowledge Base concepten.

Notitie

De QnA Maker-service wordt op 31 maart 2025 buiten gebruik gesteld. Er is nu een nieuwere versie van de vraag- en antwoordmogelijkheid beschikbaar als onderdeel van Azure AI Language. Zie Vragen beantwoorden voor de mogelijkheden voor het beantwoorden van vragen in de Taalservice. Vanaf 1 oktober 2022 kunt u geen nieuwe QnA Maker-resources meer maken. Raadpleeg de migratiehandleiding voor informatie over het migreren van bestaande QnA Maker-knowledge bases naar het beantwoorden van vragen.

Azure-resources

Elke Azure-resource die met QnA Maker is gemaakt, heeft een specifiek doel. Elke resource heeft zijn eigen doel, limieten en prijscategorie. Het is belangrijk om de functie van deze resources te begrijpen, zodat u die kennis kunt gebruiken in uw planningsproces.

Resource Doel
QnA Maker-resource Ontwerpen en queryvoorspelling
Cognitive Search-resource Gegevensopslag en zoeken
App Service resource en App Plan Service-resource Eindpunt queryvoorspelling
Application Insights-resource Telemetrie voor queryvoorspelling

Resourceplanning

De gratis laag, F0, van elke resource werkt en kan zowel de ontwerp- als queryvoorspellingservaring bieden. U kunt deze laag gebruiken om meer te weten te komen over het ontwerpen en voorspellen van query's. Wanneer u overstapt op een productie- of livescenario, evalueert u uw resourceselectie opnieuw.

Grootte en doorvoer van knowledge base

Wanneer u een echte app bouwt, plant u voldoende resources voor de grootte van uw Knowledge Base en voor uw verwachte queryvoorspellingsaanvragen.

Een Knowledge Base grootte wordt bepaald door de:

De Knowledge Base queryvoorspellingsaanvraag wordt beheerd door het web-app-plan en de web-app. Raadpleeg aanbevolen instellingen om uw prijscategorie te plannen.

Delen van resources

Als u al een aantal van deze resources in gebruik hebt, kunt u overwegen om resources te delen. Bekijk welke resources kunnen worden gedeeld met de kennis dat het delen van resources een geavanceerd scenario is.

Alle knowledge bases die in dezelfde QnA Maker-resource zijn gemaakt, delen hetzelfde eindpunt voor testqueryvoorspelling.

Inzicht in de impact van resourceselectie

De juiste resourceselectie betekent dat uw Knowledge Base queryvoorspellingen met succes beantwoordt.

Als uw Knowledge Base niet goed werkt, is dit meestal een probleem van onjuist resourcebeheer.

Onjuiste resourceselectie vereist onderzoek om te bepalen welke resource moet worden gewijzigd.

Knowledge bases

Een Knowledge Base is rechtstreeks gekoppeld aan de QnA Maker-resource. Het bevat de vraag- en antwoordparen (QnA) die worden gebruikt om queryvoorspellingsaanvragen te beantwoorden.

Taaloverwegingen

De eerste Knowledge Base gemaakt voor uw QnA Maker-resource stelt de taal voor de resource in. U kunt slechts één taal hebben voor een QnA Maker-resource.

U kunt uw QnA Maker-resources op taal structuren of u kunt Translator gebruiken om een query van een andere taal te wijzigen in de taal van de Knowledge Base voordat u de query naar het eindpunt voor queryvoorspelling verzendt.

Gegevensbronnen opnemen

U kunt een van de volgende opgenomen gegevensbronnen gebruiken om een Knowledge Base te maken:

  • Openbare URL
  • Persoonlijke SharePoint-URL
  • File

Tijdens het opnameproces worden ondersteunde inhoudstypen geconverteerd naar Markdown. Alle verdere bewerkingen van het antwoord worden uitgevoerd met Markdown. Nadat u een Knowledge Base hebt gemaakt, kunt u QnA-paren bewerken in de QnA Maker-portal met tekst met opmaak.

Overwegingen voor gegevensindeling

Omdat markdown de uiteindelijke indeling van een QnA-paar is, is het belangrijk om markdown-ondersteuning te begrijpen.

Gekoppelde afbeeldingen moeten beschikbaar zijn via een openbare URL om te worden weergegeven in het testvenster van de QnA Maker-portal of in een clienttoepassing. QnA Maker biedt geen verificatie voor inhoud, inclusief afbeeldingen.

Bot-persoonlijkheid

Voeg een botpersoonlijkheid toe aan uw Knowledge Base met chit-chat. Deze persoonlijkheid komt door met antwoorden op een bepaalde gesprekstoon, zoals professioneel en vriendelijk. Deze chit-chat wordt aangeboden als een gespreksset, die u volledig kunt toevoegen, bewerken en verwijderen.

Een botpersoonlijkheid wordt aanbevolen als uw bot verbinding maakt met uw Knowledge Base. U kunt ervoor kiezen om chit-chat te gebruiken in uw Knowledge Base, zelfs als u ook verbinding maakt met andere services, maar u moet controleren hoe de botservice communiceert om te weten of dat het juiste architectuurontwerp voor uw gebruik is.

Gespreksstroom met een Knowledge Base

De gespreksstroom begint meestal met een aanhef van een gebruiker, zoals Hi of Hello. Uw Knowledge Base kunt antwoorden met een algemeen antwoord, zoals Hi, how can I help you, en het kan ook een selectie van vervolgprompts bieden om het gesprek voort te zetten.

U moet uw gespreksstroom ontwerpen met een lus in het achterhoofd, zodat een gebruiker weet hoe de bot moet worden gebruikt en niet wordt verlaten door de bot in het gesprek. Vervolgprompts bieden koppelingen tussen QnA-paren, waardoor de gespreksstroom mogelijk is.

Ontwerpen met samenwerkers

Medewerkers kunnen andere ontwikkelaars zijn die de volledige ontwikkelingsstack van de Knowledge Base-toepassing delen of die alleen de Knowledge Base maken.

Het ontwerpen van knowledge base ondersteunt verschillende op rollen gebaseerde toegangsmachtigingen die u toepast in de Azure Portal om het bereik van de mogelijkheden van een samenwerker te beperken.

Integratie met clienttoepassingen

Integratie met clienttoepassingen wordt bereikt door een query te verzenden naar het eindpunt van de voorspellingsruntime. Er wordt een query verzonden naar uw specifieke Knowledge Base met een SDK- of REST-aanvraag naar het eindpunt van uw QnA Maker-web-app.

Om een clientaanvraag correct te verifiëren, moet de clienttoepassing de juiste referenties en Knowledge Base-id verzenden. Als u een Azure AI-Bot Service gebruikt, configureert u deze instellingen als onderdeel van de botconfiguratie in de Azure Portal.

Gespreksstroom in een clienttoepassing

Gespreksstroom in een clienttoepassing, zoals een Azure-bot, vereist mogelijk functionaliteit voor en na interactie met de Knowledge Base.

Ondersteunt uw clienttoepassing de gespreksstroom, hetzij door alternatieve manieren te bieden voor het afhandelen van vervolgprompts of door chit-chit toe te voegen? Als dit het geval is, ontwerpt u deze vroeg en zorgt u ervoor dat de query van de clienttoepassing correct wordt verwerkt door een andere service of wanneer deze naar uw Knowledge Base wordt verzonden.

Verzenden tussen QnA Maker en Language Understanding (LUIS)

Een clienttoepassing kan verschillende functies bieden, waarvan er slechts één wordt beantwoord door een Knowledge Base. Andere functies moeten de gesprekstekst nog steeds begrijpen en er betekenis uit halen.

Een veelgebruikte clienttoepassingsarchitectuur is om zowel QnA Maker als Language Understanding (LUIS) samen te gebruiken. LUIS biedt de tekstclassificatie en -extractie voor elke query, inclusief voor andere services. QnA Maker biedt antwoorden van uw Knowledge Base.

In een dergelijk scenario met gedeelde architectuur wordt de verzending tussen de twee services uitgevoerd door het hulpprogramma Dispatch van Bot Framework.

Actief leren van een clienttoepassing

QnA Maker gebruikt actief leren om uw Knowledge Base te verbeteren door alternatieve vragen voor een antwoord voor te stellen. De clienttoepassing is verantwoordelijk voor een deel van deze actieve training. Door middel van gespreksprompts kan de clienttoepassing bepalen dat de Knowledge Base een antwoord heeft geretourneerd dat niet nuttig is voor de gebruiker, en kan het een beter antwoord bepalen. De clienttoepassing moet die informatie terugsturen naar de Knowledge Base om de voorspellingskwaliteit te verbeteren.

Een standaardantwoord opgeven

Als uw Knowledge Base geen antwoord vindt, wordt het standaardantwoord geretourneerd. Dit antwoord kan worden geconfigureerd op de pagina Instellingen in de QnA Maker-portal of in de API's.

Dit standaardantwoord verschilt van het standaardantwoord van de Azure-bot. U configureert het standaardantwoord voor uw Azure-bot in de Azure Portal als onderdeel van de configuratie-instellingen. Deze wordt geretourneerd wanneer de drempelwaarde voor de score niet wordt bereikt.

Voorspelling

De voorspelling is het antwoord van uw Knowledge Base en bevat meer informatie dan alleen het antwoord. Gebruik de GenerateAnswer-API om een queryvoorspellingsreactie op te halen.

Voorspellingsscorefluctuaties

Een score kan veranderen op basis van verschillende factoren:

  • Aantal antwoorden dat u hebt aangevraagd als reactie op GenerateAnswer met top eigenschap
  • Verscheidenheid aan beschikbare alternatieve vragen
  • Filteren op metagegevens
  • Query verzonden naar test of production Knowledge Base

Er is een antwoordclassificatie in twee fasen:

  • Cognitive Search - eerste rang. Stel het toegestane aantal antwoorden zo hoog in dat de beste antwoorden worden geretourneerd door Cognitive Search en vervolgens worden doorgegeven aan de QnA Maker-classificatie.
  • QnA Maker - tweede rang. Pas featurization en machine learning toe om het beste antwoord te bepalen.

Service-updates

Pas de nieuwste runtime-updates toe om service-updates automatisch te beheren.

Schalen, doorvoer en tolerantie

Schalen, doorvoer en tolerantie worden bepaald door de Azure-resources, hun prijscategorieën en alle omringende architectuur, zoals Traffic Manager.

Analyse met Application Insights

Alle query's voor uw Knowledge Base worden opgeslagen in Application Insights. Gebruik onze belangrijkste query's om inzicht te hebben in uw metrische gegevens.

Levenscyclus van ontwikkeling

De ontwikkelingslevenscyclus van een Knowledge Base is doorlopend: uw Knowledge Base bewerken, testen en publiceren.

Knowledge Base-ontwikkeling van QnA Maker-paren

Uw QnA-paren moeten worden ontworpen en ontwikkeld op basis van het gebruik van uw clienttoepassing.

Elk paar kan het volgende bevatten:

  • Metagegevens: filterbaar bij het uitvoeren van query's, zodat u uw QnA-paren kunt taggen met aanvullende informatie over de bron, inhoud, indeling en het doel van uw gegevens.
  • Opvolgingsprompts: helpt bij het bepalen van een pad door uw Knowledge Base zodat de gebruiker het juiste antwoord krijgt.
  • Alternatieve vragen: het is belangrijk dat zoekopdrachten overeenkomen met uw antwoord vanuit verschillende vormen van de vraag. Actieve leersuggesties worden omgezet in alternatieve vragen.

DevOps-ontwikkeling

Voor het ontwikkelen van een Knowledge Base voor het invoegen in een DevOps-pijplijn moet de Knowledge Base worden geïsoleerd tijdens batchtests.

Een Knowledge Base deelt de Cognitive Search-index met alle andere knowledge bases op de QnA Maker-resource. Hoewel de Knowledge Base is geïsoleerd door partitie, kan het delen van de index een verschil in de score veroorzaken in vergelijking met de gepubliceerde Knowledge Base.

Als u dezelfde score wilt hebben voor de test knowledge bases enproduction, moet u een QnA Maker-resource isoleren tot één Knowledge Base. In deze architectuur hoeft de resource alleen actief te zijn als de geïsoleerde batchtest.

Volgende stappen