💬

Edge Presence X (EP-X): 3Dアバターとリアルタイム分析によるAI面接コーチ

に公開

デモ動画
https://youtu.be/VAfEVV8Mets

はじめに

大切な面接で緊張し、声が上ずって早口になってしまった経験はないでしょうか?実際、声のピッチ(高さ)や話す速さは聴き手の印象に大きく影響し、ピッチが上がりすぎたり早口になりすぎたりすると信頼感を損ないかねないことが指摘されています[1]。「えー」「あのー」といったフィラー(つなぎ言葉)の多用も、聞き手に不安を与え、プレゼンや面接の評価を下げる要因になりえます[2]。多くの人はこうした欠点を自覚しつつも、本番中にリアルタイムで修正するのは容易ではありません。また従来の面接練習では、録画を後から見返したり同僚に模擬面接を頼むなど、フィードバックが遅く限定的になりがちです。

近年、Otter.aiの会議アシスタントやLinkedInのAI面接準備ツールなど、会話内容を解析して助言するソリューションも登場しています。しかし話し方そのもの(声質・間の取り方・話しぶり)まで総合的に指導してくれるコーチはまだ多くありません。そこで今回提案するのが、Edge Presence X (EP-X) です。EP-Xは3Dアバターとリアルタイム音声解析を駆使し、ユーザーの面接練習に本番さながらの臨場感と即時フィードバックをもたらすAI面接コーチです。

プロジェクト概要

対象ユーザーと課題

  • 対象ユーザー: 就職・転職を控え、面接スキルを向上させたい学生や社会人。オンラインで手軽に模擬面接練習を行いたい方。

  • 抱える課題:

    • リアルタイムで客観的なフィードバックを得る手段がない
    • 緊張すると声が上ずったり早口になるが、自分では気づきにくい
    • 回答が冗長・的外れでも、即座に指摘・修正できない
    • 「えー、あのー」などフィラーの多用や間の悪さを直すのが難しい

ソリューションと特徴

Edge Presence X (EP-X) は上記の課題を解決するために開発されたリアルタイムAI面接コーチです。Google Cloudの先端AI技術をフル活用し、ユーザーの発話内容と話し方をリアルタイムに分析します。主な特徴は次のとおりです。

  • 🎤 リアルタイム文字起こし: Cloud Speech-to-Text API によりユーザーの発話を即座にテキスト化。高精度かつ低遅延で逐次字幕を表示します。
  • 🧠 多角的なAI評価: 最新LLMである Vertex AI Gemini 1.5 Flash を用い、回答の構成(STAR法に沿っているか)、論理性、熱意など複数の観点から内容を包括的に評価します。
  • 💭 感情分析フィードバック: Google Cloud Natural Language API によって発言の感情トーン(ポジティブ/ネガティブ度合い)を解析し、「落ち着いているか」「自信が感じられる声か」を数値化してフィードバックします。
  • 📈 声のトーン解析: マイク音声をローカル解析(PyAudio 使用)し、声の基本周波数(ピッチ)や話速の変化を測定。緊張による声の上ずりや早口傾向を視覚化して指摘します。
  • 📋 総合フィードバック: 上記すべての分析結果を統合し、良かった点・改善点を具体的なアドバイスカードとして提示。強みは伸ばし、弱みはすぐ改善できるよう支援します。
  • 🤖 臨場感ある3Dアバター: フロントエンドで Vue.js + Three.js を用いて3Dアバターを表示。アバターがユーザーの声に合わせて口パクすることで、まるで目の前に面接官がいるかのような臨場感を演出します。緊張感の再現と「一人ではない」安心感に貢献します。

システムアーキテクチャ

