Media > AI活用ユースケース > カスタマーサポート > クレーム電話の応対練習でAIに顧客役をさせ、振り返りまで行う

クレーム電話の応対練習でAIに顧客役をさせ、振り返りまで行う

実装ステータス:構成例 技術的に実現可能な構成として設計したもの。自社未検証

クレーム電話の応対研修で、SV(スーパーバイザー)が演じていた顧客役を生成AIに任せます。顧客の状況や怒りの段階を書いた「シナリオカード」と評価の観点表を渡すと、AIが音声で顧客を演じ、根拠の発言を引用した振り返りの下書きまで作ります。SVの時間が、顧客役と口頭の指導から記録の確認に変わります。

サマリー
利用ツール
ChatGPT/Claude/Gemini/Microsoft Copilot
対象業界
EC/保険/宿泊
対象部門
カスタマーサポート/人事
対象業務
内容確認・チェック/問い合わせ対応
主な課題
人手が足りない/属人化している
AIで行う処理
対話
主な効果
品質標準化/工数削減/教育コスト削減
導入難易度
★☆☆☆☆
実装レベル
最小構成
費用感
既存ツールのみ(小)
人間の確認
必須
現在工数
40h/月
AI導入後
10.7h/月
想定削減
73%
年間削減
352h
モデル条件による試算値です。実在企業の実績ではありません。

01導入前 / 導入後の業務フロー

導入前(Before)
  1. SVが自分の空き時間と新人の研修枠を合わせて、ロールプレイの時間を決める
  2. SVがその回のクレームの設定を頭の中で決める(多くは自分が過去に受けた電話が元になる)
  3. SVが顧客役になり、新人と15分の通話練習をする
  4. SVは演じながら、新人の言い回しで気になった点をメモする
  5. 通話後、SVが口頭で15分フィードバックし、研修記録表に所感を書く
導入後(After)
  1. SVがシナリオカードと観点表を作り、新人ごとのプロジェクトに入れる(入社時に1回)
  2. 新人が新しいチャットを開き、練習するシナリオ番号を文字で送る
  3. 自動AIがカードに沿って、音声で顧客を演じる
  4. 自動新人の応対に応じて怒りの段階を上げ下げし、条件を満たしたときだけ隠れた要望を話す
  5. 新人が「練習を終了します」と言って音声会話を閉じ、同じチャットで評価を依頼する
  6. 自動観点ごとに判定し、根拠の発言を書き起こしから引用し、言い換えの例を付ける
  7. 新人が評価の要約を練習記録シートに1行で貼る
  8. SVがシートとチャットを読み、要点だけをコメントする
各工程の詳しい説明を読む
  1. SVが自分の空き時間と新人の研修枠を合わせて、ロールプレイの時間を決める
  2. SVがその回のクレームの設定を頭の中で決める(多くは自分が過去に受けた電話が元になる)
  3. SVが顧客役になり、新人と15分の通話練習をする
  4. SVは演じながら、新人の言い回しで気になった点をメモする
  5. 通話後、SVが口頭で15分フィードバックし、研修記録表に所感を書く

問題は4つあります。

(a)練習回数が確保できない。 SVはエスカレーション対応を抱え、入電の多い時期はロールプレイを組めません。

(b)顧客役の演じ方がSVによって違う。 すぐ納得する客を演じるSVも、最後まで怒り続けるSVもいます。

(c)評価の観点がそろっていない。 言葉づかいを見るSVと、エスカレーションの判断を見るSVがいます。

(d)指摘の根拠が残らない。 どの発言が問題だったのかを、新人が後から確かめられません。

  1. 【人】 SVがシナリオカードと観点表を作り、新人ごとのプロジェクトに入れる(入社時に1回)
  2. 【人】 新人が新しいチャットを開き、練習するシナリオ番号を文字で送る
  3. 【自動】 AIがカードに沿って、音声で顧客を演じる
  4. 【自動】 新人の応対に応じて怒りの段階を上げ下げし、条件を満たしたときだけ隠れた要望を話す
  5. 【人】 新人が「練習を終了します」と言って音声会話を閉じ、同じチャットで評価を依頼する
  6. 【自動】 観点ごとに判定し、根拠の発言を書き起こしから引用し、言い換えの例を付ける
  7. 【人】 新人が評価の要約を練習記録シートに1行で貼る
  8. 【人】 SVがシートとチャットを読み、要点だけをコメントする

自動化されるのは「顧客を演じる」「発言を観点に当てはめる」の2つです。残るのは「指摘が合っているか」「次に何を意識させるか」の判断です。

02今回想定するシステム構成

構成図
[SV]シナリオカード・観点表の原本(共有ドライブで版管理)
   │
   ▼ ① 新人の入社時に、新人ごとのプロジェクトへ入れる
ChatGPT プロジェクト「応対練習_新人A」(メンバーはSVと新人Aの2名)
   │   ・指示欄 … 顧客役と評価者の役割ルール、開始と終了の合図
   │   ・ファイル … シナリオカード(1シナリオ1ファイル)、観点表
   │
   ▼ ②【新人】シナリオ番号を送り、音声会話を始める
音声会話(AIが顧客役、新人が窓口担当)
   │
   ▼ ③ 音声会話を閉じると、書き起こしがチャットに残る
同じチャットで評価を依頼
   ├──▶ 観点ごとの判定 + 根拠の発言の引用 + 言い換えの例
   └──▶ 顧客役として設定から外れた発言の自己申告
   │
   ▼ ④【新人】評価の要約を1行転記
練習記録シート ──⑤【SV】チャットとシートを読んでコメント
役割想定する製品代替候補
生成AIChatGPT(プロジェクト、音声会話)Claude、Gemini、Microsoft 365 Copilot
記録Google スプレッドシートMicrosoft Excel
原本の保管Google ドライブSharePoint、Box

GPTs ではなくプロジェクトで組みます。 OpenAI は GPTs の提供終了を予定し(Enterprise は2026年12月11日。ほかのプランも続く可能性があります)、置き換え先のプラグインには音声会話の Live が当初対応しないとされています。

プロジェクトは新人1名につき1つ作り、SVと本人だけを入れます。 共有プロジェクトではメンバー全員がチャットを見られるため、同期をまとめると失敗した練習がお互いに見えます。新人の権限は「チャット」にし、指示とファイルを変更できる「編集」は付けません。

代替候補でも、Claude のプロジェクト、Gemini の Gem、Microsoft 365 Copilot のエージェント(指示は8,000文字まで)に指示とファイルを置く同じ形で組めます。ただし Gem は Gemini Live では使えないと案内されており、Claude と Copilot で音声の練習ができるかは利用環境に応じた個別確認が必要です。本格構成の音声基盤(第9章)は、最小構成で使わないため表に入れていません。

03どうやって実装するのか

Step1

処理の起点を決める

新人が新しいチャットを開き、シナリオ番号を送ったことを起点にします。定時実行はしません。1回の練習は1チャットにします。 同じチャットで2本目を始めると、前の設定と会話が混ざり、評価の引用も取り違えます。

SVが読む「提出回」は1人月10回と決めます。それ以外の自主練習は自由で、SVは読みません。

Step2

入力データを集める

AIに渡すのは4つです。指示欄に置く役割ルール(顧客役と評価者のルール、開始と終了の合図)、ファイルとして置くシナリオカード(1シナリオ1ファイル)と評価の観点表、音声会話を閉じたあとにチャットへ残る書き起こしです。

シナリオカードの項目

項目書く内容例:配送の遅れ(CS-03)
顧客の状況事実だけ。ない事実も「ない」と書く5日前に注文。届く予定は昨日。過去の遅延はない
人物像と話し方年代、口調、速さ、遮るか60代。早口。説明の途中で遮る
開始時の怒りの段階5段階から選ぶ段階4
表向きの要望最初に言う要求「今日中に届けて」
隠れた本当の要望理由を尋ねられるまで言わない明後日の法事で配る品で、間に合う方法を知りたい
態度を和らげる条件何をされたら1段階下げるか不便へのお詫び/届け先と日付の復唱
怒りが上がる条件何をされたら1段階上げるか「規則ですので」/配送業者のせいにする
新人が言うべきこと社内の応対基準から写す配送状況の確認、今日中は約束できないことの説明、代わりの手段
言ってはいけないこと同上配達日時の約束、返金の独断での約束
エスカレーションの条件上位者に引き継ぐ状況「上の者を出せ」と2回言われた/補償を金額で求められた
会話を終える条件役を降りる合図次の連絡方法に同意した/新人が「練習を終了します」と言った

怒りの段階は全カード共通にします。1=困っている(落ち着いて説明)、2=不満(ため息が混ざる)、3=怒り(同じ要求を繰り返す)、4=強い怒り(説明を遮る)、5=引き継ぎを求める(「責任者を出して」)。段階ごとの話し方まで書くと、演じ方がそろいます。

評価の観点表(ルーブリック)

ID観点「できた」の基準
A1最初のお詫びの範囲事実確認の前は不便へのお詫びにとどめ、原因を認めていない
A2事実確認の順序本人確認 → 注文の特定 → 起きていることの確認、の順で聞いている
A3復唱要望と日付・届け先を復唱している
A4できない約束をしない配達日時、返金、補償を確認なしに約束していない
A5隠れた要望への到達要求の理由を質問で聞き出している
A6エスカレーションの判断条件を満たしたら引き継ぎ、満たさないのに早く引き継いでいない
A7クロージング次に誰が、いつ、どう連絡するかを伝え、名乗っている

判定は「できた/一部できた/できていない/判定できない」です。合計点は出しません。 点数にすると新人同士の比較や人事評価に流用されやすいためです。

Step3

データの取得方法を決める

シナリオカード: SVが過去の応対記録からクレームの「型」だけを抜き出し、架空の設定として書きます。通話の書き起こしをそのまま貼ることはしません。最初は件数の多い型から5本で足ります。

プロジェクトへの配置: SVがプロジェクトを作り、指示欄とファイルを設定して新人を招待します。Business・Enterprise・Edu は1プロジェクト40ファイルまでで、招待できるのは同じワークスペースのメンバーだけなので、派遣社員などのアカウント発行を先に確認します。

書き起こし: 音声会話はチャットの中で行われ、閉じると書き起こしがチャットに追加されます。通話録音システムから取り込む必要はありません。

Step4

AIへ渡す前に整形する

  1. 架空化の確認 … 実在の氏名、電話番号、注文番号、日付と地域の組み合わせが残っていないかを見ます
  2. 項目をそろえる … 項目が抜けたカードでは、AIが空欄を推測で埋めて演じます
  3. 版番号を付ける … 「CS-03_配送遅延_v2」とし、評価の記録にも版を残します
  4. 役割ルールは指示欄に書く … 音声会話中にファイルがどこまで参照されるかは公式情報に記載がないため、ルールと終了の合図は指示欄に置きます
Step5

AIに処理させる

処理内容
顧客を演じるカードの人物像と話し方で、電話してきた顧客として話す
段階を動かす条件に当たったときだけ、怒りの段階を1つずつ上下させる
役を保つ終了の合図まで助言をしない。カードにない事実を作らない
評価する観点ごとに判定し、根拠の発言を書き起こしから引用する
言い換えを示す「できていない」観点に、次に使える言い回しを1つ付ける
自己申告する顧客役として設定から外れた発言を列挙する

「根拠の発言を引用させる」ことが評価の品質を決めます。 引用のない判定は、SVが確かめようがありません。

Step6

指示内容を固定する

あなたはコールセンターの新人研修で使う、応対練習の相手です。

【開始】
- 「CS-03で練習を始めます」と送られたら、その番号のカードだけを使います。
- カードの中身(隠れた要望、各条件)を新人に説明しないでください。

【顧客役】
- カードの人物像・話し方・開始時の段階で、電話してきた顧客として話します。
- カードにない事実を作らないでください。答えられないことは「わからない」と答えます。
- 怒りの段階は、条件に当たったときだけ1段階ずつ動かします。
- 隠れた要望は、新人が理由や事情を尋ねるまで言わないでください。
- 強い口調は段階表の範囲までです。人格を否定する言葉、差別的な表現、
  性的な発言、脅迫は使わないでください。
- 「練習を終了します」と言われるまで、役を降りて助言しないでください。

