Konfigurera distribution för skriptbaserade AI-agenter
I samband med AI-agenter hänvisar uppfyllelse till utförandet av uppgifter som involverar interaktion med externa system för att hämta, manipulera eller lagra data via API: er. I den här artikeln beskrivs exempelagenten som skapats för spårning av paket. Du kan använda den här agent mallen när du skapar en ny AI-agent för digitala och röstinteraktioner.
För digitala kanaler måste distributionen orkestreras genom det anslutningsflöde som används för att distribuera AI-agenten. Om du tar exemplet med en paketspårningsagent, som du kan importera från en mall när du skapar en ny skriptagent, är flödet också tillgängligt att importera medan du skapar ett nytt Webex Connect flöde. Förutom distributionen dirigerar detta anslutningsflöde även användaren till olika agentköer baserat på deras senaste avsikt.
-
När du är klar med att konfigurera din skriptagent identifierar du svaren som kräver uppfyllelse.
I exempelagenten krävs uppfyllelse för 'TrackPackageResponse'.
-
I dessa mallar konfigurerar du ett ”kvarhållningssvar” som kommer att visas för användaren medan distributionen äger rum.
I det här exemplet konfigureras ett kvarhållningssvar för 'TrackPackageResponse'.
-
I flödet använder du en Data Parser-nod för att analysera agentsessionens metadata (utdatavari abel) från AI-agentens svar för att få svarsnamnet.
Du kan få exempelinmatningen för dataparsernoden genom att ladda ner transaktionsinformation från sessioner genom att välja lämplig transaktion och välja värdet på ”GenerateDF” -nyckeln från den nedladdade filen.
-
Om du vill göra avsiktsbaserad routing vid tidpunkten för agentöverlämning kan du få värdet för den tidigare aktiva avsikten i samma steg.
-
Om du inte vill ladda ner och analysera exempelJSON kan du använda
\$.model_state.template_keyför svarsnamnet och\$.previous_intent_model_state.intent.nameför det tidigare avsikts namnet.I vårt exempel använder vi flödesvariabler 'responseKey' och 'previousIntent' för dessa värden.
-
Använd en gren nod för att kontrollera om ett svar behöver uppfyllas.
-
Grennoden avslutas genom nodutfallet ”Inget av ovanstående” för svar som inte kräver uppfyllelse.
-
I vårt exempel, eftersom det finns ett behov av uppfyllelse för 'TrackPackageResponse', kontrollera värdet på 'ResponseKey' i vår grennod.
-
-
För svar som kräver uppfyllelse använder du en HTTP- nod för att göra externa API-an rop.
-
Du kan analysera användbar information från HTTP-nodsvaret i samma nod genom att importera ett prov och erhålla utdatavariabler.
-
I det här exemplet får vi 'EstimatedDelivery' och 'status' för paketet.
-
-
Bearbeta distributionssvaret med hjälp av en utvär deringsnod för att formulera agent svaret.
I vårt exempel initierar vi variabeln 'FulfillmentResp' och ställer in dess värde baserat på paketstatus och beräknad leverans.
-
Skicka distributionssvaret till användaren och lägg till det i konversationen.
-
Gå tillbaka till Rec eive- noden för att hålla konversationen igång mellan användaren och AI-agenten.
Avsiktsbaserad agentöverlämning
Vid tidpunkten för agentöverlämnandet kontrollerar du efter den senaste aktiva avsikten via en gren nod före uppgiftsnoden Queue.
Kontrollera värdet på 'previousIntent' och förgrena till olika köer baserat på dina krav. I det här exemplet, om kunden ber om en agentöverlämning efter avsikten ”Spåra paket ”, dirigera dem till ”Specialist” -kön. Alla andra värden leder till en överlämning till ”Chat” -kön.
För röstkanaler måste uppfyllandet orkestreras genom att kontrollen av konversationen lämnas tillbaka till röstflödet genom anpassade händelser och senare återuppta AI-agent konversationen med distributionsdata. För detta ändamål återanvänds exemplet skriptagent för spårning av paket. Flödet är tillgängligt i ”Importera från mallar” i Webex Contact Center Flow Designer. Förutom uppfyllande dirigerar detta flöde också användaren till olika agentköer baserat på deras senaste avsikt.
Steg-för-steg-guide: Uppfyllelse
-
Lägg till svarstyp ”Anpassad händelse”.
-
Leta reda på mallnyckeln som du vill lägga till den anpassade händelsen för. Använd i så fall mall nyckeln 'TrackPackageResponse'.
-
Lägg till svarstypen ”anpassad händelse” i mallnyckeln.
-
-
Konfigurera svaret för anpassad händelse.
-
Lägg till händelsens namn och händelsens nyttolast:
-
Ange ett händelsenamn för det anpassade händelsesvaret. I det här fallet, ”TrackPack_Exit”.
-
Lägg till händelsens nyttolast, som innehåller data som kommer att skickas till flödet. Detta måste vara i JSON-format. I det här exemplet,
{"PackageNumber":"${entity.PackageNum}"}.
-
-
-
Använd händelsens nyttolast i flödet.
- Åtkomst till Virtual Agent V2- aktivitetsmetadata:
I röstflödeskonfigurationen är den händelsenyttolast du lagt till tillgänglig som en del av Virtual Agent V2-aktivitetsmet adata.
Skapa flödesvariabeln PackageNum.
Använd en Parse- aktivitet för att välja dina Virtual Agent V2-aktivitetsmet adata som indatavariabel.
Ställ in utmatningsvariabeln till 'PackageNum' och dess sökvägsuttryck till '$.packageNum' (baserat på strukturen för händelsenyttolasten som konfigurerats i agentsvar).
- Använd metadata i HTTP- aktivitet:
Använd variabeln 'packageNum' från de bearbetade metadata i ditt flöde för att spåra paketet.
Importera det bifogade flödet för att hitta information om HTTP- aktiviteten.
Definiera flödesvariabler 'EstimatedDelivery' och ställ in den till '$. estimated_delivery'och en annan flödesvariabel' packStatus 'och ställ in den till $.status.
- Lägg till villkor baserade på HTTP- aktivitet:
Lägg till en ny vill korsaktivitet i flödet. Den här aktiviteten används för att kontrollera svaret på HTTP- aktiviteten (om paketet finns och dess status).
I det här exemplet
{{ HTTPRequest_8l3.httpStatusCode == 404 }}används uttrycket för att kontrollera om inget paket hittades.
- Åtkomst till Virtual Agent V2- aktivitetsmetadata:
- Lägg till Ange vari abelaktivitet baserat på villkor:
För villkoret för vilket paketet inte finns:
- Under grenen där inget paket hittas lägger du till en Ange variabel aktivitet.
- Ställ in PackagerESP (en annan flödesvariabel) till:
Inget paket hittades med dessa detaljer.
För det villkor som paketet existerar för:
- Under grenen där ett paket hittas (det vill säga HTTP-statuskoden är inte lika med 404) lägger du till en annan Set Variable- aktivitet.
Ställ in PackagerESP (en annan flödesvariabel) till:
Ditt paket har hämtats. Det kommer att levereras av {{estimatedDelivery}}.
Lägg till ytterligare två Ange variabel-aktiviteter för att konfigurera händelsens namn och händelsedata. Dessa data kommer att skickas till Virtual Agent V2-aktiviteten.
Skapa flödesvariabler event_name ochevent_data.
Ställ in event_name till TrackPack_Entry och event_data till {'packageResp': '{{packageResp}}' | json}.
-
Gå tillbaka till Virtual Agent V2- aktiviteten:
- Konfigurera Virtual Agent V2-aktiviteten:
Anslut den slutliga Set Variab le-aktiviteten till Virtual Agent V2- aktiviteten.
Ställ in händelsens namn till {{event_name}}.
Ställ in händelsedata till {{event_data}}.
- Konfigurera Virtual Agent V2-aktiviteten:
-
Hantera inkommande händelse i din virtuella agent:
-
Lägg till en ny mallnyckel:
-
Gå till fliken Svar på den vänstra panelen.
-
Lägg till en ny mallnyckel med namnet PackageStatus.
-
-
Konfigurera inkommande händelse:
-
Under röstkanalen ställer du in den inkommande händelsen till TrackPack_Entry (eller vad som skickades till Virtual Agent V2-aktiviteten i flödet).
-
-
Konfigurera svaret:
-
Ställ in svaret på: <speak><say-as interpret-as="date"> $ {eventStore.</say-as> packagerESP}. Kan jag hjälpa dig med något annat? </speak>
Detta svar använder variablerna som skickas i nyttolasten från flödet. Eventu ella variabler som skickas som en del av händelsedata är tillgängliga för utvecklare att komma åt som $ {eventStore. < variable_name >}.
Detta använder också SSML-taggar. I synnerhet låter SSML-taggen dig styra hur text tolkas och talas av en text-till-tal-motor. Denna tagg kan användas för att ange hur siffror, datum, tider, adresser och annan text ska uttalas. Här använder vi det för datum.
-
-
Agentroutning baserat på tidigare avsikt
-
Om Virtual Agent V2- aktiviteten avslutas via utdata ”Eskalerad” använder du en Parse- aktivitet för att hämta den tidigare avsikten från agentmetadata.
-
Använd en fall aktivitet för att söka efter olika värden för den tidigare avsikten som bestämmer kölogiken. I det här exemplet kontrollerar vi om den tidigare avsikten var ”Spårpaket” .
-
Anslut fall aktivitetsutmatningarna till lämpliga kökontaktkanter.