上図はEP-Xのシステム構成です。ブラウザ側のVue.js製フロントエンド(3Dアバター表示含む)で取得した音声は、WebRTC経由でGoogle Cloud上のCloud Runバックエンドサービスへストリーミング送信されます。バックエンドでは以下のパイプラインでリアルタイム解析を行い、最終的なフィードバックを生成します。

  1. 音声のテキスト化 – 受信音声をSpeech-to-Text API (ストリーミングモード)に送り、100ms単位で逐次文字起こしします。
  2. パラ言語解析 – 音声データを並行してピッチ解析ワーカーに送り、声の基本周波数や音量、フィラー発話を検出します(Librosaベースの処理を想定)。
  3. 感情分析 – テキスト化された発話文をNatural Language APIに送り、文章全体のセンチメントスコア(感情のポジティブ/ネガティブ度合い)を算出します。
  4. 内容評価 – 同じテキストをVertex AI Gemini(大規模言語モデル)に送り、回答内容の構造や適切さを評価します。例えば「STAR法の各要素(Situation, Task, Action, Result)が含まれているか」「質問の意図に沿った回答になっているか」等をスコアリングします。
  5. フィードバック統合 – バックエンドでは上記複数エージェント(音声文字起こし・ピッチ解析・感情分析・内容評価)からの結果を統合し、総合評価結果(JSON)を生成します。各項目の評価値に応じて「良好 (Green)/注意 (Yellow)/要改善 (Red)」の3段階でフラグを立て、改善ポイントのメッセージも付加します。
  6. 結果表示 – 統合結果はブラウザに送り返され、ユーザー画面上でダッシュボード表示されます。音声入力中は逐次字幕や簡易な警告シグナルを表示し、セッション終了後に最終評価カードを提示します。評価カードにはスコアに応じたカラーリングと具体的アドバイスが含まれます。

なお、解析結果のログは将来的にFirestoreに蓄積し、セッションごとの履歴管理や上達度のトラッキングに活用する計画です。また本システムはWebアプリ単体だけでなく、Zoom/Google Meet等のビデオ通話とピクチャ・イン・ピクチャ (PIP) オーバーレイで併用するChrome拡張の開発も視野に入れています(オンライン会議中に自分だけコーチ画面を重ね表示するといった使い方)。

デモの流れ

実際のEP-Xの使用イメージを、デモ動画の流れに沿って紹介します。3分程度の模擬面接セッションで以下のように動作します。

  1. セッション開始 – Webアプリにアクセスし、「面接を開始する」ボタンをクリックします(ローカル実行の場合は npm run dev で起動し、表示されたURLにアクセス)。ブラウザからマイク使用許可を求められるので「許可」をクリックしてください。
  2. 音声入力 – マイクの許可後、面接セッションが開始します(ボタン表示が「面接を終了する」に変化し赤色に点灯)。質問者役のアバターが画面に現れますので、想定質問に対する回答を自由に話してみましょう。話し始めると同時に3Dアバターが口パクを開始し、あなたの声に合わせて動きます。臨場感はありつつも、相手はAIなので恥ずかしがる必要はありません。
  3. リアルタイム文字起こし – 話している最中から、画面左側パネルにあなたの発話内容がリアルタイムで文字起こし表示されていきます。例えば「自己紹介」を話し始めると、「私の名前は〜」と逐次テロップ表示されるイメージです。話しながら自分の回答内容を確認できるため、言い淀みや要点漏れにもその場で気付きやすくなります。
  4. セッション終了 – 回答を終えたら「面接を終了する」ボタンをクリックします。ボタンが灰色に変わり、録音が停止されます。終了後、バックエンドでAI評価処理が行われる間、数秒間の待機画面が表示されます。
  5. AI評価結果の表示 – 数秒後、画面右側にAIによる評価結果カードが表示されます。ここには回答内容に対するスコアとフィードバックがまとめられています。例えば「構成: 4/5」「論理展開: 3/5」「熱意: 5/5」といった評価点が示され、それぞれに応じたコメントが記載されます。またカードの背景色は総合スコアに応じて**緑(良好)・黄(注意)・赤(要改善)**のいずれかに変化します。初めは赤や黄が出ても、練習を重ねて緑のカードを目指しましょう。
  6. 具体的なフィードバック – 評価カードには総合コメントに加え、改善のための具体的アドバイスも表示されます。例えば「声のトーンをもう少し抑え落ち着いた話し方を意識しましょう」「質問の意図に沿った結論を先に述べると効果的です」など、次回の面接回答に活かせるポイントが提示されます。このアドバイスを参考に、再度1〜5のステップを繰り返すことで短時間で効果的に面接力を磨けます。EP-Xなら1回あたり数分でPDCAサイクルを回せるため、忙しい方でもスキマ時間に繰り返し練習することが可能です。

技術アプローチと工夫

