Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

Aggiungi l'IA conversazionale a qualsiasi contact center con Amazon Lex e Amazon Chime SDK

La soddisfazione del cliente è una metrica potente che influenza direttamente la redditività di un'organizzazione. Con i rapidi progressi tecnologici negli ultimi dieci anni circa, è ancora più importante aumentare l'attenzione al cliente nei seguenti modi:

  • Rendi la tua organizzazione accessibile ai tuoi clienti in più modalità, inclusi voce, testo, social media e altro ancora
  • Fornire ai tuoi clienti un'esperienza post-vendita e di servizio altamente efficiente
  • Migliorare continuamente la qualità del tuo servizio man mano che le tendenze e le dinamiche aziendali cambiano

La creazione di contact center altamente efficienti richiede un'automazione significativa, capacità di scalabilità e un meccanismo di apprendimento attivo attraverso il feedback dei clienti. C'è una sfida in ogni punto del percorso del cliente del contact center, dai lunghi tempi di attesa all'inizio ai costi operativi associati ai lunghi tempi medi di gestione.

Nei contact center tradizionali, una soluzione per lunghi tempi di attesa è l'abilitazione di opzioni self-service per i clienti che utilizzano un sistema di risposta vocale interattiva (IVR). Un IVR utilizza una serie di opzioni di menu automatizzate per ridurre il volume delle chiamate degli agenti affrontando le richieste frequenti più comuni senza coinvolgere un agente in tempo reale. Gli IVR tradizionali, tuttavia, in genere seguono una sequenza predeterminata, senza la capacità di rispondere in modo intelligente alle richieste dei clienti. Un IVR non colloquiale come questo può frustrare i tuoi clienti e portarli a tentare di contattare un agente il prima possibile, il che aumenta i tassi di deviazione delle chiamate. Puoi risolvere questa sfida aggiungendo l'intelligenza artificiale (AI) al tuo IVR. Un IVR abilitato all'intelligenza artificiale può aiutare i tuoi clienti a risolvere i problemi in modo più rapido e accurato senza l'intervento umano. Quando è necessario un agente, l'IVR abilitato all'intelligenza artificiale può indirizzare il cliente all'agente corretto con le informazioni corrette già raccolte, evitando così al cliente di dover ripetere le informazioni. Con i servizi di intelligenza artificiale di AWS, è ancora più semplice perché non è richiesta alcuna formazione o esperienza di machine learning (ML) per utilizzare modelli ML potenti e pre-addestrati.

Le applicazioni automatizzate basate sull'intelligenza artificiale sono una scelta naturale per gli IVR perché possono comprendere e rispondere in un linguaggio naturale. Inoltre, puoi aggiungere funzionalità avanzate al tuo IVR per apprendere ed evolversi in base a come i clienti interagiscono con esso. Insieme a Amazon-Lex, puoi creare potenti sistemi di IA conversazionale multilingue ed elevare l'esperienza self-service per i tuoi clienti senza competenze di ML. Con Amazon Chime SDK, puoi integrare facilmente il tuo contact center esistente in Amazon Lex utilizzando un Applicazione multimediale SIP SDK Amazon Chime. Ciò include contact center come Avaya, Cisco, Genesys e altri. L'integrazione dell'SDK Amazon Chime con Amazon Lex è disponibile nelle regioni AWS Stati Uniti orientali (Virginia settentrionale) e Stati Uniti occidentali (Oregon).

Ciò ti offre la flessibilità dell'integrazione nativa con Amazon Lex per il self-service basato sull'intelligenza artificiale e la possibilità di integrarsi con una serie di altri servizi di intelligenza artificiale di AWS per trasformare l'intero contact center.

In questo post, forniamo una procedura dettagliata su come aggiungere IVR basati sull'intelligenza artificiale a qualsiasi contact center che supporta il trunking SIP utilizzando Amazon Chime SDK e Amazon Lex, tramite l'SDK lanciato di recente Integrazione audio PSTN di Amazon Chime SDK con Amazon Lex. Trattiamo i seguenti argomenti in questo post:

  • Architettura della soluzione di riferimento per l'IA self-service
  • Distribuire la soluzione
  • Revisione del chatbot del saldo dell'account
  • Revisione di Amazon Chime SDK Voice Connector
  • Testare la soluzione
  • Pulizia delle risorse

