Konfigurer opfyldelse for scriptede AI-agenter
I forbindelse med AI-agenter henviser opfyldelse til udførelsen af opgaver, der involverer interaktion med eksterne systemer for at hente, manipulere eller gemme data via API'er. Denne artikel beskriver det eksempel på agent, der er oprettet til sporing af pakker. Du kan bruge denne agentskabelon, når du opretter en ny AI-agent til digitale interaktioner og taleinteraktioner.
For digitale kanaler skal opfyldelsen orkestreres via det forbindelsesflow, der bruges til at udrulle AI-agenten. Hvis vi tager eksemplet med en pakkesporingsagent, som du kan importere fra en skabelon, mens du opretter en ny scriptagent, er flowet også tilgængeligt til import, mens du opretter et nyt Webex Connect-flow. Ud over opfyldelse dirigerer dette forbindelsesflow også brugeren til forskellige agentkøer baseret på deres seneste hensigt.
-
Når du er færdig med at konfigurere din scriptagent, skal du identificere de svar, der kræver opfyldelse.
I eksempelagenten kræves opfyldelse for 'trackPackageResponse'.
-
I disse skabeloner skal du konfigurere et 'holdsvar', der vises for brugeren, mens opfyldelsen finder sted.
I dette eksempel er et hold-svar konfigureret til 'trackPackageResponse'.
-
I flowet skal du bruge en dataparsernode til at analysere agentsessionens metadata (outputvariabel) fra AI-agentens svar for at få svarnavnet.
Du kan få eksempelinput til dataparsernoden ved at downloade transaktionsoplysninger fra sessioner ved at vælge den relevante transaktion og vælge værdien af nøglen 'generatedDf' fra den downloadede fil.
-
Hvis du vil udføre formålsbaseret distribution på tidspunktet for agentoverdragelsen, kan du få værdien af den tidligere aktive hensigt i samme trin.
-
Hvis du ikke vil downloade og analysere JSON-eksemplet, kan du bruge
\$.model_state.template_key
til svarnavnet og$$.previous_intent_model_state.intent.name
til det tidligere hensigtsnavn.I vores eksempel bruger vi flowvariablerne 'responseKey' og 'previousIntent' til disse værdier.
-
Brug en grennode til at kontrollere, om et svar skal behandles.
-
Grennoden afsluttes via resultatet af noden "Ingen af ovenstående" for svar, der ikke kræver opfyldelse.
-
I vores eksempel, da der er behov for opfyldelse af 'trackPackageResponse', skal du kontrollere værdien af 'responseKey' i vores grennode.
-
-
Til svar, der kræver klargøring, skal du bruge en HTTP-node til at foretage eksterne API-opkald.
-
Du kan analysere nyttige oplysninger fra HTTP-nodesvaret i den samme node ved at importere en prøve og hente outputvariabler.
-
I dette eksempel får vi 'estimeretLevering' og 'status' på pakken.
-
-
Behandl opfyldelsessvaret ved hjælp af en Evaluer-node for at formulere agentsvaret.
I vores eksempel initialiserer vi variablen 'fulfilmentResp' og indstiller dens værdi baseret på pakkestatus og estimeret levering.
-
Send opfyldelsessvaret til brugeren, og føj det til samtalen.
-
Gå tilbage til noden Modtag for at holde samtalen i gang mellem brugeren og AI-agenten.
Hensigtsbaseret agentoverdragelse
På tidspunktet for agentoverdragelsen skal du kontrollere, om du har den sidste aktive hensigt via en grennode før opgavenoden Kø.
Kontrollér værdien af 'previousIntent', og forgren dig til forskellige køer baseret på dine krav. Hvis kunden i dette eksempel beder om en agentoverdragelse efter hensigten "Spor pakke", skal du dirigere dem til køen "Specialist". Alle andre værdier fører til en overdragelse til 'Chat'-køen.
For stemmekanaler skal opfyldelse orkestreres ved at give styringen af samtalen tilbage til stemmestrømmen gennem brugerdefinerede hændelser og senere genoptage AI-agentsamtalen med opfyldelsesdataene. Til dette formål genbruges eksemplet på scriptet agent til sporing af pakker. Flowet er tilgængeligt i 'Importér fra skabeloner' i Webex Contact Center Flowdesigner. Ud over opfyldelse dirigerer dette flow også brugeren til forskellige agentkøer baseret på deres sidste hensigt.
Trin-for-trin vejledning: Opfyldelse
-
Tilføj svartypen "Tilpasset hændelse".
-
Find den skabelonnøgle, som du vil føje den brugerdefinerede hændelse til. I dette tilfælde skal du bruge skabelonnøglen 'trackPackageResponse'.
-
Føj svartypen "tilpasset hændelse" til skabelonnøglen.
-
-
Konfigurer svaret på den tilpassede hændelse.
-
Tilføj hændelsesnavn og hændelsesdata:
-
Angiv et hændelsesnavn for det tilpassede hændelsessvar. I dette tilfælde »TrackPack_Exit«.
-
Tilføj hændelsesdataene, som indeholder data, der overføres til flowet. Dette skal være i JSON-format. I dette eksempel
{"PackageNumber":"${entity. PackageNum}"}
.
-
-
-
Brug hændelsesdataene i flowet.
- Få adgang til Virtual Agent V2-aktivitetsmetadata :
I konfigurationen af dit taleflow er de hændelsesdata, du har tilføjet, tilgængelige som en del af Virtual Agent V2-aktivitetsmetadataene .
Opret flowvariablen PackageNum.
Brug en Parse-aktivitet til at vælge dine Virtual Agent V2-aktivitetsmetadata som inputvariable.
Indstil outputvariablen til 'PackageNum' og dens stiudtryk til '$. PackageNum' (baseret på strukturen af hændelsesdataene konfigureret i agentsvar).
- Brug metadataene i HTTP-aktivitet :
Brug variablen "PackageNum" fra de behandlede metadata i dit flow til at spore pakken.
Importér det vedhæftede flow for at finde oplysninger om HTTP-aktiviteten .
Definer flowvariablerne 'estimatedDelivery', og indstil den til '$.estimated_delivery' og en anden flowvariabel 'packStatus', og indstil den til $.status.
- Tilføj betingelser baseret på HTTP-aktivitet :
Føj en ny betingelsesaktivitet til flowet. Denne aktivitet bruges til at kontrollere svaret fra HTTP-aktiviteten (om pakken findes og dens status).
I dette eksempel bruges udtrykket
{{ HTTPRequest_8l3.httpStatusCode == 404 }}
til at kontrollere, om der ikke blev fundet nogen pakke.
- Få adgang til Virtual Agent V2-aktivitetsmetadata :
- Tilføj aktivitet med Angiv variabel baseret på betingelser:
For den betingelse, som pakken ikke findes for:
- Under den gren, hvor der ikke findes nogen pakke, skal du tilføje aktiviteten Angiv variabel .
- Indstil packageResp (en anden flowvariabel) til:
Der blev ikke fundet nogen pakke med disse oplysninger.
For den betingelse, for hvilken pakken findes:
- Under den gren, hvor en pakke findes (dvs. HTTP-statuskode er ikke lig med 404), skal du tilføje en anden aktivitet for Indstil variabel .
Indstil packageResp (en anden flowvariabel) til:
Din pakke er blevet afhentet. Den leveres af {{estimatedDelivery}}.
Tilføj yderligere to Angiv variabelaktiviteter for at konfigurere hændelsesnavn og hændelsesdata. Disse data sendes til Virtual Agent V2-aktiviteten.
Opret flowvariabler event_name og event_data.
Indstil event_name til TrackPack_Entry og event_data til {'packageResp': '{{packageResp}}' | json}.
-
Gå tilbage til Virtual Agent V2-aktiviteten :
- Konfigurer Virtual Agent V2-aktiviteten:
Forbind den endelige Angiv variabel-aktivitet med Virtual Agent V2-aktiviteten.
Indstil hændelsesnavnet til {{event_name}}.
Indstil hændelsesdataene til {{event_data}}.
- Konfigurer Virtual Agent V2-aktiviteten:
-
Håndter indgående hændelse i din virtuelle agent:
-
Tilføj en ny skabelonnøgle:
-
Gå til Svar Tab i panelet til venstre.
-
Tilføj en ny skabelonnøgle med navnet packageStatus.
-
-
Konfigurer indgående hændelse:
-
Under stemmekanalen skal du indstille indgående hændelse til TrackPack_Entry (eller hvad der blev sendt til Virtual Agent V2-aktiviteten i flowet).
-
-
Konfigurer svaret:
-
Indstil svaret til: <speak> <say-as interpret-as="date"> ${eventStore.packageResp} </say-as>. Kan jeg hjælpe dig med andet?</speak>
Dette svar bruger de variabler, der sendes i nyttelasten fra flowet. Alle variabler, der sendes som en del af hændelsesdata, er tilgængelige for udviklere at få adgang til som ${eventStore.<variable_name>}.
Dette bruger også SSML-tags. SSML-tagget giver dig især mulighed for at kontrollere, hvordan tekst fortolkes og tales af en tekst-til-tale-motor. Dette mærke kan bruges til at angive, hvordan tal, datoer, klokkeslæt, adresser og anden tekst skal udtales. Her bruger vi det til dato.
-
-
Agentrouting baseret på tidligere hensigt
-
Hvis Virtual Agent V2-aktiviteten afsluttes via outputtet "Eskaleret", skal du bruge en Parse-aktivitet til at hente den tidligere hensigt fra agentmetadata.
-
Brug en sagsaktivitet til at kontrollere, om der er forskellige værdier for den tidligere hensigt, der bestemmer kølogikken. I dette eksempel kontrollerer vi, om den tidligere hensigt var "Spor pakke".
-
Vedhæft output af sagsaktivitet til de relevante køkontaktkanter.