AIカスタマーサポートアシスタント
概要
このリポジトリは「AI Customer Support Assistant」を実装するためのサンプルプロジェクトです。主要な機能は音声録音からの自動文字起こし(OpenAI Whisper)、ドキュメントやナレッジベースを参照して応答を生成するRAGワークフロー、問い合わせの分類(Hugging Faceモデル)を組み合わせたフルスタックな顧客サポートアシスタントの提供です。バックエンドはFastAPIで構築され、フロントエンドにはプロフェッショナルなWeb UIを想定したリアルタイムチャット機能・転写表示・エクスポート機能が含まれます。ベクトルデータはChromaDBに保存され、埋め込みや分類は外部API/モデルを利用して拡張可能。データ探索用のノートブックや分類パイプラインのサンプルも同梱されています。(約300字)
リポジトリの統計情報
- スター数: 1
- フォーク数: 0
- ウォッチャー数: 1
- コミット数: 4
- ファイル数: 16
- メインの言語: Jupyter Notebook
主な特徴
- 音声入力の自動転写:OpenAI Whisperを利用した音声→テキスト変換
- RAGによる文脈対応応答:ChromaDBをベクトルストアに用いたナレッジ検索+生成
- 問い合わせ分類:Hugging Faceモデルを用いたインテント/レベル分類パイプライン
- FastAPIベースのAPIとリアルタイムチャットを想定したWeb UI統合
技術的なポイント
本プロジェクトは実用的な顧客サポートアシスタントを構築するために、複数の主要コンポーネントを組み合わせています。まず入力面では、ユーザーの音声を録音しOpenAI Whisperで高精度に転写することで、音声対応のCX(顧客体験)を実現しています。転写されたテキストは前処理された後、埋め込み変換されてChromaDBに保存されたナレッジベースと照合されます。ここでの設計は典型的なRAGパイプラインに沿っており、ドキュメントチャンクの分割、埋め込みの一貫性(同一モデルを用いる)、高い類似度のテキストを抽出してプロンプトに含めることで、基盤モデル(LLM)に文脈を与えた応答生成を可能にします。
分類面では、Hugging Face上の分類モデルを利用して問い合わせの種類やレベル(優先度など)を判定し、ルーティングや応答テンプレート選択に活用できます。分類モデルのトレーニングや評価は同梱のノートブック(LevelClassification.ipynb)で確認でき、データクリーニングやEDAも別ファイルで示されています。API層はFastAPIで実装され、音声アップロード、転写取得、チャットセッション管理、エクスポート(会話ログのダウンロード)などのエンドポイントを提供する想定です。
実運用を考慮すると、バッチ化された埋め込み更新、キャッシュ戦略、低レイテンシー化(WhisperやLLM呼び出しの並列化や非同期処理)、およびセキュリティ(APIキー管理・個人情報の匿名化)が重要になります。また、ChromaDBなどのベクトルストアは永続化とバックアップの設計が必須で、埋め込みモデルを差し替える際の再埋め込みコストも考慮する必要があります。ローカルでの検証用ノートブックとプロダクションAPIを明確に分離すること、テストデータを用いた評価スイートを整備することも推奨されます。(約700字)
プロジェクトの構成
主要なファイルとディレクトリ:
- Dataset.csv: file
- EDA.ipynb: file
- English_Dataset_Clean.csv: file
- LICENSE: file
- LevelClassification.ipynb: file
…他 11 ファイル
まとめ
実用的なRAG+音声転写+分類を組み合わせた顧客サポート基盤の良い出発点です。(約50字)
リポジトリ情報:
- 名前: AI-Customer-Support-Assistant
- 説明: AI Customer Support Assistant built with FastAPI, featuring voice recording (OpenAI Whisper), RAG-powered context-aware responses, and intelligent query classification. Professional web UI with real-time chat, transcription, and export capabilities. Uses ChromaDB for vector storage and Hugging Face models for classification.
- スター数: 1
- 言語: Jupyter Notebook
- URL: https://github.com/GregReynaldi/AI-Customer-Support-Assistant
- オーナー: GregReynaldi
- アバター: https://avatars.githubusercontent.com/u/209321942?v=4
READMEの抜粋: