Azure AI-services gebruiken met natuurlijke taalverwerking (NLP) om botgesprekken te verrijken
Notitie
De QnA Maker-service wordt op 31 maart 2025 buiten gebruik gesteld. Een nieuwere versie van de vraag- en antwoordmogelijkheid is nu beschikbaar als onderdeel van Azure AI Language. Zie vraagantwoording voor vragen in de Language Service voor het beantwoorden van vragen. Vanaf 1 oktober 2022 kunt u geen nieuwe QnA Maker-resources maken. Raadpleeg de migratiehandleiding voor informatie over het migreren van bestaande QnA Maker-knowledge bases om vragen te beantwoorden.
Azure AI-services bieden twee services voor natuurlijke taalverwerking, Language Understanding en QnA Maker, elk met een ander doel. Begrijp wanneer u elke service gebruikt en hoe ze elkaar aanvullen.
Met natuurlijke taalverwerking (NLP) kan uw clienttoepassing, zoals een chatbot, met uw gebruikers werken, met behulp van natuurlijke taal. Een gebruiker voert een zin of zinsdeel in. De tekst van de gebruiker mag onjuiste grammatica, spelfouten of foute interpunctie bevatten. De Azure AI-service kan in ieder geval via de zin van de gebruiker werken, waardoor informatie wordt geretourneerd die de chatbot nodig heeft om de gebruiker te helpen.
Azure AI-services met NLP
Language Understanding (LUIS) en QnA Maker bieden NLP. De clienttoepassing verzendt tekst in natuurlijke taal. De service neemt de tekst, verwerkt deze en retourneert een resultaat.
Wanneer moet elke service worden gebruikt
Language Understanding (LUIS) en QnA Maker lossen verschillende problemen op. LUIS bepaalt de intentie van de tekst van een gebruiker (ook wel een uiting genoemd), terwijl QnA Maker het antwoord op de tekst van een gebruiker bepaalt (ook wel een query genoemd).
Als u de juiste service wilt kiezen, moet u de gebruikerstekst begrijpen die afkomstig is van de clienttoepassing en welke informatie de clienttoepassing moet ophalen uit de Azure AI-service.
Als uw chatbot de tekst How do I get to the Human Resources building on the Seattle North campus?
ontvangt, gebruikt u de onderstaande grafiek om te begrijpen hoe elke service met de tekst werkt.
Service | Clienttoepassing bepaalt |
---|---|
LUIS | Bepaalt de intentie van de gebruiker van tekst. De service retourneert het antwoord op de vraag niet. Deze tekst wordt bijvoorbeeld geclassificeerd als overeenkomend met de FindLocation intentie. |
QnA Maker | Retourneert het antwoord op de vraag uit een aangepaste knowledge base. Deze tekst wordt bijvoorbeeld bepaald als een vraag met het statische tekstantwoord van Get on the #9 bus and get off at Franklin street . |
Wanneer gebruikt u LUIS?
Gebruik LUIS als u de bedoeling van een uiting wilt weten als onderdeel van een proces in de chatbot. Als u verdergaat met de voorbeeldtekst, kunt u, How do I get to the Human Resources building on the Seattle North campus?
zodra u weet dat de gebruiker van plan is om een locatie te vinden, details doorgeven over de uiting (opgehaald met entiteiten) naar een andere service, zoals een transportserver, om het antwoord te krijgen.
U hoeft LUIS en QnA Maker niet te combineren om de intentie te bepalen.
U kunt de twee services voor deze utterance combineren, als de chatbot de tekst moet verwerken op basis van intenties en entiteiten (met behulp van LUIS) en het specifieke statische tekstantwoord (met behulp van QnA Maker).
Wanneer gebruikt u QnA Maker?
Gebruik QnA Maker wanneer u een statische Knowledge Base met antwoorden hebt. Deze Knowledge Base is aangepast aan uw behoeften, die u hebt ingebouwd met documenten zoals PDF’s en URL’s.
Als u doorgaat met de voorbeelduiting, How do I get to the Human Resources building on the Seattle North campus?
verzendt u de tekst als een query naar uw gepubliceerde QnA Maker-service en ontvangt u het beste antwoord.
U hoeft LUIS en QnA Maker niet te combineren om het antwoord op de vraag te bepalen.
U kunt de twee services voor deze utterance combineren, als de chatbot de tekst moet verwerken op basis van intenties en entiteiten (met behulp van LUIS) en het antwoord (met QnA Maker) moet vinden.
Beide services gebruiken wanneer uw Knowledge Base onvolledig is
Als u uw QnA Maker-knowledge base bouwt, maar weet dat het onderwerpdomein verandert (zoals tijdige informatie), kunt u LUIS- en QnA Maker-services combineren. Hiermee kunt u de informatie in uw Knowledge Base gebruiken, maar ook LUIS gebruiken om de bedoeling van een gebruiker te bepalen. Zodra de clienttoepassing de bedoeling heeft, kan deze relevante informatie aanvragen bij een andere bron.
Uw clienttoepassing moet zowel LUIS- als QnA Maker-antwoorden controleren op scores. Als de score van QnA Maker lager is dan een willekeurige drempelwaarde, gebruikt u de intentie- en entiteitsgegevens die door LUIS worden geretourneerd om de informatie door te geven aan een service van derden.
Als u doorgaat met de voorbeeldtekst, How do I get to the Human Resources building on the Seattle North campus?
stelt u dat QnA Maker een lage betrouwbaarheidsscore retourneert. Gebruik de intentie die wordt geretourneerd door LUIS FindLocation
en alle geëxtraheerde entiteiten, zoals Human Resources building
en Seattle North campus
, om deze informatie te verzenden naar een toewijzings- of zoekservice voor een ander antwoord.
U kunt dit antwoord van derden aan de gebruiker presenteren voor validatie. Zodra u de goedkeuring van de gebruiker hebt, kunt u teruggaan naar QnA Maker om de informatie toe te voegen om uw kennis te vergroten.
Beide services gebruiken wanneer uw chatbot meer informatie nodig heeft
Als uw chatbot meer informatie nodig heeft dan een van beide services biedt, gebruikt u beide services en verwerkt u beide antwoorden in de clienttoepassing.
Gebruik het BOT Framework Dispatch CLI-hulpprogramma om een proces te bouwen om met beide services te werken. Met dit hulpprogramma wordt een top-LUIS-app van intenties gebouwd die wordt verzonden tussen LUIS en QnA Maker als onderliggende apps. Meer informatie over integratie met LUIS, QnA Maker en Bot Framework.
Gebruik het Bot Builder-voorbeeld, NLP met verzending, in C# of Node.js, om dit type chatbot te implementeren.
Aanbevolen procedures
Best practices implementeren voor elke service:
Zie ook
- Language Understanding (LUIS)
- QnA Maker
- Dispatch CLI:
- Voorbeelden van botframework
- Azure AI Bot Service
- Azure-botemulator
- Bot Framework-webchat