【評価者】(「評価してください」と送られたら切り替える)
- 観点表のA1〜A7ごとに「できた/一部できた/できていない/判定できない」で判定します。
- 判定ごとに、根拠の発言を書き起こしから話者付きでそのまま引用します。
  引用できない観点は「判定できない」とし、推測で判定しないでください。
- 合計点や順位は出さないでください。
- 顧客役として設定から外れた発言があれば、すべて列挙してください。

「引用できなければ判定できないとする」の1行が重要です。 これがないと、AIは会話全体の印象で「できた」と判定します。

Step7

出力形式を固定する

観点ごとの表に続けて、次のまとめを出させます。

{
  "scenario_id": "CS-03",
  "card_version": "v2",
  "criteria": [
    {
      "id": "A1",
      "level": "できた | 一部できた | できていない | 判定できない",
      "evidence": [{ "speaker": "新人", "quote": "" }],
      "better_phrase": ""
    }
  ],
  "role_deviations": [],
  "next_focus": "",
  "sheet_row": ""
}

sheet_row は日付・シナリオ・A1〜A7の判定をカンマ区切りにした1行で、新人がそのままシートに貼ります。role_deviations が空でない回は、新人より先にカードと指示を見直します。

Step8

システムへ連携する

最小構成では連携しません。 SVはプロジェクトを開けば新人のチャットを読めます。新人は sheet_row を練習記録シートに貼り、SVはシートのコメント列に書きます。共有プロジェクトのチャットは複数人で同時に書き込む使い方ができないため、コメントはチャットではなくシートに書きます。

Step9

人が確認する

提出回は全件SVが読みます。 8分で読み切るため、見るのは次の3点に絞ります。

  • A4(できない約束)とA6(エスカレーション) … 本番で誤ると損失や二次クレームになる観点です。「できた」でも引用を読んで確かめます
  • 引用の実在 … 1回につき1か所、書き起こしと突き合わせます
  • role_deviations … 顧客役が設定から外れた回の判定は参考扱いにします

書き起こしは実際に話した言葉と完全には一致しないと公式に案内されています。新人が「その言い方はしていない」と申し出た観点は「判定できない」に直します。声のトーンや間は表れにくいため、月1回は対面の振り返りを残すことを推奨します。

Step10

例外に対処する

起きること対応
音声会話が途中で切れた利用上限や会話の長さの上限で終わることがある。文字で続けるか、提出回に数えない
AIが役を降りて助言を始めた指示の終了ルールを確認し、その回は提出回に数えない
顧客役が差別的な表現や人格を否定する発言をした新人はその場で終了し、チャットを残してSVへ報告する。SVは直すまでそのカードを使わない
新人が強いストレスを訴えたいつでも止めてよいと事前に伝え、次回は開始時の段階を下げる
評価がほぼ全部「できた」になるSVも同じ記録を評価し、ずれた観点の基準文を直す
音声会話が使えないワークスペースで音声が無効だとプロジェクト内でも使えない。文字で練習するか管理者に相談する
新人が提出回のチャットを削除した共有プロジェクトでは他のメンバーからも見えなくなる。研修中は削除しないルールにする
Step11

記録を残す

  • チャット(書き起こしと評価) … プロジェクト内に残り、保存期間はワークスペースの設定に従います。音声クリップは書き起こしとともに30日間保持されると案内されています
  • 練習記録シート … 日付、新人、シナリオと版、観点ごとの判定、SVのコメント
  • カードの版の履歴と、顧客役の不適切な発言の報告

シートでは観点ごとの「できていない」の件数を見ます。A6 が研修の後半まで残る新人が多ければ、個人ではなく教え方の問題の可能性があります。

04実装レベルの3段階

最小構成:新人ごとの共有プロジェクトで音声練習し、同じチャットで評価。新人が1行をシートに貼る / 顧客役と評価の下書き
半自動化:評価の1行をフォームから送らせて記録シートに集め、関数で新人別・観点別の「できていない」を一覧にする / 顧客役、評価の下書き、記録の一覧化
本格構成:Realtime API で社内の練習画面を作り、音声会話、新人の発言の文字起こし、評価、記録の保存、SV用の一覧までをつなぐ / SVのコメント以外のほぼすべて