EP-Xの開発にあたっては、リアルタイム性多角的評価を両立するための様々な工夫を行いました。

  • 低レイテンシ実現のための設計: 音声解析→フィードバック表示までの遅延を300ms以内に抑えることを目標に、システムを設計しました。クラウドバックエンドにはイベント駆動・並列処理が可能なCloud Run (Python + FastAPI) を採用し、音声ストリームを受信すると同時に複数の解析エージェントに分配しています。GoogleのSTTはgRPCストリーミングで逐語音声認識を行い、最終発話文が確定する前から下流処理を走らせています。ピッチ解析は軽量なライブラリでバックエンド内でリアルタイム実行し、LLM評価に要する数秒程度以外はほぼ並行動作するよう最適化しています。その結果、ユーザーが話し終えてからフィードバック表示までの待ち時間を最小限(数秒程度)に抑えることができました。

  • 複数AIエージェントの協調: 本システムは音声テキスト化、ピッチ解析、感情分析、内容評価という専門特化したエージェントが協調するアーキテクチャを取っています。それぞれの役割に最適なサービス・モデルを組み合わせることで、効率と精度のバランスを取りました。例えばフィラー検出には音声波形から特徴抽出するPythonモジュールを用い、内容評価には事前学習された大規模言語モデルの推論能力を活用しています。また最終統合のロジック(オーケストレーター)では、各エージェントの結果を基に「どの項目でユーザーは優れており、どこを改善すべきか」を判断するルールを実装しました。これにより、単一のAIでは見落としがちな多面的評価を実現しています。

  • LLMの評価活用: Vertex AIのGeminiモデル(1.5 Flash)は通常テキスト生成に用いられますが、EP-Xではユーザー回答の採点者として活用しています。プロンプト設計を工夫し、「与えられた回答を分析し、構造・内容・表現の観点で5段階評価と具体的な改善アドバイスを出力せよ」と指示することで、人間コーチさながらのフィードバックを生成します。LLMには社内の想定質問と模範解答のデータでファインチューニングを行い、特に日本語面接で有用な評価軸(例えば「結論が明確か」「根拠に具体性があるか」など)に沿って判定できるようにしました。このように生成AIを評価者として役立てるアプローチは、AIエージェントならではの特徴と言えます。

  • 3DアバターによるUX向上: 面接の緊張感を再現しつつユーザーの孤独感を和らげるため、フロントエンドで3Dアバター表示を取り入れました。Three.jsでレンダリングした人型アバター(VRMフォーマット)に対し、Web Audio APIで取得したマイク音声の音量レベルから口の開閉を制御しています。さらに待機モーションアイコンタクトの簡易アニメーションも実装し、画面に人の存在を感じられる工夫をしています。これにより、「AI相手でも誰かに見られている」という適度な緊張感が生まれ、本番さながらのパフォーマンスを引き出す助けとなっています。

  • クラウドネイティブとコスト配慮: システムはすべてGoogle Cloud上で完結するクラウドネイティブ構成です。Cloud Runによりサーバは需要に応じ自動スケーリングし、使った分だけの課金で運用コストを抑えています。また各APIもGoogle Cloudのマネージドサービスを活用しており、インフラ管理コストを削減しました。Geminiモデルについては高精度なFlash 32k版を使用しつつ、1ユーザーあたりの解析トークン量を制限することで1セッション数円程度にコストを収める見積もりです。個人開発でも継続運用しやすいよう、無料枠内で動作可能な軽量モデルやLite版STTへの切替も検討しています。

おわりに

Edge Presence X (EP-X) によって、これまで難しかったリアルタイムの自己フィードバックが可能になり、面接練習の質と効率は飛躍的に向上します。本番さながらの環境で弱点をその場で修正し続けるサイクルを回すことで、ユーザーは短期間で着実にスキルアップできるでしょう。今後は各セッションの要約レポートを自動生成して振り返り資料を提供したり、フィラー癖の改善トレーニングモードを追加したり、面接シミュレーションのシナリオを拡充するなど、さらなる機能強化を計画しています。EP-Xが皆さんの「場慣れ」と自己成長をサポートし、夢のキャリア実現に貢献できれば幸いです。

脚注
  1. Forbes記事「Do People Trust Your Voice? In Business, It Matters」(2020)- 声の高さや話し方と信頼感の関係について言及 ↩︎

  2. Sazara et al., "Filler Word Detection and Classification: A Dataset and Benchmark" (Interspeech 2022)- フィラー語の頻度と話者印象に関する研究 ↩︎

Discussion