Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Добавьте диалоговый ИИ в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK.

Удовлетворенность клиентов является мощным показателем, который напрямую влияет на прибыльность организации. В связи с быстрым технологическим прогрессом в последнее десятилетие или около того еще более важно повышать клиентоориентированность следующими способами:

  • Сделайте вашу организацию доступной для ваших клиентов с помощью различных модальностей, включая голосовую связь, текстовые сообщения, социальные сети и т. д.
  • Предоставление вашим клиентам высокоэффективного послепродажного и сервисного обслуживания
  • Непрерывное улучшение качества вашего обслуживания по мере изменения бизнес-тенденций и динамики

Создание высокоэффективных контакт-центров требует значительной автоматизации, возможности масштабирования и механизма активного обучения на основе обратной связи с клиентами. Проблемы возникают на каждом этапе взаимодействия с клиентом в контакт-центре — от длительного времени ожидания в начале до эксплуатационных расходов, связанных с длительным средним временем обработки.

В традиционных контакт-центрах одним из решений для длительного ожидания является предоставление клиентам возможностей самообслуживания с использованием системы интерактивного голосового ответа (IVR). IVR использует набор автоматических параметров меню, чтобы помочь сократить объемы вызовов агента, отвечая на часто задаваемые запросы без участия оператора. Однако традиционные IVR обычно следуют заранее определенной последовательности, не имея возможности разумно реагировать на запросы клиентов. Подобный неразговорный IVR может расстроить ваших клиентов и заставить их попытаться связаться с агентом как можно скорее, что увеличивает процент отклонения ваших звонков. Вы можете решить эту проблему, добавив искусственный интеллект (ИИ) в свой IVR. IVR с поддержкой ИИ может быстрее и точнее помочь вашему клиенту решать проблемы без вмешательства человека. Когда агент необходим, IVR с поддержкой ИИ может направить вашего клиента к правильному агенту с уже собранной правильной информацией, тем самым избавив клиента от необходимости повторять информацию. С сервисами AWS AI это еще проще, поскольку для использования мощных предварительно обученных моделей машинного обучения не требуется ни обучения машинному обучению (ML), ни специальных знаний.

Автоматизированные приложения на базе ИИ — естественный выбор для IVR, поскольку они могут понимать и отвечать на естественном языке. Кроме того, вы можете добавить в свой IVR расширенные возможности, чтобы учиться и развиваться в зависимости от того, как клиенты взаимодействуют с ним. С Amazon Lex, вы можете создавать мощные многоязычные диалоговые системы искусственного интеллекта и улучшать возможности самообслуживания для своих клиентов, не требуя навыков машинного обучения. С помощью Amazon Chime SDK вы можете легко интегрировать свой существующий контакт-центр в Amazon Lex, используя Мультимедийное SIP-приложение Amazon Chime SDK. Сюда входят контакт-центры, такие как Avaya, Cisco, Genesys и другие. Интеграция Amazon Chime SDK с Amazon Lex доступна в регионах AWS Восток США (Северная Вирджиния) и Запад США (Орегон).

Это обеспечивает гибкость встроенной интеграции с Amazon Lex для самообслуживания на базе ИИ, а также возможность интеграции с множеством других сервисов ИИ AWS для преобразования всей деятельности вашего контакт-центра.

В этом посте мы представляем пошаговое руководство по добавлению IVR на базе ИИ в любой контакт-центр, поддерживающий SIP-транкинг, с помощью Amazon Chime SDK и Amazon Lex с помощью недавно запущенного Интеграция аудио Amazon Chime SDK PSTN с Amazon Lex. В этом посте мы рассмотрим следующие темы:

  • Эталонная архитектура решения для ИИ самообслуживания
  • Развертывание решения
  • Просмотр чат-бота баланса счета
  • Обзор голосового соединителя Amazon Chime SDK
  • Тестирование решения
  • Очистка ресурсов

Обзор решения

Как описано в предыдущем разделе, мы используем два ключевых сервиса AWS, Amazon Lex и Amazon Chime SDK, для создания решения ИИ для самообслуживания. Мы также используем AWS Lambda (полностью управляемая служба бессерверных вычислений), Эластичное вычислительное облако Amazon (Amazon EC2, вычислительная инфраструктура) и Amazon DynamoDB (полностью управляемая база данных без SQL), чтобы создать рабочий пример. База кода для этого решения доступна в сопутствующий репозиторий GitHub. Инструкции по развертыванию и тестированию этого решения приведены в следующем разделе.

Следующая диаграмма иллюстрирует архитектуру решения.

Рабочий процесс решения состоит из следующих шагов:

  1. Когда мы звоним по стационарному или мобильному телефону, телефонная сеть общего пользования (PSTN) соединяет нас с другой стороной. В этой демонстрации мы используем Астериск сервер (бесплатная платформа контакт-центра), развернутая на сервере Amazon EC2 для имитации контакт-центра, подключенного к ТСОП через Amazon Chime Voice Connector. Asterisk — это программная реализация частной телефонной станции (PBX) — контроллера частной телефонной сети, используемого внутри компании или организации.
  2. В рамках этой демонстрации номер телефона приобретается с помощью SDK Amazon Chime и связывается с АТС Asterisk. При поступлении звонка на этот номер он доставляется как SIP (протокол инициации сеанса) к серверу АТС Asterisk. Затем АТС Asterisk направляет этот вызов на Amazon Chime Voice Connector с помощью SIP, где он запускает Мультимедийное SIP-приложение Amazon Chime.
  3. Amazon Chime PSTN audio использует мультимедийное приложение SIP для создания программируемое приложение VoIP. Мультимедийное SIP-приложение Amazon Chime работает с функцией Lambda для программной обработки вызова.
  4. Когда вызов поступает в мультимедийное SIP-приложение Amazon Chime, вызывается связанная с ним функция Lambda. Функция сохраняет информацию о вызове в таблице DynamoDB и возвращает StartBotConversation действие. В StartBotConversation Действие устанавливает голосовой разговор между конечным пользователем PSTN и ботом Amazon Lex.
  5. Amazon Lex — это полностью управляемый сервис AWS AI с расширенными моделями естественного языка для проектирования, создания, тестирования и развертывания диалоговых интерфейсов в приложениях. Он сочетает в себе технологии автоматического распознавания речи и понимания естественного языка, чтобы создать человеческое взаимодействие с вашими приложениями. Например, в этой демонстрации бот развертывается для выполнения трех автоматизированных задач или намерения: Check Balance, Transfer Fundsи Open Account. Намерение представляет собой действие, которое пользователь хочет выполнить.
  6. Разговор начинается с того, что вызывающий абонент взаимодействует с ботом Amazon Lex, сообщая ему, что он хочет сделать. Возможности бота по автоматическому распознаванию речи (ASR) и пониманию естественного языка (NLU) помогают ему понимать вводимые пользователем данные. Amazon Lex может определить запрошенное намерение на основе входных данных вызывающего абонента и примеров высказываний, настроенных для каждого намерения.
  7. После определения намерения Amazon Lex взаимодействует с вызывающим абонентом для сбора информации обо всех слотах, настроенных для этого намерения. Например, Open Account намерение включает четыре слота:
    1. Имя
    2. Фамилия
    3. Вид профессионального профиля
    4. Номер телефона
  8. Amazon Lex работает с вызывающим абонентом для сбора информации обо всех этих требуемых слотах выбранного намерения. После их захвата и выполнения намерения Amazon Lex возвращает обработку вызовов в мультимедийное SIP-приложение Amazon Chime вместе с полными результатами разговора с ботом Amazon Lex.
  9. Последующие этапы обработки выполняются функцией Lambda обработчика аудио PSTN. Это включает в себя синтаксический анализ результатов, определение следующего действия по маршруту вызова, сохранение результатов в таблице DynamoDB и возврат действия по завершению соединения.
  10. АТС Asterisk использует информацию, хранящуюся в таблице DynamoDB, для определения следующего действия. Например, если звонящий хотел проверить свой баланс, вызов завершается. Однако, если звонящий хочет открыть счет, вызов отправляется агенту и включает информацию, полученную в боте Amazon Lex.

Мы использовали Комплект для разработки облачных сервисов AWS (AWS CDK), чтобы упаковать это приложение для удобного развертывания в вашей учетной записи. AWS CDK — это среда разработки программного обеспечения с открытым исходным кодом, позволяющая определять ресурсы облачных приложений с помощью знакомых языков программирования. Он предоставляет компоненты высокого уровня, называемые конструкции которые предварительно настраивают облачные ресурсы с проверенными значениями по умолчанию, поэтому вы можете легко создавать облачные приложения.

Предпосылки

