メルマガ
会員
募集中

若手SE(入社1年目)のAWSコラム第1弾 Amazon Connect Voice IDを使ってみた

AWS
2022.3.18(更新日:2022.5.27)

はじめに

しばらく、わたくし「見習いSE大本」が、AWSに関して試したことを連載していきたいと思います。Amazon Connect Voice IDが日本語対応され、音声による本人確認が可能になったそうです。

コンタクトセンターでの顧客の本人確認は、名前や住所、生年月日などの個人情報に基づいて複数の質問に答える必要がありましたが、Amazon Connect Voice IDにより、コールセンターに電話をしたら本人確認は完了しているということになるそうです。もちろん幾多の質問に答える必要もありません。無茶苦茶、楽で便利になりそうです。何だかすごく良いサービスのようです。

では、早速Amazon Connect Voice IDを使ってみます。

Amazon Connect Voice IDとは

Amazon Connect Voice IDとは何なの? 

Amazon Connectで機械学習をベースにリアルタイムの発信認証と不正リスク検出を行うサービスです。

AWSによると、”発信者の固有の音声特性を分析し、エージェントやセルフサービスのインタラクティブ音声応答 (IVR) システムに発信者のアイデンティティに関するリアルタイムの判断を提供し、非常に低いコストでより迅速かつ正確な検証を実現します。また、Amazon Connect Voice ID は、コンタクトセンターのカスタムウォッチリストに基づいて、リアルタイムで不正行為者をスクリーニングし、不正な攻撃による潜在的な損失を低減します。” ということです。

■Voice ID の仕組み

Voice ID で認証するには、顧客登録と顧客の認証が必要になるようです。

1.顧客登録

①顧客が初めて電話をかける際、個人を特定する質問や、SMS で配信されるワンタイムパスワードコードをつうじて本人確認を行う

②ユーザーが Voice ID への登録に同意すると 30 秒間の会話から登録声紋が作成されます

③会話のリズム、ピッチ、イントネーション、声量などの声紋から音声を分析する

2.顧客の確認

①Voice IDに登録済みの顧客がコンタクトセンターに再度電話をかけると、IVRとのやり取りを通じて、エージェントとの会話中に確認が完了します。デフォルトでは、本人確認は 10 秒の音声が必要です

②信頼性を示す認証スコアが0から100で返されます(認証スコアのしきい値の指定は可能)

登録と認証に必要な音声の長さ

①声紋を作成し、顧客を登録するのには、30秒間の顧客の有効な音声 (無音を除いた音声) が必要です。

②顧客音声の検証には、デフォルトで10秒間の顧客の有効な音声が必要です。なお、必要な音声の長さを調整できます。

既知の不正行為者の検出

①S3バケットに保存されている録音で不正行為者登録APIを使用して、既知の不正行為者のウォッチリストを作成します。

②ウォッチリストの不正行為者から着信があると、Voice ID は通話音声を分析してリスクスコアと結果を返します。発信者の声紋がS3バケットの録音から作成された不正行為者の声紋とどの程度一致しているかを示します。

Amazon Connect Voice IDの有効化

Voice IDを使える状態にするために、まず、有効化を行います。

まずは、[AWSマネジメントコンソール]にログインし、[サービス]から[ビジネスアプリケーション] ⇒ [Amazon Connect]と進むと、Amazon Connectの管理画面が表示されます。

次に「インスタンスエイリアス」から有効化したいインスタンスをクリックします。

画像に alt 属性が指定されていません。ファイル名: image-14.png

インスタンスをクリックするとそのインスタンスの概要が表示されるので、左側のメニューから[Voice ID]をクリックします。

BIPA同意書の承諾

次に、Voice IDを有効化するにあたり、BIPA(生体情報プライバシー法)という同意書の承諾が必要となりますので、同意して進みます。

”Amazon Connect Voice IDのBIPAサービス条件”にて、[BIPA同意確認書を読んで承諾する]をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-16.png

同意確認書が表示されるので、[Voice IDの設定を続行]をクリックして次に進めます。

画像に alt 属性が指定されていません。ファイル名: image-17.png

ドメインの設定

同意書に承諾したら、次に[ドメインの設定]を行います。

①ドメインメソッドを選択

 今回は[新しいドメインを作成]にチェックを入れます。

②VoiceIDドメイン名

 ドメインの名前を設定します。ドメイン名は分かりやすい名前を設定して下さい。

画像に alt 属性が指定されていません。ファイル名: image-18.png

■KMSキーの設定

  次にKMSキーを設定します。今回は以前に作成したKMSキーを利用します。

  KMSキーを設定したら、[VoiceIDを有効化]をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-19.png

これで、このインスタンスのVoice IDが有効化されました。

※参考

なお、ここで、Amazon EventBridgeのアクセス権限がない場合、以下のエラーメッセージが表示されますので、管理者にAmazon EventBridgeのアクセス権限付与を依頼して、再度有効化を行なって下さい。

画像に alt 属性が指定されていません。ファイル名: image-20.png

  Voice IDが有効化されると、ドメインが作成されて以下のとおり画面表示されます。

画像に alt 属性が指定されていません。ファイル名: image-21.png

 これで、ドメインの設定は完了です。 意外と簡単に設定ができました。

 次に、Amazon Connectでの設定を行います。

Amazon Connectでのアクセス許可

次にアクセス出来るユーザーを制御します。

Amazon Connectダッシュボード(管理画面)を開き、左側のサイドメニューから[ユーザー]にカーソルをもっていき、[セキュリティプロファイル]をクリックします。これで、利用するユーザーのセキュリティプロファイルの設定を開きます。

[コンタクトコントロールパネル(CCP)]をクリックして、[Voice ID]にチェックを入れます。

画像に alt 属性が指定されていません。ファイル名: image-22.png

 アクセス権限の設定ができました。これで、ユーザーがVoice IDを使うことができます。

次に、問合せフローを作成します。

Amazon Connect問合せフローの作成

今回は、公式で提供されているサンプルのVoiceIDコンタクトフローを利用します。

画像に alt 属性が指定されていません。ファイル名: image-23-1024x423.png

なお、公式で提供されているサンプルのVoice IDコンタクトフローを下記よりダウンロードして利用することが可能です。

https://amazon-connect-blog-assets.s3.amazonaws.com/2021/voice-id/Connect-VoiceID-Sample-Contact-Flow

主なブロックの説明(問合せフローの赤枠のブロック)

Voice IDで使用するブロックを説明します。

■[音声IDの設定]ブロック

[音声IDの設定]ブロックでは、音声認証の有効化と認証時間、不正検出等を設定することができます。

設定は以下のとおり音声ベースは推奨値(しきい値”90”、応答時間”10”)、不正検出をONにしてしきい値を推奨値”20”を設定して進めていきます。

画像に alt 属性が指定されていません。ファイル名: image-24.png

■[コンタクト属性の設定]”ブロック

[コンタクト属性の設定]ブロックは、顧客のIDを設定していきます。実際にはCRMから顧客IDを受取り、設定する必要がありますが、今回はデモですので”111111”と入力します。

画像に alt 属性が指定されていません。ファイル名: image-25.png

■[音声IDを確認]ブロック

最後に、[音声IDを確認]ブロックで、顧客IDを元に生体認証が登録されているかのチェックを行います。

ここでは、”音声認証”にチェックを入れます。

画像に alt 属性が指定されていません。ファイル名: image-26.png

この[音声IDの設定]ブロックと[コンタクト属性の設定]ブロック及び[音声IDを確認]ブロックがVoice IDの設定になるブロックになります。 以上で問合せフローの作成は終わりました。 

どうです? それほど難しくはないですよね。Voice IDの有効化から問合せフローの作成までスムーズに行きました。

Voice IDを使って認証登録を実際にやってみます

Amazon Connectのセキュリティ設定と問合せフローの作成が完了したので、実際にVoice IDを試してみます。まずは、セキュリティプロファイルで権限を与えたユーザーで[コンタクトコントロールパネル]にログインします。ユーザーに設定しているルーティングプロファイルのキューは、コンタクトフローに設定しているキューと同じものにしてください(画像の場合BasicQueue)。

画像に alt 属性が指定されていません。ファイル名: image-27.png

ユーザーに紐づいているルーティングプロファイルはユーザー管理のユーザーの編集画面から確認できます。

まずはサイドメニューの「ユーザー管理」をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-28.png

ユーザーを選択し、「編集」をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-29.png

ルーティングプロファイルのキューはルーティングプロファイルの編集画面から確認できます。

まずはサイドメニューの「ルーティングプロファイル」をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-30.png

ルーティングプロファイル画面から確認したいルーティングプロファイルをクリックします。

画像に alt 属性が指定されていません。ファイル名: image-31.png

ルーティングプロファイルのキューから、追加されているキューが確認できます。

画像に alt 属性が指定されていません。ファイル名: image-32.png

次に、問い合わせフローに電話番号を設定します。

サイドメニューの「電話番号」をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-33.png

表示される電話番号の中から、設定したい電話番号をクリックします。

画像に alt 属性が指定されていません。ファイル名: image-34.png

問い合わせフローを設定し、「保存」をクリックすることで電話番号を設定できます。

画像に alt 属性が指定されていません。ファイル名: image-35.png

設定した電話番号に電話をかけると、冒頭の挨拶アナウンスが流れた後に「より良いサービスを提供するために、10秒間だけゆっくりお話しください。」と、アナウンスが流れます。

この10秒間で顧客IDを照らし合わせて、架電の人が登録されているのかを判断します。

登録がない場合は[声紋の登録]、登録がある場合は[顧客の確認]を行います。

10秒の時間については、他に「あなたの住所をゆっくり話してください」等と事前にアナウンスを流すことで、10秒間の音声を取るようにするのがよいかと思います。

■声紋の登録

初めて電話をした時に顧客の声紋が登録されます。顧客が電話して登録がないと、電話口で「ボイスIDに登録がありません。登録を依頼してください。」というアナウンスが流れます。もちろん、顧客は登録を拒むことは可能です。この場合は、エージェントに「登録を断る」旨を伝えればいいのです。

(1)通話の受信

さて、エージェントはコンタクトコントロールパネルで[通話を受信]をクリックし、電話を受信します。

画像に alt 属性が指定されていません。ファイル名: image-36.png

(2)声紋の登録

コンタクトコントロールパネルでは、[Voice ID:未登録][不正リスク:*リスク][登録する]ボタンが表示されます。

なお、少し時間をおいて”不正のリスク:低リスク”に変わりました。

次に、会話の最中に[登録する]ボタンをクリックしますと、登録が開始されます。

なお、顧客が登録を断った場合は、[オプトアウト]をクリックします。

オプトアウトとは

個人情報を登録する行為などを、対象者(顧客)がこれを登録を拒否したり、情報などの抹消などを申し出ることをいいます。

画像に alt 属性が指定されていません。ファイル名: image-37.png

(3)登録待ち

[登録する]ボタンをクリックすると、30秒間の通話で登録が進むか、または、通話が終了するまで登録の処理が行われます。(登録されるまで[音声サンプリング]と表示されクルクル回っています)

画像に alt 属性が指定されていません。ファイル名: image-38.png

(4)登録完了

ここで登録が完了すると、[Voice ID:登録済み]と表示されます。

これで、声紋の登録は完了したので、いったん通話を切ります。

画像に alt 属性が指定されていません。ファイル名: image-39.png

次は、再度、電話をかけて「顧客の確認」を行います。

■顧客の確認

実際に再度、電話をかけて[顧客の確認]を行ってみます。

設定した電話番号に電話をかけてみると、最初の電話と同様に「より良いサービスを提供するために、10秒間だけゆっくりお話しください。」のアナウンスが流れたので、10秒間ゆっくりと話してみました。

すると今度は、顧客の電話口では「認証済みです」とアナウンスが流れました。登録は上手くいったようです。

次に、エージェントのコンタクトコントロールパネルはどのようになっているのかといいますと、[Voice ID:認証済み]と表示されています。

画像に alt 属性が指定されていません。ファイル名: image-40.png

成功です。声紋の登録から顧客の確認まで上手くいきました。

さて、気になるのはAmazon Connect Voice IDの利用料金ですが、

料 金

新しい機能を導入するにあたり、無視することができないのが利用料金です。

Amazon Connect Voice IDでは、トランザクション数に応じて課金されます。

利用料金も比較的安価ですので、手軽に試すことができます。

価格

・1トランザクションあたり 0.0025 USD

 ※Voice ID の顧客登録、顧客の確認 がトランザクションにあたります

料金例1

100 人の顧客を登録し、月に 2000 人の発信者の本人確認のために Voice ID を起動した場合

・月間トランザクション数 = 100 + 2,000 = 2,100

・総コスト = 2,100 × 0.025USD = $52.5 USD

料金例2

一括登録を利用して Amazon Connect Voice ID に発信者を登録していないと仮定します。

月間 500 回の通話を行い、発信者を登録するか、その月の以前の通話で登録されていた場合は発信者の ID を認証します。さらに、各通話に不正がないかどうかもチェックします。

[請求総額の計算]

・総トランザクション数 = 1,000  (不正) + 1,000  (登録/認証) = 2,000

・当月の合計コスト = 2,000 × 0.025 USD = 50 USD

詳細は https://aws.amazon.com/jp/connect/pricing/ を参照してください。

最後に

サンプルのコンタクトフローを利用しての導入でしたが、思っていたよりも簡単に導入することができました。

Amazon Connect Voice IDを使うことで簡単に本人確認ができますし、不正行為者の検出で不正リスクの低減につなげることができるので、コールセンターの機能としてかなり使えそうです。

個々人の声紋を利用して本人確認を行っていくことは、画期的なサービスだと思います。

また、本人確認で幾多の質問に答えるという煩わしいプロセスの必要もありませんので、顧客体験からも良いサービスです。

Contact Lens for Amazon ConnectやCustomerProfileと合わせて、いろいろな場面で利用できると思われます。 例えば、

①コールセンターや金融機関などでの本人確認や詐欺目的の問合せでパスワードなどを不正に聞き出そうとする電話の検出

②予約システムや注文受付システムなどでの本人確認にも利用できます。

③一般企業では、代表電話等に掛かってきた電話口の顧客の確認。

顧客を確認して担当者に自動転送したり、確認できない顧客から電話がある旨の通知、営業電話やクレーマーなどの察知・切断などで利用可かなと思います

④Contact Lens for Amazon Connectと合わせて利用すると、利用者の心理状況も声から認識し、例えば、誰かに脅迫されながら電話をしている場合も察知できるのではないかと思われます。

などで利用できるのではないかと思われます。

今回は以上です。