多くのコールセンターでは、最小構成か半自動化で十分です。 本格構成が見合うのは、新人が月数十名以上いる場合や、実際の電話機で練習させたい場合です。 本格構成では、Azure OpenAI(Microsoft Foundry)の GPT Realtime API か、OpenAI の Realtime API を音声基盤にする構成が考えられます。

  • 接続 … 低遅延の音声会話向けで、WebRTC や WebSocket で接続します(Azure は電話向けの SIP も案内)。端末に直接つながる設計ではないため、練習画面側の音声処理は自社で作ります
  • 設定session.update で指示(カードと役割ルール)、声、話し終わりの判定を指定します。semantic VAD は利用者の話を遮りにくいとされるため、遮る顧客を演じさせたいなら方式を試して選びます
  • 記録と評価 … 新人の音声の文字起こしは設定で有効にします(1セッション60分まで)。評価は会話後に別の呼び出しで行い、顧客役と評価者の指示を混ぜません

05工数削減シミュレーション

前提値(モデル条件)
対象人数
3 名
月間件数
80 件
1件あたり現在時間
30 分
1件あたり導入後時間
8 分
現在  80件 × 30分 ÷ 60 = 40 時間/月
導入後 80件 × 8分 ÷ 60 = 10.7 時間/月
月間削減時間
29.3h
削減率
73%
年間削減時間
352h
年間金額換算(時間単価3,000円)
106万円
モデル条件による試算であり、実際の効果は業務内容・運用方法によって異なります。

自社条件で導入効果を整理したい方へ

このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。

AI活用について相談する

06向いている企業・向いていない企業

向いている
  1. 電話窓口に新人が毎月入り、SVやトレーナーが顧客役になってロールプレイ研修をしている企業。謝罪の範囲、回答してはいけない事項、エスカレーションの条件などの応対基準が文書になっていること。ChatGPTなどの業務用プランを契約済みで、新人にもアカウントを発行できること。
向いていない
  1. 新人の入社が年に数名で、SVが顧客役をしても負担にならない場合。応対基準が文書になっておらず、SVごとに正解が違う場合(先に基準をそろえるほうが効果が大きい)。新人に業務用の生成AIアカウントを発行できない場合。

07最小構成で試す方法

  1. 件数の多いクレームの型を1つ選び、カード1枚と観点表を作る
  2. ChatGPT でプロジェクトを作り、第7章の指示を指示欄に、カードと観点表をファイルに入れる
  3. SV自身が新人役になり、応対をわざと変えて音声で3回練習する(丁寧に謝る/規則を盾にする/すぐ上位者に回す)
  4. 3回とも評価を出させ、判定と引用を確認する
  5. SV3名が同じ書き起こしを各自で評価し、AIの判定と並べる

手順3は必ずやってください。 顧客役として使えるかは、応対に応じて態度が変わるかで決まります。

状態判断
応対の違いで段階が変わり、引用が書き起こしと一致する新人2名での試行に進む
隠れた要望をすぐに話してしまう話してよい条件を行動で具体的に書き足す
カードの設定が音声会話に反映されない使うカード1枚分を指示欄に直接書いて再試行する
SV3名の評価が互いに大きくずれるAIより先に観点表の基準文を直す

SV同士でそろわない基準は、AIに渡してもそろいません。

08実装時につまずきやすいポイント

問題対策
顧客役がすぐ納得する和らげる条件に回数を書く(「お詫び1回では下げない」)
どう応対しても怒り続ける条件を行動で書く(「復唱されたら1段階下げる」)
隠れた要望を最初から話す「理由を尋ねられるまで言わない」を指示とカードの両方に書く
声が人物像と合わない声は設定画面で選び、会話中に変えると新しい通話になる。人物像は速さと口調で表す
周囲の声を拾って会話が乱れる音声会話は1対1が前提。研修室かヘッドホンで練習する
評価の引用が実際の発言と違う書き起こしは逐語記録ではない。申し出た観点は「判定できない」に直す

09セキュリティ・AIガバナンス上の注意点

