Indstillinger for genkendelse af hensigt og objektudtrækning til dine intelligente arbejdsbelastninger i applikationen
Genkendelse af hensigt og udtrækning af enheder er nøglekomponenter i forståelsen af naturligt sprog.
Hensigtsgenkendelse indebærer at identificere brugerens mål eller formål bag deres input. Hvis en bruger f.eks. siger "Jeg vil gerne booke en flyrejse", er hensigten at booke en flyrejse. Hensigtsgenkendelse hjælper agenten med at forstå, hvilken handling der skal udføres på baggrund af brugerens anmodning.
Objektudtrækning omfatter identifikation og udtrækning af bestemte oplysninger fra brugerens input. Objekter kan være ting som datoer, navne, placeringer eller andre relevante data. For eksempel i sætningen "Book en flyrejse til New York den 15. september" er "New York" og "15. september" objekter.
En agent bruger hensigten til at forstå brugerens mål og enheder til at identificere de specifikke detaljer, der er nødvendige for at fuldføre opgaven. Genkendelse af hensigt og enhedsudtrækning gør det derfor muligt for agent at give nøjagtige og effektive svar på brugerforespørgsler.
Når du designer din intelligente applikationsbelastning, skal du vælge den bedste indstilling til genkendelse af hensigt og enhedsudtrækning for at sikre, at din intelligente applikationsbelastning giver en positiv brugeroplevelse.
Definitioner
Begreb | Definition |
---|---|
NLU | Naturlig sprogforståelse er en delmængde af naturlig sprogbehandling i AI, der fokuserer på maskinlæsningsforståelse. |
CLU | Forståelse af samtalesprog er en funktion i Azure AI, der gør det muligt at oprette brugerdefinerede NLU modeller. |
LLM | En stor sprogmodel er en type AI-model designet til at forstå og generere menneskeligt sprog. |
GPT | Generativ prætrænet transformer refererer til en familie af store sprogmodeller, der bruger transformerarkitekturen til at forstå og generere menneskelignende tekst. |
Dynamisk sammenkædning | Dynamisk sammenkædning er en metode til automatisering af udløsere til generative handlinger. I stedet for manuelt at definere alle mulige emner eller udløserfraser giver dynamisk sammenkædning AI mulighed for at bestemme, hvilke emner eller plugin-handlinger der skal kaldes baseret på samtalens kontekst. |
Valg af den rette indstilling til genkendelse af hensigt og objektudtrækning i din intelligente programbelastning involverer flere vigtige overvejelser:
Forudbyggede vs. brugerdefinerede objekter: Evaluer, om de forudbyggede objekter, der leveres af Microsoft Copilot Studio , opfylder dine behov. Færdigbyggede objekter dækker almindelige oplysningstyper som datoer, tal og navne. Hvis dit program kræver domænespecifik viden, skal du muligvis oprette brugerdefinerede objekter.
Kompleksiteten af brugerinput: Overvej kompleksiteten og variabiliteten af brugerinput. Forudbyggede objekter kan være tilstrækkelige til enkle scenarier. For mere komplekse interaktioner kan det være nødvendigt med brugerdefinerede objekter og avancerede konfigurationer som f.eks. regulære udtryk (regex).
Udfyldning af rubrik: Bestem, om din applikation kræver proaktiv rubrikudfyldning, hvor en agent aktivt søger og udfylder manglende oplysninger fra brugerinput. Slotfyldning kan forbedre brugeroplevelsen ved at reducere behovet for opfølgende spørgsmål.
Ydeevne og skalerbarhed: Vurder ydeevnen og skalerbarheden af din valgte metode. Brugerdefinerede objekter og komplekse konfigurationer kræver ofte mere processorkraft og kan påvirke svartiderne.
Nem vedligeholdelse: Overvej hvor let det er at vedligeholde og opdatere dine objekter. Færdigbyggede objekter er nemmere at administrere, mens brugerdefinerede objekter kræver løbende justeringer, efterhånden som programmet udvikler sig.
Vælg mellem standard NLU, Azure CLU eller dynamisk sammenkædning
I Copilot Studio-, emne- eller handlingsudløsning kan opnås ved at bruge standard NLU-modellen, kombinere eller tilsidesætte den med en brugerdefineret Azure CLU-model eller ved helt at erstatte NLU-modellen med dynamisk sammenkædning, en GPT stor sprogmodel-baseret model.
Standard NLU model | Brugerdefineret Azure CLU-model | Dynamisk sammenkædning | |
---|---|---|---|
Pro | Standardmodel, der er foruddefineret, med mange foruddefinerede objekttyper. Konfigurationen udføres ved at tilføje udløserfraser og brugerdefinerede objekter (enten lukkede lister med værdier og synonymer eller regulære udtryk). |
Understøtter flere sprog med oprindelige modeller. Understøtter tilpasning af hensigtsudløsermodellen for bedre at genkende hensigten eller for at imødekomme specifikke branchekrav. Giver mulighed for udtrækning af komplekse enheder (f.eks. af samme type). Objektudtrækning kan også bruge Copilot Studio standard NLU. |
Bruger en GPT stor sprogmodel og leveres forudtrænet på et bredere spektrum af data. Kan håndtere flere intentioner og sammenkæde emner og/eller plugins. Genererer automatisk spørgsmål til manglende input og besvarer komplekse objekter og spørgsmål fra samtalekonteksten. Konfiguration udføres ved at beskrive emner, plug-in-handlinger, input og output. |
Ulempe | Genkendelse af enkelt intention pr. forespørgsel. Kan ikke udvides. Du kan ikke ændre modellens funktionsmåde eller finjustere den. Det leveres, som det er. Rubrikfyldning af flere objekter af samme type kræver flertydighed for hver enkelt (f.eks. fra og til byer). |
Genkendelse af enkelt intention pr. forespørgsel. Konfigurationen sker i Azure mod ekstra omkostninger. Har sine egne servicegrænser, der skal evalueres. Azure CLU-hensigter og Copilot Studio emner skal holdes omhyggeligt synkroniseret. |
Da det er en generativ AI-funktion, er licensbrændingshastigheden for meddelelser højere end for almindelig emneudløsning. |
Udløserfraser og rubrikfyldning
Når du udvikler intelligente arbejdsbelastninger i programmer, skal du bruge indbyggede funktioner til at forbedre genkendelsen af hensigter og strømline samtaler. Begynd med at identificere emneudløserfraser fra eksisterende FAQ-databaser og chatudskrifter for at sikre, at forventede sætninger er relevante og nøjagtige. Overvej, hvordan du vil bruge objekter. Det kan f.eks. være, om du vil bruge regulære udtryk til at finde ordre-id'er, færdigbyggede objekter til mails eller lukkede lister til operationstyper med synonymer. Planlæg også, hvordan du vil teste emneudløsere med eksempelsætninger for at validere og finjustere nøjagtigheden af dine processer til genkendelse af hensigt og objektudtrækning. Få mere at vide under Overvejelser om udrulning og test.
Udløserfraser
Udløserfraser træner din agents NLU-model. De hjælper agenten med at genkende og reagere nøjagtigt på brugerytringer ved at definere specifikke sætninger, der udløser bestemte emner. Korrekt konfiguration af disse udløserfraser sikrer, at agenten kan identificere brugerens hensigt korrekt og reagere korrekt. Når agent er usikker på, hvilket emne der skal udløses, kan den foreslå op til tre potentielle emnekandidater (Systememne matchet med flere emner) eller falde tilbage til et standardsvar, hvis der ikke identificeres noget emne. Denne mekanisme hjælper med at opretholde samtalestrømmen og sikrer, at agenten effektivt kan håndtere en lang række brugerinput.
Objektudtrækning og slotudfyldning
Enhedsudvinding og rubrikfyldning er vigtige komponenter i udviklingen af effektive agenter. Disse processer gør det muligt for agenten at erhverve og bruge oplysninger effektivt ved at identificere og udtrække relevante detaljer fra brugerforespørgsler.
Objektudtrækning omfatter fortolkning af brugerens input til identifikation af bestemte oplysninger. I forespørgslen "Jeg vil gerne bestille tre store blå t-shirts" skal agentens NLU-model f.eks. udtrække følgende objekter:
- Mængde: 3
- Farve: Blå
- Størrelse: Stor
- Varetype: T-shirt
Rubrikudfyldning er processen med at bruge disse udtrukne objekter til at udfylde de nødvendige oplysninger til en given opgave. I dette eksempel genkender agenten emnet som en ordre og udfylder de påkrævede rubrikker med de udtrukne objekter. Agenten er i stand til at forstå brugerens anmodning uden at stille flere spørgsmål, hvilket strømliner interaktionen.
Objektudtrækning og rubrikudfyldning gør det muligt for agenter at håndtere komplekse forespørgsler mere effektivt, hvilket giver nøjagtige og kontekstrelevante svar og forbedrer brugeroplevelsen.
Få mere at vide:
- Optimering af udløserfraser og forståelse af naturligt sprog i Copilot Studio
- Bedste praksis for objekter og udfyldning af rubrikker i Copilot Studio
Integration af Microsoft Copilot Studio med Azure CLU
Integration af en CLU-model med en Copilot Studio-agent kan forbedre agentens muligheder betydeligt. Denne integration omfatter tilknytning af Azure CLU-hensigter til Copilot Studio emner, så agenten kan forstå og reagere mere præcist på brugerens hensigter. Derudover kan Copilot Studio-færdigbyggede enheder bruges sammen med Azure CLU-enheder, hvilket giver en robust ramme til enhedsudtrækning.
Når du overvejer denne integration, er det vigtigt at evaluere, om din intelligente applikationsbelastning kræver Azure CLU. For eksempel understøtter Azure CLU flere sprog, branchespecifikke ordbøger og kompleks enhedsudtrækning, hvilket kan være vigtigt for din applikation. Brugerdefinerede enhedsudtrækninger med Azure CLU kan også aktivere lydløs eller "heldig" udfyldning af pladser, hvilket gør det muligt for agenter at håndtere scenarier som at identificere både kilde- og destinationsbyer i en enkelt sætning uden at stille opfølgende spørgsmål.
Et andet vigtigt aspekt er at sikre, at Azure CLU-servicekvoter og -grænser stemmer overens med din agents brug. Hvis du f.eks. forventer færre end 1.000 opkald, der kræver genkendelse af hensigt pr. minut, kan du konfigurere Azure CLU ved hjælp af S-niveauet. Denne konfiguration sikrer, at din agent kan håndtere den forventede arbejdsbelastning uden at overskride servicegrænserne eller pådrage sig uventede omkostninger.
Få mere at vide:
- Oversigt over Azure CLU-integration
- Azure CLU-understøttede sprog
- Azure CLU-grænser
- Azure CLU-prissætning
Overvejelser i forbindelse med emnestrukturer
Strukturering af emner effektivt er vigtigt for at skabe naturlige og problemfri samtaler. Emner er diskrete samtalestier, der, når de kombineres, giver brugerne mulighed for at interagere med agenten problemfrit. Her er nogle vigtige overvejelser i forbindelse med design af emnestrukturer:
Udløserbaserede emner: Disse emner aktiveres baseret på brugerytringer og fungerer som indgangspunkter. Definer klare udløserfraser for disse emner. Hvis udløserfraser overlapper hinanden på tværs af flere emner, kan du overveje at implementere et overordnet emne, der kan omdirigere til det relevante emne, når du har stillet afklarende spørgsmål. Med objektudtrækning og slotudfyldning kan disse afklarende spørgsmål springes over, hvis de nødvendige oplysninger allerede er angivet.
Omdirigeringsbaserede emner: Disse emner udløses af omdirigeringshandlinger, aktiviteter eller hændelser og kan kaldes af flere andre emner. De bør designes, så de kan genbruges og moduleres, med input- og outputvariabler for at lette problemfri integration i forskellige samtalestier.
Emner med to udløsere: Nogle emner kan udløses enten via hensigtsgenkendelse eller ved en eksplicit omdirigering. Denne fleksibilitet giver mulighed for mere dynamiske og responsive samtaler.
Samtaleboost og fallback: Opret reserveemner til situationer, hvor brugerens forespørgsel ikke udløser noget matchende emne. Disse emner kan indeholde generiske svar eller foreslå relevante emner for at bevare samtaleflowet.
Designtilgang:
Brugerdefinerede emner til nøglescenarier: Udvikl et par brugerdefinerede emner til nøglescenarier med relevante udløserfraser og omdirigeringer. Brug en overordnet-underordnet emnestruktur til at administrere komplekse interaktioner. For ikke-anerkendte hensigter skal du implementere generative svar og fallback-mekanismer.
Flertydige emner: Planlæg at bruge flertydige emner til handlinger, der kræver afklarende spørgsmål. Det kan f.eks. være nødvendigt at præcisere brugerkontohandlinger om typen af handling (f.eks. oprette, låse op, suspendere) og det involverede system (f.eks. SAP, ServiceNow, Microsoft).
Undgå duplikering: Du kan undgå at duplikere indhold ved at oprette emner, der kan genbruges, til dialogstier, der skal gentages. Disse genanvendelige emner kan kaldes af et overordnet emne, og når samtalen er fuldført, kan den genoptage det overordnede emnes logik.
Få mere at vide:
Håndtering af ukendte intentioner
Effektiv styring af ukendte intentioner sikrer en jævn brugeroplevelse. Ukendte intentioner opstår, når agenten ikke forstår en brugerytring og mangler tilstrækkelig tillid til at udløse et eksisterende emne. Her er nogle forslag til håndtering af disse scenarier:
Administration af ukendte hensigter: I første omgang skal du rette ukendte hensigter mod emnet Conversational Boosting System, der søger efter svar på offentlige websteder og virksomhedsressourcer som SharePoint websteder. Hvis der ikke findes nogen relevante oplysninger, kan systemet gå tilbage til en ChatGPT-lignende oplevelse ved hjælp af en brugerdefineret systemprompt med Azure OpenAI GPT-4 modellen. Denne fremgangsmåde sikrer, at brugerne får nyttige svar, selv når forespørgsler ikke er planlagt.
Integration med eksterne systemer: Overvej, om du integrerer med eksterne systemer som en del af din reservestrategi. For eksempel integration med Azure-modellen OpenAI GPT-4 ved hjælp af HTTP-anmodninger for at give en kompatibel ChatGPT-lignende oplevelse.
Overvågning af fallback-brug: Gennemgå regelmæssigt procentdelen af samtaler, der rammer fallback. Brug denne indsigt til at forbedre eksisterende emner eller oprette nye, så agenten løbende forbedrer forståelses- og svarfunktionerne.
Fallback-emne og generative svar: Fallback-systememnet udløses, når der ikke identificeres et matchende emne. Hvis Generative svar er aktiveret, udløses samtaleforbedrende emne først ved ukendte hensigtshændelser efterfulgt af reserveemnet efter behov. Denne lagdelte fremgangsmåde hjælper med at håndtere ikke-genkendte hensigter effektivt.
Brug samtaleboost og fallback: Brug generative svar til at søge i forskellige datakilder, eller integrer med andre systemer, f.eks. Azure Cognitive Service for Language. Denne service kan håndtere store mængder spørgsmål-og-svar-par og inkluderer en chitchat-model til tilfældige spørgsmål.
Kernescenarier og brugerdefinerede emner: Sørg for, at kernescenarier og emner er veldefinerede og håndteres via brugerdefinerede emner. Definer tydeligt resultaterne af disse emner for at opretholde et struktureret og effektivt samtaleflow.
Lokalisering og sprog
Når du bygger en agent, skal du overveje, hvilke sprog og markeder din intelligente programbelastning skal understøtte. Lokalisering og understøttelse af sprog er afgørende faktorer for at sikre, at din intelligente programbelastning opfylder behovene hos forskellige brugerbaser. Her er nogle foreslåede fremgangsmåder:
En agent pr. sprog: Denne tilgang indebærer oprettelse af en separat agent for hvert sprog. Det sikrer, at hver agent er fuldt optimeret til sit specifikke sprog; Det kan dog være ressourcekrævende at vedligeholde flere agenter.
En agent for flere sprog (konfigurerede oversættelser): Med denne fremgangsmåde understøtter en enkelt medarbejder flere sprog med oversættelser, der leveres som en del af medarbejderkonfigurationen. Denne fremgangsmåde kræver, at oversættelserne opdateres, hver gang agenten opdateres, eller der tilføjes nyt indhold. Det giver en balance mellem ressourceeffektivitet og sproglig support, men kræver omhyggelig administration af oversættelsesopdateringer.
En agent til flere sprog (realtidsoversættelser): Denne metode bruger en videresendt agent til at levere realtidsoversættelser under kørsel. Det giver mulighed for hurtig implementering af flere sprog og reducerer behovet for hyppige oversættelsesopdateringer. Det introducerer dog en afhængighed af relæ-agenten og et oversættelseslag i realtid, f.eks. Azure Service Copilot og Azure Cognitive Services Translator.
Vigtige overvejelser:
Sprog og markeder: De sprog og markeder, som din agent skal understøtte, påvirker din lokaliseringsstrategi.
Enkelt vs. flersproget agent: Beslut, om der skal udvikles en enkelt agent, der understøtter flere sprog, eller separate agenter for hvert sprog. Denne beslutning afhænger af faktorer som ressourcetilgængelighed, vedligeholdelsesmuligheder og kompleksiteten af de involverede sprog.
Oversættelsestiming: Overvej, om oversættelser skal angives i konfigurationsfasen eller leveres i realtid under kørsel. Konfigurerede oversættelser giver stabilitet og kontrol, mens oversættelser i realtid giver fleksibilitet og hurtig implementering.
Få mere at vide: