Conversational AI kan levere kraftfulde, automatiserede, interaktive oplevelser gennem stemme og tekst. Amazon Lex er en tjeneste, der kombinerer automatisk talegenkendelse og naturlige sprogforståelsesteknologier, så du kan bygge disse sofistikerede samtaleoplevelser. En almindelig anvendelse af konversations-AI findes i kontaktcentre: virtuelle selvbetjente agenter. Vi er glade for at kunne meddele, at du nu kan bruge Amazon Chime SDK Public Switched Telephone Network (PSTN)-lyd for at aktivere samtale-selvbetjeningsapplikationer for at reducere opkaldsløsningstider og automatisere informationssvar.
Amazon Chime SDK er et sæt af realtidskommunikationskomponenter, som udviklere kan bruge til at tilføje lyd, beskeder, video og skærmdeling til dine web- og mobilapplikationer. Amazon Chime SDK PSTN lydintegration med Amazon Lex gør det muligt for bygherrer at udvikle samtalegrænseflader til opkald til eller fra det offentlige telefonnetværk. Du kan nu bygge AI-drevne selvbetjeningsapplikationer såsom samtale interaktive stemmesvarssystemer (IVR'er), virtuelle agenter og andre telefoniapplikationer, der bruger Session Initiation Protocol (SIP) til talekommunikation.
Derudover har vi lanceret flere nye funktioner. Amazon Voice Focus til PSTN giver dyb læringsbaseret støjdæmpning for at reducere uønsket støj ved opkald. Du kan også nu bruge maskinlæring (ML)-drevet tekst-til-tale i din applikation gennem vores native integration til Amazon Polly. Alle funktioner er nu direkte integreret med Amazon Chime SDK PSTN-lyd.
I dette indlæg lærer vi dig hvordan opbygge et konversations-IVR-system for en fiktiv rejsetjeneste, der accepterer reservationer over telefonen ved hjælp af Amazon Lex.
Løsningsoversigt
Amazon Chime SDK PSTN-lyd gør det nemt for udviklere at bygge skræddersyede telefoniapplikationer ved hjælp af smidigheden og den operative enkelhed fra serverløs AWS Lambda funktioner.
Til denne løsning bruger vi følgende komponenter:
- Amazon Chime SDK PSTN-lyd
- AWS Lambda
- Amazon Lex
- Amazon Polly
Amazon Lex integreres naturligt med Amazon Polly for at give tekst-til-tale-funktioner. I dette indlæg aktiverer vi også Amazon Voice Focus for at reducere baggrundsstøj ved telefonopkald. I en forrige indlæg, viste vi, hvordan man integrerer med Amazon Lex v1 ved hjælp af API-grænsefladen. Det er ikke længere nødvendigt. Det tunge løft ved at arbejde med Amazon Lex og Amazon Polly er nu erstattet af et par simple funktionskald.
Følgende diagram illustrerer højniveaudesignet af Amazon Chime SDK Amazon Lex chatbot-systemet.
For at hjælpe dig med at lære at bygge ved hjælp af Amazon Chime SDK PSTN-lydtjenesten har vi udgivet en lager af kildekode og dokumentation forklarer, hvordan den kildekode fungerer. Kildekoden er i et workshopformat, hvor hvert eksempelprogram bygger på den foregående lektion. Den sidste lektion er, hvordan man bygger en komplet Amazon Lex-drevet chatbot over telefonen. Det er den lektie, vi fokuserer på i dette indlæg.
Som en del af denne løsning opretter du følgende ressourcer:
- SIP-medieapplikation – Et administreret objekt, der specificerer en Lambda-funktion, der skal aktiveres.
- SIP-regel – Et administreret objekt, der angiver et telefonnummer, der skal udløses på, og hvilket SIP-medieapplikations administreret objekt, der skal bruges til at kalde en Lambda-funktion.
- Telefonnummer – Et Amazon Chime SDK PSTN-telefonnummer klar til at modtage telefonopkald.
- Lambda funktion – En funktion skrevet i Typescript, der er integreret med PSTN-lydtjenesten. Den modtager påkaldelser fra SIP-medieapplikationen og sender handlinger tilbage, der instruerer SIP-medieapplikationen til at udføre Amazon Polly- og Amazon Lex-opgaver.
Demokoden er implementeret i to dele. Amazon Lex chatbot-eksemplet er et af en række workshopeksempler, der lærer, hvordan man bruger Amazon Chime SDK PSTN-lyd. For dette indlæg fuldfører du følgende trin på højt niveau for at implementere chatbotten:
- Konfigurer Amazon Lex chatbot.
- Klon koden fra GitHub-lageret.
- Implementer de fælles ressourcer for værkstedet (inklusive et telefonnummer).
- Implementer Lambda-funktionen, der forbinder Amazon Lex med telefonnummeret.
Vi gennemgår hvert trin i detaljer.
Forudsætninger
Du skal have følgende forudsætninger:
- node V12+/npm installeret
- AWS Command Line Interface (AWS CLI) installeret
- Node Version Manager (nvm) installeret
- Nodemodulerne typescript aws-sdk (ved hjælp af nvm) installeret
- AWS-legitimationsoplysninger konfigureret for den konto og region, du bruger til denne demo
- Tilladelser til at oprette Amazon Chime SIP-medieapplikationer og telefonnumre (sørg for, at din servicekvote er inden for
us-east-1
orus-west-2
for telefonnumre, stemmestik, SIP-medieapplikationer og SIP-regler er ikke nået) - Udbredelsen skal ske i
us-east-1
orus-west-2
for at justere med PSTN-lydressourcer
For detaljerede installationsinstruktioner, inklusive et script, der kan automatisere installationen og et AWS Cloud Development Kit (AWS CDK)-projekt for nemt at skabe et Amazon Elastic Compute Cloud (Amazon EC2) udviklingsmiljø, se værkstedsvejledning.
Konfigurer Amazon Lex chatbot
Du kan bygge en komplet samtale-stemmebot ved hjælp af Amazon Lex. I dette eksempel bruger du Amazon Lex-konsollen til at bygge en bot. Vi springer trinene over, hvor du bygger Lambda-funktionen til Amazon Lex. Fokus her er, hvordan du tilslutter Amazon Chime PSTN-lyd til Amazon Lex. For instruktioner om at bygge brugerdefinerede Amazon Lex-bots, se Amazon Lex: Sådan fungerer det. I dette eksempel bruger vi det forudbyggede "book trip" eksempel.
Opret en bot
For at oprette din chatbot skal du udføre følgende trin:
- Log ind på Amazon Lex-konsollen i den samme region, som du implementerede Amazon Chime SDK-ressourcerne i.
Dette skal være i enten us-east-1
or us-west-2
, afhængigt af hvor du har installeret Amazon Chime SDK-ressourcerne ved hjælp af AWS CDK.
- Vælg i navigationsruden Bots.
- Vælg Opret bot.
- Type Start med et eksempel.
- Til Bot navn, indtast et navn (f.eks. BookTrip).
- Til Beskrivelse, indtast en valgfri beskrivelse.
- Under IAM-tilladelser, Vælg Opret en rolle med grundlæggende Amazon Lex-tilladelser.
- Under Børns online privatlivslov, Vælg Ingen.
Dette eksempel har ikke brug for den beskyttelse, men for din egen bot-oprettelse bør du vælge denne mulighed i overensstemmelse hermed.
- Under Timeout for inaktiv session¸ indstil sessionstimeout til 1 minut.
- Du kan springe over Avancerede indstillinger sektion.
- Vælg Næste.
- Til Vælg sprog, vælg dit foretrukne sprog (til dette indlæg vælger vi engelsk (US)).
- Til Stemmeinteraktion, vælg den stemme, du vil bruge.
- Du kan indtaste en stemmeprøve og vælge Leg for at teste sætningen og bekræfte, at stemmen er til din smag.
- Lad andre indstillinger stå som standard.
- Vælg Udført.
- I opfyldelse sektion, skal du indtaste følgende tekst for Ved vellykket opfyldelse:
- Under Afsluttende svar, indtast følgende tekst for Besked:
Goodbye!
- Vælg Gem hensigten.
- Vælg Byg.
Byggeprocessen tager et par øjeblikke at fuldføre. Når det er færdigt, kan du teste botten på Amazon Lex-konsollen.
Opret en version
Du har nu bygget botten. Dernæst opretter vi en version.
- Naviger til versioner side på din bot (under botnavnet i navigationsruden).
- Vælg Opret version.
- Accepter alle standardværdierne og vælg Opret.
Din nye version er nu opført på versioner .
Opret et alias
Dernæst opretter vi et alias.
- Vælg i navigationsruden aliasser.
- Vælg Opret alias.
- Til Alias navn, indtast et navn (f.eks. produktion).
- Under Associate med en version, vælg Version 1 i rullemenuen.
Hvis du havde mere end én version af botten, kunne du vælge den passende version her.
- Vælg Opret.
Aliaset er nu opført på aliasser .
- På aliasser side, skal du vælge det alias, du lige har oprettet.
- Under Ressourcebaseret politik, vælg Redigere.
- Tilføj følgende politik, som tillader Amazon Chime SDK PSTN-lyden at påkalde Amazon Lex for dig:
I den foregående kode skal du angive ressource-ARN (placeret direkte over tekstboksen), som er ARN for bot-aliaset. Angiv også dit kontonummer og angiv den region, du implementerer i (us-east-1
or us-west-2
). Det definerer ARN for PSTN-lydkontrolplanet på din konto.
- Vælg Gem at opbevare politikken.
- Vælg Kopi ved siden af den ressource ARN, der skal bruges i et senere trin.
Tillykke! Du har konfigureret en Amazon Lex-bot!
I en rigtig chatbot-applikation ville du næsten helt sikkert implementere en Lambda-funktion til at behandle hensigterne. Dette demoprogram fokuserer på at forklare, hvordan man forbinder til Amazon Chime SDK PSTN-lyd, så vi går ikke ind i det detaljeringsniveau. For mere information, se Tilføj Lambda-funktionen som en kodekrog.
Klon GitHub-depotet
Du kan få koden til hele workshoppen ved at klone depotet:
Indsæt de fælles ressourcer til værkstedet
Denne workshop bruger AWS CDK til at automatisere implementeringen af alle nødvendige ressourcer (undtagen Amazon Lex-bot, som du allerede har gjort). For at implementere skal du køre følgende kode fra din terminal:
AWS CDK implementerer ressourcerne. Vi udfører bootstrap-trinnet for at sikre, at AWS CDK er korrekt initialiseret i den region, du implementerer i. Bemærk, at disse eksempler bruger AWS CDK version 2.
Depotet har en række lektioner, der er designet til at forklare, hvordan man udvikler PSTN-lydapplikationer. Vi anbefaler, at du gennemgår disse dokumenter for at forstå det grundlæggende ved hjælp af de første par eksempler på programmer. Du kan derefter gennemgå Lambda-eksempelprogrammappen. Til sidst skal du følge trinene for at konfigurere og derefter implementere din kode. Indtast følgende kommando i terminalen:
Konfigurer din Lambda-funktion til at bruge Amazon Lex-bot ARN
Åbne src/index.ts
kildekodefil til Lambda-funktionen og rediger variablen botAlias
nær toppen af filen (angiv det ARN, du kopierede tidligere):
Du kan nu implementere botten med garnimplementering og bytte den nye Lambda-funktion til PSTN-lyd med garnbytte. Du kan også notere velkomstteksten i startBotConversationAction
objekt:
Amazon Lex starter botten og bruger Amazon Polly til at læse den tekst. Dette giver den, der ringer, en hilsen og fortæller dem, hvad de skal gøre næste gang.
Sådan fungerer det
Det følgende eksempel tilføjer flere handlinger til det, vi lærte i Call og Bridge Call lektion. Det NEW_INBOUND_CALL
begivenhed ankommer og behandles på samme måde. Vi aktiverer Amazon Voice Focus (som forbedrer Amazon Lex' evne til at forstå ord) og videregiver derefter straks det indgående opkald til botten med en StartBotConversation
handling. Et eksempel på den handling ser ud som følgende objekt:
Når botten returnerer en ACTION_SUCCESSFUL
begivenhed, er de data, der indsamles af Amazon Lex-bot, inkluderet i begivenheden. De indsamlede data fra botten er inkluderet, og din Lambda-funktion kan bruge disse data, hvis det er nødvendigt. En almindelig praksis for at bygge Amazon Lex-applikationer er dog at behandle dataene med den funktion, der er forbundet med Amazon Lex-bot. Eksempler på begivenheden og den returnerede handling findes i workshopdokumentation for denne session.
Sekvensdiagram
Følgende diagram viser rækkefølgen af opkald foretaget mellem PSTN-lyd og Lambda-funktionen:
For en mere detaljeret forklaring af operationen henvises til værkstedsdokumentation.
Ryd op
For at rydde op i de ressourcer, der bruges i denne demo og undgå at pådrage sig yderligere gebyrer, skal du udføre følgende trin:
- Indtast følgende kode i terminalen:
- Vend tilbage til værkstedsmappen (
cd ../../
) og indtast følgende kode:
AWS CloudFormation-stakken, der er oprettet af AWS CDK, bliver ødelagt, hvilket fjerner alle de allokerede ressourcer.
Konklusion
I dette indlæg lærte du, hvordan du bygger en samtale interaktiv stemmerespons (IVR) system, der bruger Amazon Lex og Amazon Chime SDK PSTN-lyd. Du kan bruge disse teknikker til at bygge dit eget system for at reducere dine egne kundeopkaldsløsningstider og automatisere informationssvar på dine kunders opkald.
For mere information, se projekt GitHub repository , Brug af Amazon Chime SDK PSTN Audio-tjenesten.
Om forfatteren
Greg Herlein har ledet softwareteams i over 25 år hos store og små virksomheder, herunder flere startups. Han er i øjeblikket hovedevangelist for Amazon Chime SDK-tjenesten, hvor han brænder for, hvordan man hjælper kunder med at bygge avanceret kommunikationssoftware.
- Coinsmart. Europas bedste Bitcoin og Crypto Exchange.
- Platoblokkæde. Web3 Metaverse Intelligence. Viden forstærket. FRI ADGANG.
- CryptoHawk. Altcoin radar. Gratis prøveversion.
- Kilde: https://aws.amazon.com/blogs/machine-learning/enable-conversational-chatbots-for-telephony-using-amazon-lex-and-the-amazon-chime-sdk/
- "
- 100
- 9
- Om
- Konto
- Handling
- aktioner
- Desuden
- fremskreden
- midler
- AI
- Alle
- allerede
- Amazon
- Annoncere
- api
- Anvendelse
- applikationer
- lyd
- Automatiseret
- AWS
- baggrund
- Grundlæggende
- grænse
- Bot
- bots
- Boks
- BRIDGE
- bygge
- Bygning
- ringe
- Kan få
- kapaciteter
- bil
- CD
- afgifter
- Cloud
- kode
- Fælles
- Kommunikation
- Virksomheder
- Compute
- betingelse
- Konfiguration
- Konsol
- indhold
- kontrol
- kunne
- skabelse
- Legitimationsoplysninger
- skik
- Kunder
- data
- indsætte
- implementering
- implementering
- udruller
- Design
- ødelagt
- detail
- udvikle
- udviklere
- Udvikling
- DID
- dokumenter
- Er ikke
- nemt
- effekt
- Engelsk
- Miljø
- begivenhed
- eksempel
- Undtagen
- Oplevelser
- Funktionalitet
- Fornavn
- Fokus
- følger
- efter
- format
- fundet
- funktion
- GitHub
- hjælpe
- link.
- Hvordan
- How To
- HTTPS
- gennemføre
- medtaget
- Herunder
- oplysninger
- integrere
- integreret
- integration
- interaktiv
- grænseflade
- IT
- Sprog
- stor
- LÆR
- lærte
- læring
- Led
- Niveau
- Line (linje)
- Børsnoterede
- maskine
- machine learning
- lykkedes
- leder
- Medier
- messaging
- ML
- Mobil
- Mobile applikationer
- mere
- Natural
- Navigation
- I nærheden af
- netværk
- Nye funktioner
- Støj
- nummer
- numre
- online
- online privatliv
- Option
- ordrer
- Andet
- politik
- vigtigste
- praksis
- Main
- Beskyttelse af personlige oplysninger
- behandle
- produktion
- Program
- Programmer
- projekt
- beskyttelse
- protokol
- give
- giver
- offentlige
- realtid
- anbefaler
- reducere
- Lej
- udskiftes
- Repository
- påkrævet
- ressource
- Ressourcer
- svar
- afkast
- gennemgå
- regler
- Kør
- SDK
- Series
- Serverless
- tjeneste
- sæt
- Simpelt
- lille
- So
- Software
- løsninger
- sofistikeret
- kildekode
- stable
- starter
- Nystartede
- Statement
- butik
- vellykket
- systemet
- opgaver
- teknikker
- Teknologier
- fortæller
- terminal
- prøve
- Grundlæggende
- The Source
- Gennem
- top
- rejse
- forstå
- us
- brug
- video
- Virtual
- Voice
- web
- velkommen
- Hvad
- ord
- arbejder
- virker
- år