【re:Invent 2023】AI/ML系Workshop参加レポート - AIM302 - Use generative AI to extract insights from contact center recordings(和訳: 生成 AI を使用してコンタクト センターの記録から洞察を抽出する)

記事タイトルとURLをコピーする

こんにちは。AWS CLIが好きな福島です。

はじめに

現地ラスベガスでre:Invent2023に参加しており、AI/ML系のWorkshopに参加したため、レポートを記載いたします。

ちなみにこのセッションはAM 8:30開始で予約していないセッションだったため、結構早めに行って並んでいたのですが、結局席がスカスカで8:30に行っても間に合ったレベルでなんとも言えない気持ちになりました。

Workshopの概要

以下にWorkshopのタイトルと概要の原文と和訳を記載しておりますが、 主にAmazon TranscribeやAmazon Bedrockを活用して通話記録の音声データを分析するソリューションを触ってみるといったワークショップでした。

そのため、アーキテクチャの詳細までは深掘りできませんでしたが、 上記2つのサービスを活用するとどのように通話記録の音声データを分析できるのか、イメージを持つことができる内容でした。

## タイトル
* 原文
AIM302 - Use generative AI to extract insights from contact center

* 和訳
生成 AI を使用してコンタクト センターの記録から洞察を抽出する

### 概要
* 原文
Learn how to derive insights from contact center recordings and other media using Amazon Transcribe and generative AI.
In this workshop, learn how to combine automatic call recording, transcription, post-call analysis, sentiment analysis, issue detection, 
and call summarization from your own telephony recordings (Cisco, Genesys, Talkdesk, Avaya, and more) 
using AWS Contact Center Intelligence (CCI) solutions and generative AI. 
See demos on how to build analytics dashboards and integrations between LLMs and 
Amazon QuickSight to visualize your key metrics. You must bring your laptop to participate.

* 和訳
Amazon Transcribe と生成 AI を使用して、コンタクトセンターの記録やその他のメディアから洞察を得る方法を学びます。
このワークショップでは、AWS Contact Center Intelligence を使用して、独自の電話録音 (Cisco、Genesys、Talkdesk、Avaya など) から
自動通話録音、文字起こし、通話後分析、センチメント分析、問題検出、通話要約を組み合わせる方法を学びます。 (CCI) ソリューションと生成 AI。 
分析ダッシュボードを構築し、LLM と Amazon QuickSight を統合して主要なメトリクスを視覚化する方法のデモをご覧ください。 
参加するにはラップトップを持参する必要があります。

補足ですが、今回のWorkshopは、以下のリポジトリがベースになっているように見受けられました。

github.com

感想

先に感想を書いちゃいます。

  • 生成AIの活用パターンを知れてよかった。
    • 生成AIを業務で活用することを考えた時、RAGを利用したチャットボットアプリがよくある活用例としてあることを認識していましたが、それ以外の活用パターンの具体例を知れて勉強になりました。
  • 普段触らないAmazon Transcribeを触れてよかった。
    • Amazon TranscribeのCall Analyticsでは、通話記録の音声データをテキストに変換でき、かつ話す速度や人の感情などの分析できることを初めて知り勉強になりました。
  • アーキテクチャが参考になった。
    • アーキテクチャはほとんど理解できていないですが、Amazon BedrockのプロンプトをLambdaのコード内に記載するのではなく、SSMのパラメーターストアで管理しており、気軽にプロンプトのチューニングができることがメリットなのかな?と、アーキテクチャとして面白いなと感じました。

次項からワークショップの内容を記載します。

構成図

概要

https://github.com/aws-samples/amazon-transcribe-post-call-analytics/blob/develop/images/architecture-diagram.png?raw=true

※構成図には記載がないですが、プロンプトの管理にSSMのパラメーターストアも利用しているようです。

引用: https://github.com/aws-samples/amazon-transcribe-post-call-analytics/blob/develop/images/architecture-diagram.png

Step Functionsの詳細

やったこと

Workshopの概要の説明を受けた後は、Workshop用AWSアカウント上にデプロイ済みのソリューションを触ってみるという流れでした。

具体的には以下の内容を実施するワークショップでした。

  1. サンプルの音声データをソリューション上にアップロード
  2. Amazon Bedrockを使った音声データの分析
  3. Amazon Bedrockへのプロンプトの内容を変更し、分析内容の変更
  4. Amazon Athenaを利用して複数の音声データの分析
  5. Amazon QuickSightを利用した可視化

次項からは特に興味があった2,3の内容を記載しますが、まずはソリューションのアプリの画面について、簡単に触れたいと思います。

アプリの画面

※Workshop中にスクリーンショットを撮れていなかったため、冒頭に記載のGitHubのコードをデプロイして表示されるアプリの画面を以下に載せています。

まず、トップページでは通話履歴の一覧が表示され、TimeStampかJob Nameを押下することで詳細を確認することができました。

詳細画面は以下の通りでした。 ※サンプルは、海にクレジットカードを落とした際のサポートへの通話履歴の詳細です。

右上のSentimentで感情分析の結果やSpeaker Timeでエージェントと顧客の会話時間の比率を確認できました。

また、真ん中あたりのGenerative AI InsightsやGenerative AI Queryでは生成AIを使った分析を行えました。

Amazon Bedrockを使った音声データの分析(Generative AI Query)

Workshopでは、Generative AI Queryを実際に使い、通話の中で顧客の主な問題が何か?を確認しました。

Amazon Bedrockへのプロンプトの内容を変更し、分析内容(Generative AI Insights)の変更

Generative AI Insightsに記載の内容は決まった項目の分析を生成AIを活用して実施しているのですが、 プロンプトを変更することでこの項目を変えることができるようで、プロンプトを変更することもWorkshopの中でやりました。

プロンプトはLambdaのコードに書かれていると思いきや、 SSMのパラメーターストアで管理されていたため、SSMのパラメーターストアを更新しました。

初見だと分かりづらいかと思いますが、以下のように設定されているようです。

{
  "項目名1":"プロンプト1",
  "項目名2":"プロンプト2"
}

そのため、Workshopでは以下の項目を追加し、通話の中で顧客の主な課題をGenerative AI Insights内に表示するようにしました。 (実際には、もう2つくらい追加しましたが。。。)

"Main Issue":"<br><br>Human: Answer the question below, defined in <question></question> based on the transcript defined in <transcript></transcript>. If you cannot answer the question, reply with 'n/a'. Use gender neutral pronouns. When you reply, only respond with the answer.<br><br><question>what are the main issues the customer is calling about? </question><br><br><transcript><br>{transcript}<br></transcript><br><br>Assistant:"

変更すると以下のように表示されます。

GitHubのリポジトリのコードではWorkshopで実施したことを再現できなかったため、Workshop中にスクショした内容を載せています。

Workshop中にスクショした内容だと、Google翻訳使っていたため、 日本語で表示されてしまっており分かりづらいかもしれませんが、イメージが伝われば幸いです。

Workshopで実施した内容の一部ですが、ブログの記載はここで終わりたいと思います。

以上

福島 和弥 (記事一覧)

2019/10 入社

AWS CLIが好きです。

AWS資格12冠。2023 Japan AWS Partner Ambassador/APN ALL AWS Certifications Engineer。