この構成で扱うデータ: 架空のシナリオカード、社内の応対基準、新人の練習の書き起こしと評価。実際の顧客情報は扱わない設計ですが、練習記録は新人本人の情報です。

  1. 実際の顧客の通話や個人情報を使わない … 通話録音は型を抜き出す材料にとどめ、氏名や注文番号は架空にします。珍しい商品・地域・日付の組み合わせは、名前がなくても本人の特定につながります
  2. AIの評価を人事評価に直結させない … 判定は振り返りの下書きで、本番の応対品質との関係を確かめた基準ではありません。修了判定や契約更新に直接使わないでください。 これを最初に伝えないと、新人は難しいカードを避けます
  3. 顧客役の不適切な発言 … 口調の上限を段階表で決め、差別的な表現や人格否定を指示で禁じます。起きたら練習を止めてSVに報告し、カードと指示を直し、新人への声かけも行います。 カスタマーハラスメントへの社内方針があれば、練習でもそれに合わせます
  4. 学習利用 … ChatGPT Business・Enterprise・Edu では、プロジェクトの情報を既定で学習に使わず、音声クリップも学習用に共有できないと案内されています。個人向けプランのアカウントで練習させないでください
  5. 自動実行してよい範囲 … AIが行うのは顧客役と評価の下書きまでです。指摘の確定と、本番の電話を任せる判断は人が行います

特に「できない約束」と「エスカレーションの判断」をAIが誤って「できた」とすると、誤った型が本番の二次クレームにつながります。この2観点は、運用が安定してもSVの確認を外さないでください。

10まず何から始めるか

1週目:カード1本と観点表を作り、SVが自分で試す

件数の多いクレームの型でカードを作り、SVが応対を変えて3回練習します。顧客役の態度が応対に応じて変わるかを確かめます。

2週目:SV3名の評価をそろえる

同じ書き起こしをSV3名が評価してAIの判定と並べ、ずれた観点の基準文を書き直します。

3〜4週目:新人2名で試行する

各5回を提出回として練習してもらい、SVが1回あたり何分で読めているかを実測します。

2か月目以降: カードを5本に増やし、新人全員に広げます。知識の確認は、マニュアルから理解度テストを作る UC-0027 と分けて進めます。


11関連ユースケース

12この仕組みを理解するための記事

13技術仕様の確認日・参考情報

技術仕様確認日:2026-09-14/最終更新:2026-09-14
確認した内容情報源確認日
プロジェクトが全プランで使え、指示とファイルを置けること(Business等は40ファイル)。共有時の閲覧範囲と権限、招待は同一ワークスペース内、チャットは同時に書き込めないこと。プロジェクト内で音声会話が使えること。Business等では既定で学習に使わないことOpenAI Help: Projects in ChatGPT2026-09-14
書き起こしがチャットに追加され、逐語記録ではないこと。管理者による無効化。利用枠(Business Standard は24時間あたり3時間分)。声の選び方と1対1向けであること。音声クリップの30日保持と学習用共有の不可。Live が当初プラグインに非対応であることOpenAI Help: ChatGPT Voice2026-09-14
GPTs の提供終了予定とプラグインへの移行。Enterprise は2026年12月11日に終了予定で、ほかのプランも続く可能性があることOpenAI Help: Custom GPT retirement FAQ2026-09-14
Claude のプロジェクトにナレッジと指示を設定できることClaude Help Center: What are projects?2026-09-14
Gem に指示とナレッジのファイルを設定でき、Gemini Live では使えないことGemini Apps Help: Use Gems2026-09-14
Agent Builder で指示(8,000文字まで)とナレッジを設定できることMicrosoft Learn: Agent Builder2026-09-14
Realtime API の session.update で指示・声・話し終わりの判定を設定でき、1セッションの上限が60分であることOpenAI API: Realtime conversations2026-09-14
WebRTC・WebSocket・SIP で接続し、端末に直接つなぐ設計ではないこと。入力音声の文字起こしの有効化と、semantic VAD が話を遮りにくいことMicrosoft Learn: GPT Realtime API2026-09-14

音声会話中にプロジェクトのファイルがどこまで参照されるか、Claude と Microsoft 365 Copilot で音声の練習ができるかは、確認した公式情報に記載がありませんでした。この部分は利用環境に応じた個別確認が必要です。

実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。

自社の業務に使えるAI活用候補を整理します

このユースケース(UC-0046)についてのご相談はこちらから。

AI活用について相談する
目次