Перед развертыванием решения нам необходимо иметь учетную запись AWS и локальный компьютер для запуска стека AWS CDK. Выполните следующие шаги:

  1. Войдите в свою учетную запись AWS.
    Если у вас нет учетной записи AWS, вы можете подписаться на один.Для новых клиентов AWS предоставляет Уровень бесплатного пользования, который предоставляет возможность бесплатного изучения и опробования сервисов AWS (в пределах установленных ограничений для каждого сервиса). Это может помочь вам получить практический опыт работы с платформой, продуктами и сервисами AWS. Мы используем локальный компьютер, например ноутбук или настольный компьютер, для развертывания стека с помощью AWS CDK.
  2. Откройте новое окно терминала для MacOS или шпатлевка для ОС Windows, чтобы установить все необходимые компоненты, необходимые для развертывания решения.
  3. Установите следующее необходимое программное обеспечение:
    1. Интерфейс командной строки AWS (AWS CLI) — инструмент командной строки для взаимодействия с сервисами AWS. Инструкции по установке см. Установка, обновление и удаление интерфейса командной строки AWS.
    2. Node.js > 16 — движок JavaScript с открытым исходным кодом для разработки и развертывания приложений. Инструкции по установке см. Учебное пособие. Настройка Node.js на инстансе Amazon EC2.
    3. пряжа — Yarn — это менеджер пакетов для вашего кода. Это обеспечивает легкий доступ к использованию и обмену кодом между разработчиками. Выполните следующую команду, чтобы установить Yarn:
      curl -o- -L https://yarnpkg.com/install.sh | bash

      Теперь мы запускаем следующие команды, чтобы настроить нужные нам ключи доступа к AWS. Для получения дополнительной информации см. Управление ключами доступа для пользователей IAM.

  4. Выполните следующую команду:
    aws configure list

  5. Выполните следующую команду:
    aws configure

  6. Укажите значения для идентификатора ключа доступа вашей учетной записи AWS и секретного ключа доступа.
  7. Измените имя региона или оставьте регион по умолчанию без изменений.
  8. Примите значение по умолчанию JSON для выходного формата.

Разверните решение

Вы также можете настроить это решение под свои требования. Просмотрите выходные ресурсы, содержащиеся в этом развертывании, и измените функцию Lambda, чтобы добавить настраиваемую бизнес-логику, необходимую для вашего собственного решения.

Выполните следующие шаги в том же терминале, чтобы развернуть приложение:

  1. Клонируйте репозиторий git:
    git clone https://github.com/aws-samples/amazon-chime-pstn-audio-with-amazon-lex.git

    Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

  2. Войдите в каталог проекта:

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

    Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

  3. Разверните приложение AWS CDK:
    yarn launch

    Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.
    Через несколько минут развертывание стека должно быть завершено. На следующем снимке экрана показан пример вывода.
    Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

  4. Установите SIP-телефон веб-клиента с помощью следующих команд:
    cd site Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.
    Yarn Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

    yarn run start

    Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Обзор голосового соединителя Amazon Chime SDK

В этом посте мы используем Amazon Chime SDK для маршрутизации вызовов, полученных на сервере АТС Asterisk (или ваших существующих контакт-центрах), в Amazon Lex. Это делается с помощью Amazon Chime SIP PSTN audio и Amazon Chime Voice Connector. Аудио Amazon Chime PSTN позволяет создавать программируемые приложения телефонии с использованием функций Lambda. Эти мультимедийные SIP-приложения Amazon Chime запускаются либо телефонным номером PSTN, либо Amazon Chime Voice Connector. На следующем снимке экрана показано правило SIP, которое запускается голосовым соединителем Amazon Chime SDK и нацелено на мультимедийное приложение SIP.

Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Просмотрите чат-бот баланса счета

Бот Amazon Lex в этой демонстрации включает три намерения. Эти намерения могут быть запрошены вызывающим абонентом посредством речи на естественном языке. Например, Check Balance намерение засеяно следующими образцами высказываний.

Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Для намерения может потребоваться ноль или более параметров, которые называются слоты. Мы добавляем слоты как часть конфигурации намерения при построении блота. Во время выполнения Amazon Lex запрашивает у пользователя определенные значения слотов. Пользователь должен указать значения для всех необходимых слотов, прежде чем Amazon Lex сможет выполнить намерение.

Для того, чтобы получить Check Balance намерения, Amazon Lex запрашивает данные слота, например:

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

Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

После того как бот Amazon Lex соберет всю необходимую информацию о слоте, он выполняет свое намерение, вызывая соответствующий ответ. В этом случае он запрашивает баланс счета, относящийся к счету, и предоставляет его клиенту.

В этом посте мы используем функцию Lambda, чтобы помочь инициализировать, проверить и выполнить намерение. Ниже приведен пример кода Python, показывающий, как функция обрабатывает вызовы в зависимости от того, какое намерение используется:

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 

Ниже приведен пример кода, поясняющий блок кода для Check Balance намерение в лямбда-функции. В этом примере мы генерируем случайное число в качестве баланса счета, но его можно интегрировать с существующей базой данных для предоставления точной информации о вызывающем абоненте.

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)

