AIカスタマーサポートプラットフォーム
RAGベースのナレッジチャットボットと受信トレイ(チケット管理)を統合した、マルチテナント対応のカスタマーサポートプラットフォーム。
課題
従来のカスタマーサポートでは、問い合わせ対応に多大な工数がかかり、ナレッジの属人化やチャネル間の情報分断が課題となっていた。 マルチテナント対応でワークスペースごとにデータを分離しつつ、RAGベースの自動応答を実現する設計が求められていた。
ソリューション
Next.js 14 + Supabase(pgvector)でRAGベースのナレッジチャットボットとZendeskライクなチケット管理機能を統合。 Vercel AI SDKによるマルチLLM対応、RLSによるマルチテナントデータ分離を実装。
成果
マルチLLM対応(6社)のAIチャットボットと受信トレイ・CRM・ダッシュボードを備えたフルスタックプラットフォームを構築。
チーム
1 member, 2 months
設計・実装・インフラ構築・運用
役割
設計から実装、運用まで全てを担当。
フロントエンド(Next.js)、バックエンド(Supabase Edge Functions)、インフラ(Terraform/GCP)を一貫してリード。
技術スタック
主要機能
RAGチャットボット: URL/PDF/テキストをベクトル化し、セマンティック検索で高精度な自動応答を生成
マルチLLM対応: OpenAI / Gemini / Claude / Groq / xAI / DeepSeekを統一インターフェースで切替可能
受信トレイ(Inbox): Zendeskライクなチケット管理。チャット・メール・APIマルチチャネル対応
マルチテナント: RLSによる物理的なデータ分離、メンバーシップ・ロール管理
ダッシュボード: 各種データのグラフ表示・フィルタ・レポート
プラットフォーム管理: スーパーユーザー向けのワークスペース横断管理画面
工夫点
RAGパイプライン設計
ドキュメント取り込み→チャンク分割→ベクトル化→類似検索→回答生成の一連のパイプラインを構築。content_hashによる重複検知やworkspace_idフィルタによるクロステナント漏洩防止を実装。
マルチテナント×RLSセキュリティ
全コアテーブルにworkspace_idを持ち、Supabase RLSで物理的にテナント間のデータを分離。Middlewareで認証チェック、Client側でロールチェックの二段構えを実現。
Edge Functionによる非同期AI処理
重いAI処理をSupabase Edge Functionに分離し、Webアプリのレスポンスに影響を与えない設計を実現。