Conversational AI kan levere kraftige, automatiserte, interaktive opplevelser gjennom stemme og tekst. Amazon Lex er en tjeneste som kombinerer automatisk talegjenkjenning og naturlig språkforståelsesteknologi, slik at du kan bygge disse sofistikerte samtaleopplevelsene. En vanlig anvendelse av konversasjons-AI finnes i kontaktsentre: selvbetjente virtuelle agenter. Vi er glade for å kunngjøre at du nå kan bruke Amazon Chime SDK Public Switched Telephone Network (PSTN)-lyd for å aktivere selvbetjeningsapplikasjoner for samtale for å redusere anropsløsningstider og automatisere informasjonssvar.
Amazon Chime SDK er et sett med sanntidskommunikasjonskomponenter som utviklere kan bruke til å legge til lyd, meldinger, video og skjermdeling til nett- og mobilapplikasjonene dine. Amazon Chime SDK PSTN-lydintegrasjon med Amazon Lex gjør det mulig for byggere å utvikle samtalegrensesnitt for samtaler til eller fra det offentlige telefonnettverket. Du kan nå bygge AI-drevne selvbetjeningsapplikasjoner som for eksempel samtale interaktive stemmeresponssystemer (IVR), virtuelle agenter og andre telefoniapplikasjoner som bruker Session Initiation Protocol (SIP) for talekommunikasjon.
I tillegg har vi lansert flere nye funksjoner. Amazon Voice Focus for PSTN gir dyp læringsbasert støydemping for å redusere uønsket støy ved samtaler. Du kan også nå bruke maskinlæring (ML)-drevet tekst-til-tale i applikasjonen din gjennom vår opprinnelige integrasjon til Amazon Polly. Alle funksjoner er nå direkte integrert med Amazon Chime SDK PSTN-lyd.
I dette innlegget lærer vi deg hvordan bygge et konversasjons-IVR-system for en fiktiv reisetjeneste som aksepterer reservasjoner over telefon med Amazon Lex.
Løsningsoversikt
Amazon Chime SDK PSTN-lyd gjør det enkelt for utviklere å bygge tilpassede telefoniapplikasjoner ved å bruke smidigheten og operative enkelheten til serverløs AWS Lambda funksjoner.
For denne løsningen bruker vi følgende komponenter:
- Amazon Chime SDK PSTN-lyd
- AWS Lambda
- Amazon Lex
- Amazon Polly
Amazon Lex integreres naturlig med Amazon Polly for å gi tekst-til-tale-funksjoner. I dette innlegget aktiverer vi også Amazon Voice Focus for å redusere bakgrunnsstøy ved telefonsamtaler. I en Forrige innlegg, viste vi hvordan man integrerer med Amazon Lex v1 ved å bruke API-grensesnittet. Det er ikke lenger nødvendig. De tunge løftene ved å jobbe med Amazon Lex og Amazon Polly er nå erstattet av noen få enkle funksjonskall.
Følgende diagram illustrerer høynivådesignet til Amazon Chime SDK Amazon Lex chatbot-systemet.
For å hjelpe deg å lære å bygge ved å bruke Amazon Chime SDK PSTN-lydtjenesten, har vi publisert en arkiv med kildekode og dokumentasjon forklarer hvordan den kildekoden fungerer. Kildekoden er i et verkstedformat, hvor hvert eksempelprogram bygger på forrige leksjon. Den siste leksjonen er hvordan du bygger en komplett Amazon Lex-drevet chatbot over telefon. Det er lærdommen vi fokuserer på i dette innlegget.
Som en del av denne løsningen oppretter du følgende ressurser:
- SIP-medieapplikasjon – Et administrert objekt som spesifiserer en Lambda-funksjon som skal påkalles.
- SIP-regel – Et administrert objekt som spesifiserer et telefonnummer som skal utløses på og hvilket SIP-medieapplikasjons-administrert objekt som skal brukes til å starte en Lambda-funksjon.
- telefonnummer – Et Amazon Chime SDK PSTN-telefonnummer klargjort for å motta telefonsamtaler.
- Lambda funksjon – En funksjon skrevet i Typescript som er integrert med PSTN-lydtjenesten. Den mottar påkallinger fra SIP-medieapplikasjonen og sender handlinger tilbake som instruerer SIP-medieapplikasjonen til å utføre Amazon Polly- og Amazon Lex-oppgaver.
Demokoden er distribuert i to deler. Amazon Lex chatbot-eksemplet er ett av en rekke workshop-eksempler som lærer hvordan du bruker Amazon Chime SDK PSTN-lyd. For dette innlegget fullfører du følgende trinn på høyt nivå for å distribuere chatboten:
- Konfigurer Amazon Lex chatbot.
- Klon koden fra GitHub-depotet.
- Distribuer de vanlige ressursene for verkstedet (inkludert et telefonnummer).
- Implementer Lambda-funksjonen som kobler Amazon Lex til telefonnummeret.
Vi går gjennom hvert trinn i detalj.
Forutsetninger
Du må ha følgende forutsetninger:
- node V12+/npm installert
- AWS Command Line Interface (AWS CLI) installert
- Node Version Manager (nvm) installert
- Nodemodulene typescript aws-sdk (ved hjelp av nvm) installert
- AWS-legitimasjon konfigurert for kontoen og regionen du bruker for denne demoen
- Tillatelser til å lage Amazon Chime SIP-medieapplikasjoner og telefonnumre (sørg for at tjenestekvoten din er innenfor
us-east-1
orus-west-2
for telefonnumre, talekontakter, SIP-medieapplikasjoner og SIP-regler er ikke nådd) - Utplassering må gjøres i
us-east-1
orus-west-2
for å justere med PSTN-lydressurser
For detaljerte installasjonsinstruksjoner, inkludert et skript som kan automatisere installasjonen og et AWS Cloud Development Kit (AWS CDK)-prosjekt for enkelt å lage et Amazon Elastic Compute Cloud (Amazon EC2) utviklingsmiljø, se verkstedveiledning.
Konfigurer Amazon Lex chatbot
Du kan bygge en komplett samtale-stemmebot ved å bruke Amazon Lex. I dette eksemplet bruker du Amazon Lex-konsollen til å bygge en bot. Vi hopper over trinnene der du bygger Lambda-funksjonen for Amazon Lex. Fokuset her er hvordan du kobler Amazon Chime PSTN-lyd til Amazon Lex. For instruksjoner om å bygge tilpassede Amazon Lex-roboter, se Amazon Lex: Slik fungerer det. I dette eksemplet bruker vi det forhåndsbygde eksemplet "bestill tur".
Lag en bot
For å opprette chatboten din, fullfør følgende trinn:
- Logg på Amazon Lex-konsollen i samme region som du distribuerte Amazon Chime SDK-ressursene i.
Dette må være i begge us-east-1
or us-west-2
, avhengig av hvor du distribuerte Amazon Chime SDK-ressursene ved å bruke AWS CDK.
- Velg i navigasjonsruten Bots.
- Velg Opprett bot.
- Plukke ut Start med et eksempel.
- Til Botnavn, skriv inn et navn (for eksempel BookTrip).
- Til Beskrivelse, skriv inn en valgfri beskrivelse.
- Under IAM-tillatelser, plukke ut Lag en rolle med grunnleggende Amazon Lex -tillatelser.
- Under Loven om beskyttelse av personvern på nettet, plukke ut Nei.
Dette eksemplet trenger ikke den beskyttelsen, men for å lage din egen bot bør du velge dette alternativet tilsvarende.
- Under Tidsavbrudd for inaktiv økt¸ still inn timeout for økten til 1 minutt.
- Du kan hoppe over Avanserte innstillinger seksjon.
- Velg neste.
- Til Velg språk, velg ditt foretrukne språk (for dette innlegget velger vi engelsk (US)).
- Til Stemmeinteraksjon, velg stemmen du vil bruke.
- Du kan legge inn et stemmeeksempel og velge Spille for å teste frasen og bekrefte at stemmen faller i smak.
- La andre innstillinger stå som standard.
- Velg Ferdig.
- på oppfyllelse seksjon, skriv inn følgende tekst for Ved vellykket oppfyllelse:
- Under Avsluttende svar, skriv inn følgende tekst for Melding:
Goodbye!
- Velg Lagre intensjon.
- Velg Bygge.
Byggeprosessen tar noen få minutter å fullføre. Når den er ferdig, kan du teste boten på Amazon Lex-konsollen.
Lag en versjon
Du har nå bygget boten. Deretter lager vi en versjon.
- Naviger til versjoner siden til roboten din (under botnavnet i navigasjonsruten).
- Velg Lag versjon.
- Godta alle standardverdiene og velg Opprett.
Din nye versjon er nå oppført på versjoner side.
Lag et alias
Deretter lager vi et alias.
- Velg i navigasjonsruten Aliaser.
- Velg Lag alias.
- Til Alias navn, skriv inn et navn (for eksempel produksjon).
- Under Førsteamanuensis med en versjon, velg versjon 1 på rullegardinmenyen.
Hvis du hadde mer enn én versjon av boten, kan du velge riktig versjon her.
- Velg Opprett.
Aliaset er nå oppført på Aliaser side.
- På Aliaser Velg aliaset du nettopp opprettet.
- Under Ressursbasert policy, velg Rediger.
- Legg til følgende retningslinjer, som lar Amazon Chime SDK PSTN-lyden påkalle Amazon Lex for deg:
I den foregående koden oppgir du ressursen ARN (plassert rett over tekstboksen), som er ARN for bot-aliaset. Oppgi også kontonummeret ditt og spesifiser regionen du distribuerer til (us-east-1
or us-west-2
). Det definerer ARN for PSTN-lydkontrollplanet på kontoen din.
- Velg Spar å lagre politikken.
- Velg Kopier ved siden av ressursen ARN som skal brukes i et senere trinn.
Gratulerer! Du har konfigurert en Amazon Lex-bot!
I en ekte chatbot-applikasjon vil du nesten helt sikkert implementere en Lambda-funksjon for å behandle intensjonene. Dette demoprogrammet fokuserer på å forklare hvordan du kobler til Amazon Chime SDK PSTN-lyd, så vi går ikke inn på det detaljnivået. For mer informasjon, se Legg til Lambda-funksjonen som en kodekrok.
Klon GitHub-depotet
Du kan få koden for hele verkstedet ved å klone depotet:
Utplasser de felles ressursene for verkstedet
Denne workshopen bruker AWS CDK for å automatisere distribusjonen av alle nødvendige ressurser (unntatt Amazon Lex-boten, som du allerede har gjort). For å distribuere, kjør følgende kode fra terminalen din:
AWS CDK distribuerer ressursene. Vi gjør bootstrap-trinnet for å sikre at AWS CDK er riktig initialisert i regionen du distribuerer til. Merk at disse eksemplene bruker AWS CDK versjon 2.
Depotet har en serie leksjoner som er designet for å forklare hvordan man utvikler PSTN-lydapplikasjoner. Vi anbefaler at du går gjennom disse dokumentene for å forstå det grunnleggende ved å bruke de første prøveprogrammene. Du kan deretter se gjennom Lambda-eksempelprogrammappen. Til slutt følger du trinnene for å konfigurere og deretter distribuere koden din. Skriv inn følgende kommando i terminalen:
Konfigurer Lambda-funksjonen din til å bruke Amazon Lex-bot ARN
Åpne src/index.ts
kildekodefil for Lambda-funksjonen og rediger variabelen botAlias
nær toppen av filen (oppgi ARN-en du kopierte tidligere):
Du kan nå distribuere boten med garnutplassering og bytte ut den nye Lambda-funksjonen til PSTN-lyd med garnbytte. Du kan også legge merke til velkomstteksten i startBotConversationAction
gjenstand:
Amazon Lex starter boten og bruker Amazon Polly til å lese den teksten. Dette gir den som ringer en hilsen, og forteller dem hva de skal gjøre videre.
Hvordan fungerer det
Følgende eksempel legger til flere handlinger til det vi lærte i Call and Bridge Call leksjon. De NEW_INBOUND_CALL
hendelsen kommer og behandles på samme måte. Vi aktiverer Amazon Voice Focus (som forbedrer Amazon Lex' evne til å forstå ord) og sender deretter umiddelbart det innkommende anropet til roboten med en StartBotConversation
handling. Et eksempel på den handlingen ser ut som følgende objekt:
Når boten returnerer en ACTION_SUCCESSFUL
hendelsen, er dataene som samles inn av Amazon Lex-boten inkludert i hendelsen. De innsamlede dataene fra boten er inkludert, og Lambda-funksjonen din kan bruke disse dataene om nødvendig. En vanlig praksis for å bygge Amazon Lex-applikasjoner er imidlertid å behandle dataene med funksjonen knyttet til Amazon Lex-boten. Eksempler på hendelsen og den returnerte handlingen er gitt i verksteddokumentasjon for denne økten.
Sekvensdiagram
Følgende diagram viser sekvensen av samtaler mellom PSTN-lyd og Lambda-funksjonen:
For en mer detaljert forklaring av operasjonen, se verksteddokumentasjon.
Rydd opp
For å rydde opp i ressursene som brukes i denne demoen og unngå å pådra seg ytterligere kostnader, fullfør følgende trinn:
- Skriv inn følgende kode i terminalen:
- Gå tilbake til verkstedmappen (
cd ../../
) og skriv inn følgende kode:
AWS CloudFormation-stakken opprettet av AWS CDK blir ødelagt, og fjerner alle de tildelte ressursene.
konklusjonen
I dette innlegget lærte du hvordan du bygger en samtale interaktiv stemmerespons (IVR)-system som bruker Amazon Lex og Amazon Chime SDK PSTN-lyd. Du kan bruke disse teknikkene til å bygge ditt eget system for å redusere dine egne kundeanropsløsningstider og automatisere informasjonssvar på kundenes anrop.
For mer informasjon, se prosjekt GitHub-depot og Bruker Amazon Chime SDK PSTN Audio-tjenesten.
om forfatteren
Greg Herlein har ledet programvareteam i over 25 år hos store og små selskaper, inkludert flere startups. Han er for tiden hovedevangelist for Amazon Chime SDK-tjenesten, hvor han brenner for hvordan man kan hjelpe kunder med å bygge avansert kommunikasjonsprogramvare.
- Myntsmart. Europas beste Bitcoin og Crypto Exchange.
- Platoblokkkjede. Web3 Metaverse Intelligence. Kunnskap forsterket. FRI TILGANG.
- CryptoHawk. Altcoin Radar. Gratis prøveperiode.
- Kilde: https://aws.amazon.com/blogs/machine-learning/enable-conversational-chatbots-for-telephony-using-amazon-lex-and-the-amazon-chime-sdk/
- "
- 100
- 9
- Om oss
- Logg inn
- Handling
- handlinger
- tillegg
- avansert
- agenter
- AI
- Alle
- allerede
- Amazon
- Kunngjøre
- api
- Søknad
- søknader
- lyd
- Automatisert
- AWS
- bakgrunn
- Grunnleggende
- grensen
- Bot
- roboter
- Eske
- BRO
- bygge
- Bygning
- ring
- Kan få
- evner
- bil
- CD
- avgifter
- Cloud
- kode
- Felles
- kommunikasjon
- Selskaper
- Beregn
- tilstand
- Konfigurasjon
- Konsoll
- innhold
- kontroll
- kunne
- skaperverket
- Credentials
- skikk
- Kunder
- dato
- utplassere
- utplasserings
- distribusjon
- Distribueres
- utforming
- ødelagt
- detalj
- utvikle
- utviklere
- Utvikling
- gJORDE
- dokumenter
- ikke
- lett
- effekt
- Engelsk
- Miljø
- Event
- eksempel
- Unntatt
- Erfaringer
- Egenskaper
- Først
- Fokus
- følge
- etter
- format
- funnet
- funksjon
- GitHub
- hjelpe
- her.
- Hvordan
- Hvordan
- HTTPS
- iverksette
- inkludert
- Inkludert
- informasjon
- integrere
- integrert
- integrering
- interaktiv
- Interface
- IT
- Språk
- stor
- LÆRE
- lært
- læring
- Led
- Nivå
- linje
- oppført
- maskin
- maskinlæring
- fikk til
- leder
- Media
- meldinger
- ML
- Mobil
- Mobilapplikasjoner
- mer
- Naturlig
- Navigasjon
- Nær
- nettverk
- Nye funksjoner
- Bråk
- Antall
- tall
- på nett
- personvern på nettet
- Alternativ
- rekkefølge
- Annen
- politikk
- kraftig
- praksis
- Principal
- privatliv
- prosess
- Produksjon
- program
- programmer
- prosjekt
- beskyttelse
- protokollen
- gi
- gir
- offentlig
- sanntids
- anbefaler
- redusere
- Leie
- erstattet
- Repository
- påkrevd
- ressurs
- Ressurser
- svar
- avkastning
- anmeldelse
- regler
- Kjør
- SDK
- Serien
- server~~POS=TRUNC
- tjeneste
- sett
- Enkelt
- liten
- So
- Software
- løsning
- sofistikert
- kildekoden
- stable
- starter
- startups
- Uttalelse
- oppbevare
- vellykket
- system
- oppgaver
- teknikker
- Technologies
- forteller
- terminal
- test
- Grunnleggende
- Kilden
- Gjennom
- topp
- reiser
- forstå
- us
- bruke
- video
- virtuelle
- Voice
- web
- velkommen
- Hva
- ord
- arbeid
- virker
- år