Проверить решение

Давайте рассмотрим решение, следуя пути одного пользовательского запроса:

  1. Получите номер телефона из выходных данных после развертывания AWS CDK:
    Outputs:
    LexContactCenter.voiceConnectorPhone = +1NPANXXXXXX

  2. Наберите номер телефона с любого телефона на базе PSTN.
  3. Теперь вы можете попробовать варианты меню.

Чтобы бот Amazon Lex понимал Check Balance намерение, вы можете произнести любое из следующих высказываний:

  • Какой баланс на моем счету?
  • Проверить баланс моего счета?
  • Я хочу проверить баланс?

Amazon Lex запрашивает данные слота, необходимые для выполнения этого намерения. Для Check Balance намерения, Amazon Lex запрашивает учетную запись и дату рождения:

  • Для какого счета вы хотите проверить баланс?
  • Для целей проверки, каковы ваши данные о рождении?

После того, как вы предоставите необходимую информацию, бот выполнит намерение и предоставит информацию об остатке на счете. Ниже приведен пример выходного сообщения для Check Balance намерение: Thank you. The balance on your <account> account is $<balance>.

  1. Завершите вызов, повесив трубку или перейдя к оператору.

По завершении разговора с ботом Amazon Lex вызов возвращается в мультимедийное приложение SIP и связанную с ним функцию Lambda с результатами разговора с ботом.

Мультимедийное SIP-приложение Amazon Chime выполняет этапы постобработки и возвращает вызов на АТС Asterisk. Для Open Account Это приводит к тому, что УАТС Asterisk звонит агенту с помощью SIP-телефона на основе веб-клиента. На следующем снимке экрана показана панель мониторинга с информацией о вызовах агента. На этот вызов можно ответить в веб-клиенте, чтобы установить двустороннюю аудиосвязь между вызывающим абонентом и агентом. Как показано на снимке экрана, информация, предоставленная вызывающим абонентом, была сохранена и представлена ​​агенту.

Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Посмотрите следующее видео, чтобы увидеть пример партнерского решения по интеграции Amazon Lex с Cisco Unified Contact Center с помощью Amazon Chime SDK:

Очистить ресурсы

Чтобы очистить ресурсы, используемые в этой демонстрации, и избежать дополнительных расходов, выполните следующую команду в окне терминала:

yarn destroy

Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Ассоциация AWS CloudFormation стек, созданный AWS CDK, уничтожается с удалением всех выделенных ресурсов.

Заключение

В этом посте мы продемонстрировали решение с эталонной архитектурой для добавления ИИ самообслуживания в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK. Мы показали, как работает решение, и предоставили подробное пошаговое руководство по коду и шагам развертывания. Это решение предназначено для использования в качестве эталонной архитектуры или краткого руководства, которое вы можете настроить в соответствии со своими потребностями.

Попробуйте и дайте нам знать, как это решило ваш вариант использования, оставив отзыв в разделе комментариев. Для получения дополнительной информации см. GitHub-репозиторий проекта.


Об авторах

Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Прем Ранга является ведущим специалистом в области НЛП и старшим специалистом по искусственному интеллекту и машинному обучению в AWS, а также автором, который часто публикует блоги, исследовательские работы и недавно выпустил учебник по НЛП. Когда он не помогает клиентам внедрить AWS AI/ML, Прем балуется созданием модулей Simple Beer Service для офисов AWS, проведением соревновательных игровых мероприятий с помощью DeepRacer и DeepComposer, а также обучением студентов и молодых специалистов навыкам построения карьеры в области AI/ML. Вы можете следить за работой Према на LinkedIn.

Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Корт Шютт является ведущим евангелистом Amazon Chime SDK с опытом работы в телефонии и теперь любит создавать вещи, которые строят вещи. Корт занимается обучением как разработчиков, так и неразработчиков тому, как строить с помощью AWS.

Добавьте диалоговый искусственный интеллект в любой контакт-центр с помощью Amazon Lex и Amazon Chime SDK PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Вамши Кришна Энаботала является старшим специалистом по AI/ML SA в AWS с опытом работы с большими данными, аналитикой и организацией масштабируемых архитектур AI/ML для стартапов и предприятий. Вамши сосредоточен на языковом ИИ и внедряет инновации в создание рекомендательных систем мирового уровня. Вне работы Вамши увлекается радиоуправлением, строит радиоуправляемое оборудование (самолеты, автомобили и дроны) и играет с ним, а также увлекается садоводством.

Отметка времени:

Больше от Машинное обучение AWS