Upgrade to Pro — share decks privately, control downloads, hide ads and more …

「人を評価する AI」の 設計と実装 

「人を評価する AI」の 設計と実装 

AI面接プラットフォーム「CaseMatch」(https://casematch.jp) のコアとなる音声対話システムおよび質問生成アルゴリズムについて解説しています。

Keywords: AI Agent / Voice AI / LiveKit / Kubernetes / HR Tech

Avatar for 奈良亮耶

奈良亮耶

August 02, 2026

Other Decks in Programming

Transcript

  1. 会社紹介 | HRテックのスタートアップです! 5 概要 代表取締役: 松本拓樹 ➢ 会社設立: 2023/12

    ➢ サービス開始: 2025/01/25 ➢ 事業内容: AI面接プラットフォーム「CaseMatch」 (https://casematch.jp/)の開発/運営 ➢ ミッション 「最良の候補者体験で、ジョブパフォーマンスを予測可能に」 受賞歴
  2. 8 CaseMatch紹介 | アーキテクチャー概要 候補者 LIN E メッセージ 企業ユーザー 候補者向け

    Web Web N ext.js / Vercel LiveKit Cloud 運営 F irebase Auth 企業向け Web Web WebRTC 音声基盤 認証 C loud R un 管理画面 C loud R un Gateway Server 認証 / 認可 / ロードバランシング LINE Bot Cloud Run C loud R un Backen 音声 BIツール 内部用 M CP LightDash 分析用 推論 G KE AI 面接エージェント (Voice / Chat) C laude MC AI 分析 LLM O penAI / Ge mini / … C loud Pub/Sub 採点ワーカー C loud SQ L BigQuery 録画・音声 非同期 C loud R un Jobs MySQL 分析基盤
  3. 9 CaseMatch紹介 | アーキテクチャー概要 AI音声対話 システム 候補者 LINE 候補者向け LiveKit

    Cloud メッセージ Next.js / Vercel WebRTC 音声基盤 企業ユーザー 運営 Firebase Auth 企業向け Web Web Cloud Run 認証 管理画面 Cloud Run Gateway Server 認証 / 認可 / ロードバランシング LINE Bot Cloud Run Cloud Storage Storage 録画・音声 Cloud Run Backen 音声 BIツール 内部用 MCP LightDash 分析用 推論 GKE Claude MC AI 分析 LLM OpenAI / Gemini / … AI 面接エージェント (Voice / Chat) Pub/Sub 採点ワーカー Cloud SQL BigQuery 非同期 Cloud Run Jobs MySQL 分析基盤 質問生成アルゴリズム
  4. 11 前提 | 選抜手法に求められる要件 「ジョブパフォーマンスの予測精度が高い」ことが本質的価値 時間軸 入社前 入社後 候補者 選抜

    手法 選抜成績 妥当性の獲得 高い相関 図:「採用面接論 無意味論を超えて」(鈴木’24) などを元に作成 ジョブ パフォーマンス (業績評価/ 行動評価/…)
  5. 14 AI音声対話の設計 | 前提 自動音声対話システムの基本形は、STT -> LLM -> TTS STT

    (Speech-to-Text) : 人間の話した内容を自然言語にする ➢ TTS (Text-to-Speech):自然言語を音声にして人間に返す ➢ 最近はS2Sが非常にアツイですが、 今回は泣く泣く割愛…
  6. AI音声対話システムの設計 | 課題 本番環境レベルのAI音声対話を作るのは非常に難しい! ⚫ 双方向通信 (WebSocket / WebRTC通信) の安定性担保

    切断時の再接続処理 ➢ スケールアウト時のSessionのハンドリング ➢ ⚫ Observabilityの確保 失敗時の解析のため、STT-LLM-TTS PilpelineのTraceやLogを 適切に収集・記録する必要がある ➢ 録画・録音を保存・必要に応じて解析・外部提供する必要がある ➢ ⚫ 高スケーラビリティの担保 全てスクラッチ実装するのは無理!! 16
  7. AI音声対話システムの設計 | 実現方法 LiveKit のフレームワークに乗っかり、低コストで実装 ➢ LiveKit とは: リアルタイムな音声対話システムを実現するための 双方向通信処理をハンドリングするためのOSS群

    livekit/livekit: WebRTC周りの処理 • livekit/agents: LiveKitでAI Agentアプリを作成する際の処理 • livekit/components-js: LiveKitのReact Component ➢ LiveKit 社がOSSをメンテナンス。 LiveKit 専用のクラウド「LiveKit Cloud」を提供 • 17
  8. 18 AI音声対話システムの設計 | 実現方法 LiveKit がないと… LLM APIが 一時的に切断される 繋いでいたイヤホンが切れ、

    回答音声が聞こえなくなる AI Agent用 自社サーバー 受験者 端末 LLMベンダー (OpenAI/ Elevenlabs/…) エラーが発生したとき、 STT/LLM/TTSのどこで失敗したかが 分からない
  9. 19 AI音声対話システムの設計 | 実現方法 LiveKit に乗っかれば… デバイス切断時のフォールバックや、 デバイス変更時の付け替えなどを 容易に実現可能 LLM

    API切断時に、自動で再接続 /他のLLM APIに自動フォールバック AI Agent用 自社サーバー 受験者 livekit/ 端末 components-js livekit/agents LLMベンダー (OpenAI/ Elevenlabs/…) OTeL互換でObservabilityを収集可能 、 録音・録画やユーザの入室/離脱も ダッシュボードで容易に確認可能
  10. 21 AI音声対話システムの設計 | デプロイ方法 LiveKit CloudとGKEの併用により高スケーラビリティを実現 k8sによる管理が容易なAgent部分だけGKE上でセルフホストし、 k8sによる管理が複雑化しがちな他部分はLiveKit Cloud上で管理 ➢

    LiveKitのScaleプラン (月$500) で、 ビジネス上全く問題ない水準の同時受験可能数を達成できる ➢ • Agent周りもLiveKit Cloudにデプロイするとダメ 受験者 2. 入室 Room 1. 登録 3. 入室 4. やりとり クライアントサイド Agent Server LiveKit Cloud GKE
  11. 22 AI音声対話システムの設計 | 移行手順 企業選考に影響が出ないよう、 A/Bテストをしながら徐々にLiveKitベースの面接に移行 2024/11 2025/2 2025 初期開発

    開発開始 2026/2 2025/10 2026/4 2026 運用 ローンチ! レイテンシや不安定性の 改善が必達課題に… LiveKit基盤の 技術調査・開発 面接練習での LiveKit移行 選考面接での LiveKit移行
  12. AI音声対話システムの設計 | 補足 25 LiveKitのデメリット ⚫ 破壊的な仕様変更が多い ➢ ⚫ v1.2とv1.3でかなり違う

    Agent機能がかなり新しく、知見が少ない OSSの登場が2024/7 (弊社でのLiveKit選定が2025/10) ➢ 他の企業でLiveKit Aegntを本番環境レベルで採用していることを 公言している企業がいない (私の知る限り) ➢ ⚫ 独特な仕様が多い ➢ WebSocket / WebRTCなどの双方向通信処理を 独自の機能でラップしており、かなり泥臭い試行錯誤を 繰り返す必要があり
  13. 28 質問生成アルゴリズム | 前提 LLMでタスクを解く方法は大きく分けて3つ 単発LLM Call+α Workflow型 Agent型 LLM

    Callを多段階・ 固定手順で呼び出す 自由探索的にLLM Call などの行動を行う 例: LangGraph / ADK Runner / LangChain 例: Claude Agent SDK / Deep Agents SDK / Claude Code / Codex 図・参考: Building effective agents (Anthropic)
  14. 29 質問生成アルゴリズム | 前提 複雑な方法ほど賢くなるが、遅く、不安定になる 単発LLM Call+α Workflow型 Agent型 処理速度

    早い (単発なので) 早い 遅い (辿る経路が有限) (辿る経路が無限) 安定性 安定している 不安定 解けるタスクの 難易度 簡単なタスクのみ 複雑なタスクも 解ける
  15. 30 質問生成アルゴリズム | 課題 面接の質問生成は、処理速度・安定性が求められ、かつ複雑 単発LLM Call+α Workflow型 Agent型 処理速度

    早い (単発なので) 早い 遅い (辿る経路が有限) (辿る経路が無限) 安定性 安定している 不安定 解けるタスクの 難易度 簡単なタスクのみ 複雑なタスクも 解ける
  16. 質問生成アルゴリズム | 課題 31 面接の質問生成は非常にハイコンテキスト 1. 面接官側は、評価観点を候補者にそのまま訊いてしまう 質問をしてはいけない ➢ 例:

    「LLMアプリケーションを安定稼動させるための様々な 工夫をどれくらい知っているか」を測りたいときにする最初の質問 あなたが開発したAI面接サービスにおいて、 LLM呼び出しをステータスコードに応じてリトライしましたか? あなたが開発したAI面接サービスで、仮にLLM 呼び出しが失敗しやすい 状況に遭遇したとき、どのような工夫が考えられますか? あなたが開発したAI面接サービスを安定稼動させるために考えられる 工夫はなんですか?可能な限り列挙してください。 ※どの質問が良いかは、それまでのやり取りや業務内容などの情報に左右されます。
  17. 質問生成アルゴリズム | 課題 面接の質問生成は非常にハイコンテキスト 2. 企業や職種ごとに、求められる人物像・基準が違う。 ➢ 職種ごとの違い • •

    • • • ➢ アプリケーションエンジニア データサイエンティスト プロジェクトマネージャー デザイナー … 企業ごとの違い • • • • SIer 事業会社 外資テック … 32
  18. 質問生成アルゴリズム | 実現方法 33 Agent型で面接の型やデータをチューニングし、 単発LLM Call+αやWorkflow型に蒸留 1. Agent型のツール (Claude

    Code / Codexなど) で 指示出しを繰り返してチューニングを行う 社内用 シミュレーション エンジン やり取り 開発環境 指示出し もっと こうしたい… 質問生成 プログラム プロンプト 教師データ 開発者/FDE
  19. 34 質問生成アルゴリズム | 実現方法 Agent型で面接の型やデータをチューニングし、 単発LLM Call+αやWorkflow型に蒸留 2. 得られたプログラム・プロンプト・教師データを蒸留し、 単発LLM

    Call+αやWorkflow型に落とし込む 質問生成 プログラム 入力 プロンプト 質問生成 LLM 出力 表現 チェック ガード レール 校正 LLM 教師データ 蒸留