← 一覧に戻る
🚨
ビジネス(開発部)

claim-triage-ai

コールセンターやカスタマーサポート窓口に届いたクレーム文(メール本文、電話対応メモなど)をそのまま貼り付けると、AI(Gemini)が「緊急/高/中/低」の4段階で緊急度を即座に判定し、クレームのカテゴリ分類と、担当者がそのまま使える初動対応の返信文案までその場で提案するWebアプリ。緊急度が高いクレームはSLA目安(緊急:15分、高:60分)を超えて未対応のまま放置されていないかダッシュボードで常に可視化される。

実際のアプリを開く ↗

保存場所: C:\Users\utsus\Desktop\AIの作業場\claim-triage-ai\apps\web

なぜ作ったか

クレーム対応の現場でよくある「一次受付の担当者が緊急度を見誤り、実は深刻なクレームが後回しにされる」という失敗を防ぐために作った。特に「丁寧な言葉遣いで書かれているが内容は深刻」なクレームを、経験の浅い担当者ほど低く見積もりがちという課題に対して、AI判定であれば表現の丁寧さに惑わされず内容そのもので緊急度を評価できる。QA(品質保証)観点で「緊急なクレームを低優先度に誤判定することが最も避けるべき失敗」という設計方針を明確に持たせて作り込んだ。

どういう場面で使うか

コールセンターやカスタマーサポート部門で、日々大量に届くクレームメール・電話対応メモ・フォーム問い合わせ・SNSでの指摘などを一次受付する場面。特に、休日明けや繁忙期などクレームが溜まりやすいタイミングで「どれから対応すべきか」を人の目だけで仕分けるのが追いつかない時に、AIが緊急度順に並べ替えて見せてくれる。

自動化されているポイント

  • クレーム文を送信すると、Gemini(gemini-flash-latest)がその場で緊急度・カテゴリ・初動対応の返信文案の3つを自動生成する
  • Gemini呼び出しがタイムアウト(8秒)・APIエラー・不正なレスポンスなどで失敗した場合、サイレントに機能停止せず、キーワードベースの判定ロジックへ自動フォールバックする。フォールバック時は「訴訟」「弁護士」「炎上」「消費者庁」「アレルギー反応」など法的リスク・拡散・身体的危険を示す語を最優先でcriticalに倒し、どの語にも一致しない場合も楽観的に「低」とはせず安全側の「中」をデフォルトにする設計
  • 緊急度が「緊急」または「高」のクレームは登録と同時に通知キューへ自動登録され、バックグラウンドワーカー(scripts/notify-worker.mjs)がポーリングして通知処理を行う
  • ダッシュボードは緊急度別の件数を自動集計し、SLA目安(緊急:15分/高:60分)を超えて未対応のまま放置されているクレームを自動検出して警告バナーを表示する
  • クレーム一覧は「緊急度が高い順、同じ緊急度なら新しい順」に自動で並べ替えられる

営業として売る場合の訴求ポイント

  • 「深刻なクレームの見落とし」は企業にとって信用問題・法的リスクに直結するため、AI判定による一次スクリーニングは特にカスタマーサポート部門の管理者に刺さりやすい
  • AIが止まってもキーワードフォールバックで判定を継続する設計のため、「AIが使えない時にクレーム対応が完全に止まる」という導入担当者が最も不安に思う点をあらかじめ潰してある
  • 初動対応の返信文案まで自動生成されるため、経験の浅い新人担当者でも一定品質の一次返信をすぐに送れるようになる教育コスト削減効果も訴求できる

使い方(画面の流れ)

①クレーム文をそのまま貼り付けて登録する。

クレーム登録画面(架空のクレーム内容)

受付チャネル(メール/電話メモ/フォーム/SNS/その他)を選び、クレーム本文をテキストエリアに貼り付けて送信するだけ。送信すると同時にAIが緊急度判定を開始する。

②AIが緊急度・カテゴリ・初動対応文案を自動で提案する。

クレーム詳細・AI判定結果画面(架空のクレーム内容)

判定された緊急度バッジ、自動分類されたカテゴリ、そのまま使える初動対応の返信文案が表示される。緊急度が高いクレームは通知キューに自動登録され、送信状況もこの画面で確認できる。ステータス(未対応/対応中/解決済み)もその場で切り替え可能。

③ダッシュボードで緊急度別の件数と対応遅延を一目で確認する。

ダッシュボード画面(架空データ)

緊急/高/中/低それぞれの件数が自動集計され、SLA目安を超えて未対応のまま放置されているクレームがあれば警告バナーで知らせてくれる。最近のクレームは緊急度順に並び、対応の優先順位が一目でわかる。

README原文を見る →