Panoramica della soluzione

Come descritto nella sezione precedente, utilizziamo due servizi AWS chiave, Amazon Lex e Amazon Chime SDK, per creare la soluzione di intelligenza artificiale self-service. Usiamo anche AWS Lambda (un servizio di elaborazione serverless completamente gestito), Cloud di calcolo elastico di Amazon (Amazon EC2, un'infrastruttura di calcolo) e Amazon DynamoDB (un database completamente gestito senza SQL) per creare un esempio funzionante. La base di codice per questa soluzione è disponibile in che accompagna il repository GitHub. Le istruzioni per distribuire e testare questa soluzione sono fornite nella sezione successiva.

Il diagramma seguente illustra l'architettura della soluzione.

Il flusso di lavoro della soluzione consiste nei seguenti passaggi:

  1. Quando effettuiamo una telefonata utilizzando un telefono fisso o cellulare, la rete telefonica pubblica commutata (PSTN) ci collega all'altra parte. In questa demo, utilizziamo un Server di asterisco (un framework per contact center gratuito) distribuito su un server Amazon EC2 per emulare un contact center connesso alla rete PSTN tramite un connettore vocale Amazon Chime. Asterisk è un'implementazione software di un centralino privato (PBX), un controller di una rete telefonica privata utilizzata all'interno di un'azienda o organizzazione.
  2. Come parte di questa demo, un numero di telefono viene acquisito tramite Amazon Chime SDK e associato al centralino Asterisk. Quando viene effettuata una chiamata a questo numero, viene consegnata come SIP (protocollo di inizio sessione) al server PBX Asterisk. Il PBX Asterisk instrada quindi questa chiamata ad Amazon Chime Voice Connector tramite SIP, dove attiva un Applicazione multimediale SIP Amazon Chime.
  3. L'audio PSTN di Amazon Chime utilizza un'applicazione multimediale SIP per creare a applicazione VoIP programmabile. L'applicazione multimediale SIP Amazon Chime funziona con una funzione Lambda per gestire la chiamata in modo programmatico.
  4. Quando la chiamata arriva all'applicazione multimediale SIP Amazon Chime, viene richiamata la funzione Lambda associata. La funzione memorizza le informazioni sulla chiamata in una tabella DynamoDB e restituisce a StartBotConversation azione. Il StartBotConversation action stabilisce una conversazione vocale tra l'utente finale su PSTN e il bot Amazon Lex.
  5. Amazon Lex è un servizio AWS AI completamente gestito con modelli avanzati in linguaggio naturale per progettare, creare, testare e distribuire interfacce conversazionali nelle applicazioni. Combina il riconoscimento vocale automatico e le tecnologie di comprensione del linguaggio naturale per creare un'interazione simile a quella umana per le tue applicazioni. Ad esempio, questa demo distribuisce un bot per eseguire tre attività automatizzate o intenti: Check Balance, Transfer Fundse Open Account. Un intento rappresenta un'azione che l'utente desidera eseguire.
  6. La conversazione inizia con il chiamante che interagisce con il bot Amazon Lex dicendo al bot cosa vuole fare. Le funzionalità di riconoscimento vocale automatico (ASR) e comprensione del linguaggio naturale (NLU) del bot lo aiutano a comprendere l'input dell'utente. Amazon Lex è in grado di determinare l'intento richiesto in base all'input del chiamante e alle espressioni di esempio configurate per ogni intento.
  7. Dopo che l'intento è stato determinato, Amazon Lex interagisce con il chiamante per raccogliere informazioni per tutti gli slot configurati per tale intento. Ad esempio, il Open Account intent include quattro slot:
    1. Nome
    2. Cognome
    3. Tipo di account
    4. Numero di telefono
  8. Amazon Lex collabora con il chiamante per acquisire informazioni per tutti questi slot richiesti dell'intento selezionato. Dopo che questi sono stati acquisiti e l'intento è stato soddisfatto, Amazon Lex restituisce l'elaborazione delle chiamate all'applicazione multimediale SIP Amazon Chime, insieme ai risultati completi della conversazione con il bot Amazon Lex.
  9. I passaggi di elaborazione successivi vengono eseguiti dalla funzione Lambda del gestore audio PSTN. Ciò include l'analisi dei risultati, la determinazione dell'azione di instradamento della chiamata successiva, l'archiviazione dei risultati in una tabella DynamoDB e la restituzione dell'azione di riaggancio.
  10. Il PBX Asterisk utilizza le informazioni memorizzate nella tabella DynamoDB per determinare l'azione successiva. Ad esempio, se il chiamante desidera controllare il proprio saldo, la chiamata termina. Tuttavia, se il chiamante desidera aprire un account, la chiamata viene inviata all'agente e include le informazioni acquisite nel bot Amazon Lex.

Abbiamo usato Kit di sviluppo cloud AWS (AWS CDK) per impacchettare questa applicazione per una facile distribuzione nel tuo account. AWS CDK è un framework di sviluppo software open source per definire le risorse delle tue applicazioni cloud utilizzando linguaggi di programmazione familiari. Fornisce componenti di alto livello chiamati costrutti che preconfigurano le risorse cloud con impostazioni predefinite comprovate, in modo da poter creare facilmente applicazioni cloud.

Prerequisiti

Prima di distribuire la soluzione, è necessario disporre di un account AWS e di una macchina locale per eseguire lo stack AWS CDK. Completa i seguenti passaggi:

  1. Accedi al tuo account AWS.
    Se non hai un account AWS, puoi farlo iscriviti per uno.Per i nuovi clienti, AWS fornisce a Piano gratuito, che offre la possibilità di esplorare e provare i servizi AWS gratuitamente (fino ai limiti specificati per ciascun servizio). Questo può aiutarti ad acquisire esperienza pratica con la piattaforma, i prodotti e i servizi AWS. Utilizziamo una macchina locale, come un laptop o un computer desktop, per distribuire lo stack utilizzando AWS CDK.
  2. Apri una nuova finestra del terminale per MacOS, oppure stucco per il sistema operativo Windows per installare tutti i prerequisiti necessari per distribuire la soluzione.
  3. Installare il seguente software prerequisito:
    1. Interfaccia della riga di comando di AWS (AWS CLI) – Uno strumento a riga di comando per interagire con i servizi AWS. Per le istruzioni di installazione, fare riferimento a Installazione, aggiornamento e disinstallazione di AWS CLI.
    2. Node.js > 16 – Motore di back-end JavaScript open source per lo sviluppo e la distribuzione di applicazioni. Per le istruzioni di installazione, fare riferimento a Tutorial: configurazione di Node.js su un'istanza Amazon EC2.
    3. filato – Yarn è un gestore di pacchetti per il tuo codice. Consente un facile accesso per utilizzare e condividere il codice tra gli sviluppatori. Eseguire il comando seguente per installare Yarn:
      curl -o- -L https://yarnpkg.com/install.sh | bash

      Ora eseguiamo i seguenti comandi per configurare le chiavi di accesso AWS di cui abbiamo bisogno. Per ulteriori informazioni, fare riferimento a Gestione delle chiavi di accesso per gli utenti IAM.

  4. Eseguire il seguente comando:
    aws configure list

  5. Eseguire il seguente comando:
    aws configure

  6. Fornisci i valori per l'ID chiave di accesso e la chiave di accesso segreta del tuo account AWS.
  7. Modifica il nome della regione o lascia la regione predefinita così com'è.
  8. Accetta il valore predefinito di JSON per il formato di output.

Distribuisci la soluzione

Puoi anche personalizzare questa soluzione in base alle tue esigenze. Esamina le risorse di output contenute in questa distribuzione e modifica la funzione Lambda per aggiungere la logica aziendale personalizzata di cui hai bisogno per la tua soluzione.

Eseguire i seguenti passaggi nello stesso terminale per distribuire l'applicazione:

  1. Clona il repository git:
    git clone https://github.com/aws-samples/amazon-chime-pstn-audio-with-amazon-lex.git

    Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

  2. Entra nella directory del progetto:

    cd amazon-chime-pstn-audio-with-amazon-lex

    Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

  3. Distribuisci l'applicazione AWS CDK:
    yarn launch

    Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.
    Dopo alcuni minuti, la distribuzione dello stack dovrebbe essere completata. La schermata seguente mostra l'output di esempio.
    Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

  4. Installare il telefono SIP del client Web con i seguenti comandi:
    cd site Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.
    Yarn Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

    yarn run start

    Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

Esamina Amazon Chime SDK Voice Connector

In questo post, utilizziamo Amazon Chime SDK per instradare le chiamate ricevute sul server Asterisk PBX (o sui contact center esistenti) ad Amazon Lex. Questo viene fatto utilizzando l'audio PSTN SIP di Amazon Chime e Amazon Chime Voice Connector. L'audio PSTN di Amazon Chime consente di creare applicazioni di telefonia programmabili utilizzando le funzioni Lambda. Queste applicazioni multimediali SIP Amazon Chime vengono attivate da un numero di telefono PSTN o da Amazon Chime Voice Connector. Lo screenshot seguente mostra la regola SIP che viene attivata da un connettore vocale Amazon Chime SDK e mira a un'applicazione multimediale SIP.

Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

Esamina il chatbot del saldo dell'account

Il bot Amazon Lex in questa demo include tre intenti. Questi intenti possono essere richiesti tramite il linguaggio naturale del chiamante. Ad esempio, il Check Balance intent è seminato con le seguenti espressioni di esempio.

Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

Un intento può richiedere zero o più parametri, che vengono chiamati slot. Aggiungiamo slot come parte della configurazione dell'intento durante la creazione della macchia. In fase di esecuzione, Amazon Lex richiede all'utente valori di slot specifici. L'utente deve fornire i valori per tutti gli slot richiesti prima che Amazon Lex possa soddisfare l'intento.

Per la Check Balance intent, Amazon Lex richiede dati sugli slot, come ad esempio:

For which account would you like to check the balance?
For verification purposes, what is your date of birth?

Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

Dopo che il bot Amazon Lex ha raccolto tutte le informazioni sugli slot richieste, soddisfa l'intento invocando la risposta appropriata. In questo caso, interroga il saldo del conto relativo al conto e lo fornisce al cliente.

In questo post, stiamo usando una funzione Lambda per aiutare a inizializzare, convalidare e soddisfare l'intento. Di seguito è riportato il codice Python di esempio che mostra come la funzione gestisce le chiamate a seconda dell'intento utilizzato:

def dispatch(intent_request):
    intent_name = intent_request["sessionState"]["intent"]["name"]
    response = None
    # Dispatch to your bot's intent handlers
    if intent_name == "CheckBalance":
        return CheckBalance(intent_request)
    elif intent_name == "FollowupCheckBalance":
        return FollowupCheckBalance(intent_request)
    elif intent_name == "OpenAccount":
        return OpenAccount(intent_request)

    raise Exception("Intent with name " + intent_name + " not supported")


def lambda_handler(event, context):
    print(event)
    response = dispatch(event)
    print(response)
    return response 

Di seguito è riportato il codice di esempio che spiega il blocco di codice per il Check Balance intent nella funzione Lambda. In questo esempio, generiamo un numero casuale come saldo del conto, ma questo potrebbe essere integrato con il database esistente per fornire informazioni accurate sul chiamante.

def CheckBalance(intent_request):
    session_attributes = get_session_attributes(intent_request)
    slots = get_slots(intent_request)
    account = get_slot(intent_request, "accountType")
    # The account balance in this case is a random number
    # Here is where you could query a system to get this information
    balance = str(random_num())
    text = "Thank you. The balance on your " + account + " account is $" + balance
    message = {"contentType": "PlainText", "content": text}
    fulfillment_state = "Fulfilled"
    return close(session_attributes, "CheckBalance", fulfillment_state, message)

Prova la soluzione

Esaminiamo la soluzione seguendo il percorso di una singola richiesta utente:

  1. Ottieni il numero di telefono dall'output dopo la distribuzione di AWS CDK:
    Outputs:
    LexContactCenter.voiceConnectorPhone = +1NPANXXXXXX

  2. Componi il numero di telefono da qualsiasi telefono basato su PSTN.
  3. Ora puoi provare le opzioni del menu.

Affinché il bot Amazon Lex comprenda il Check Balance intento, puoi pronunciare una delle seguenti espressioni:

  • Qual è il saldo nel mio account?
  • Controllare il saldo del mio conto?
  • Voglio controllare il saldo?

Amazon Lex richiede i dati dello slot necessari per soddisfare questo intento. Per il Check Balance intento, Amazon Lex richiede l'account e la data di nascita:

  • Per quale conto desideri controllare il saldo?
  • A scopo di verifica, quali sono i tuoi dati di nascita?

Dopo aver fornito le informazioni richieste, il bot soddisfa l'intento e fornisce le informazioni sul saldo dell'account. Di seguito è riportato un messaggio di output di esempio per il Check Balance intento: Thank you. The balance on your <account> account is $<balance>.

  1. Completa la chiamata riagganciando o venendo trasferito a un agente.

Al termine della conversazione con il bot Amazon Lex, la chiamata ritorna all'applicazione multimediale SIP e alla funzione Lambda associata con i risultati della conversazione del bot.

L'applicazione multimediale SIP Amazon Chime esegue le fasi di post-elaborazione e restituisce la chiamata al PBX Asterisk. Per il Open Account intento, questo fa sì che il PBX Asterisk chiami un agente utilizzando un telefono SIP basato su client Web. La schermata seguente mostra la dashboard con le informazioni sulla chiamata dell'agente. È possibile rispondere a questa chiamata sul client Web per stabilire un audio bidirezionale tra il chiamante e l'agente. Come mostrato nello screenshot, le informazioni fornite dal chiamante sono state conservate e presentate all'agente.

Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

Guarda il video seguente per un esempio di una soluzione partner su come integrare Amazon Lex con Cisco Unified Contact Center utilizzando Amazon Chime SDK:

Pulisci risorse

Per ripulire le risorse utilizzate in questa demo ed evitare di incorrere in ulteriori addebiti, eseguire il seguente comando nella finestra del terminale:

yarn destroy

Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.

Il AWS CloudFormazione lo stack creato da AWS CDK viene distrutto, rimuovendo tutte le risorse allocate.

Conclusione

In questo post, abbiamo dimostrato una soluzione con un'architettura di riferimento per aggiungere l'IA self-service a qualsiasi contact center utilizzando Amazon Lex e Amazon Chime SDK. Abbiamo mostrato come funziona la soluzione e fornito una procedura dettagliata del codice e dei passaggi di distribuzione. Questa soluzione vuole essere un'architettura di riferimento o una guida rapida che puoi personalizzare in base alle tue esigenze.

Fai un giro e facci sapere come questo ha risolto il tuo caso d'uso lasciando un feedback nella sezione commenti. Per ulteriori informazioni, vedere il repository GitHub del progetto.


Circa gli autori

Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.Prem Ranga è un leader di dominio NLP e una SA specializzata in AI/ML presso AWS e un autore che pubblica frequentemente blog, articoli di ricerca e, recentemente, un libro di testo NLP. Quando non aiuta i clienti ad adottare AWS AI/ML, Prem si diletta con la creazione di unità Simple Beer Service per gli uffici AWS, organizzando eventi di gioco competitivi con DeepRacer e DeepComposer e formando studenti e giovani professionisti sulla creazione di competenze per l'IA/ML. Puoi seguire il lavoro di Prem LinkedIn.

Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.Corte Schuett è il Lead Evangelist per Amazon Chime SDK con esperienza nella telefonia e ora ama costruire cose che costruiscono cose. Court si concentra sull'insegnamento a sviluppatori e non sviluppatori come costruire con AWS.

Aggiungi l'intelligenza artificiale conversazionale a qualsiasi contact center con Amazon Lex e l'SDK PlatoBlockchain Data Intelligence di Amazon Chime. Ricerca verticale. Ai.Vamshi Krishna Enabothala è un Senior AI/ML Specialist SA presso AWS con esperienza in big data, analisi e orchestrazione di architetture AI/ML scalabili per startup e imprese. Vamshi è focalizzato sull'IA del linguaggio e innova nella creazione di motori di raccomandazione di livello mondiale. Al di fuori del lavoro, Vamshi è un appassionato di RC, costruisce e gioca con apparecchiature RC (aerei, automobili e droni) e ama anche il giardinaggio.

Timestamp:

Di più da Apprendimento automatico di AWS