Agent SoulMate — ローカルLLM駆動のAIソウルメイト

AI/ML

概要

Agent_SoulMateは、ローカルホストで動作する大規模言語モデル(Ollamaを介したqwen2.5:14bなど)をバックエンドに据えた“AI伴侶”プラットフォームです。ユーザーはキャラクター(人設、声、アバター、開場の台詞など)をUGCとして作成・公開でき、各キャラクターは専用の知識ベースに紐付けられます。Django REST + ChannelsによるAPIとWebSocketの組合せで、テキスト・音声双方のリアルタイム対話を実現。将来的なMilvus導入を見据えたRAG(Retrieval-Augmented Generation)やASR/TTS連携も想定されており、フロントはReact + Vite + Tailwindでモダンに構築されています。ローカルモデル優先の設計により、プライバシー配慮と低遅延応答が可能です。

GitHub

リポジトリの統計情報

  • スター数: 3
  • フォーク数: 0
  • ウォッチャー数: 3
  • コミット数: 3
  • ファイル数: 9
  • メインの言語: Python

主な特徴

  • ローカルLLM優先(Ollama経由のqwen2.5:14b)による対話生成
  • UGC対応のキャラクター作成・公開機能(人設、声質、アバター等)
  • Django Channels + WebSocketでのストリーミング応答、リアルタイム音声チャット
  • RAG(知識ベース)連携、将来的にMilvusを利用したベクトル検索へ移行予定

技術的なポイント

Agent_SoulMateは「ローカルモデル+フルスタックWebアプリ」の典型的な構成をとります。バックエンドはDjango 4とDjango REST FrameworkでAPIを提供し、Django Channelsを使ってWebSocketベースの双方向ストリーミング通信を実装しているため、モデルからの生成を逐次クライアントへプッシュできます。LLMとの接続はOllamaのローカルAPIを想定しており、qwen2.5:14bのような比較的大きなモデルをオンプレで運用する設計です。これにより外部APIコストを抑えつつ、データを社外に出さない運用が可能になります。

RAGの実装は現状ローカルの知識ベースと結びついており、ドキュメントをキャラクターに紐付けてコンテキスト強化を行います。将来的にはMilvusに移行する設計が明記されており、そこで大規模なベクトル検索とスケーラブルなドキュメント管理が期待できます。音声のパイプラインはASR(音声→テキスト)とTTS(テキスト→音声)を組み合わせる想定で、リアルタイムチャットの体験を目指しています。フロントエンドはReact 18 + Viteで高速化され、Tailwind CSSとFramer MotionによりUI/UXも考慮されています。

開発者視点では、Docker Composeによるローカル開発環境や、Ollamaのエンドポイント設定、Channelsのルーティング、モデル生成のストリーミング処理(イベント駆動でのチャンク送信)などが実装上の注目点です。セキュリティ面ではローカルモデル利用がプライバシー保護に寄与しますが、音声データの取扱いや公開UGCの検閲・モデレーション、モデル更新時の互換性管理(トークナイゼーションやAPI差分)といった運用課題が残ります。拡張性としては、Milvusや外部ツール(Web検索、外部API呼び出し)をエージェントツールとして接続することで、より高度な行動や情報取得が可能になります。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .vscode: dir
  • README.md: file
  • backend: dir
  • docker-compose.yml: file
  • figures: dir

その他のファイル(抜粋):

  • frontend: 想定される React アプリ(READMEより技術スタック)
  • requirements / Pipfile 等(バックエンド依存管理)
  • Channels 関連設定(routing、consumers)
  • RAG 用データディレクトリ(知識ベース格納用)
  • ドキュメントや設定ファイルが将来的に追加される想定

(実際のリポジトリはファイル数が限定されているため、運用やデプロイに必要な環境設定はREADMEとdocker-compose.ymlを参照し、ローカルのOllamaやモデル配置を行う必要があります。)

まとめ

ローカルLLMでプライバシー寄りのリアルタイム音声付きUGC型AI伴侶を実現するための良い出発点です。

リポジトリ情報:

READMEの抜粋:

AI Soulmate: 本地大模型驱动的 UGC 语音伴侣平台

Agent Voice 首页界面

一个可扩展的全栈 AI 伴侣应用:支持用户创建/发布角色(UGC)、文本与语音对话、角色知识库、工具调用。

核心特性

  • 本地模型优先:通过 Ollama 本地部署 qwen2.5:14b(OpenAI 兼容接口)驱动对话能力。
  • 角色 UGC:创建多个角色、设定人设、开场白、头像、音色,并发布到角色广场。
  • 实时通信:Django Channels + WebSocket,支持流式对话。
  • RAG 能力:角色绑定私有知识库(后续迁移至 Milvus)。
  • 语音链路:ASR + TTS(后续扩展功能)。

技术栈

  • 前端:React 18 + Vite + Tailwind CSS + Framer Motion
  • 后端:Django 4 + Django REST Framework + Channels
  • LLM:Ollama(qwen2.5:14b)+ Lan…