TySVA - TypeScript Voice Assistant🪄 について
TySVA は MCP サーバー、ベクトルデータベース、音声機能を統合したデスクトップアプリです。会話を通じて TypeScript を学習でき、ローカルドキュメントとウェブ検索により学習に必要な文脈を提供します。
主な機能
- 01音声入出力と文字起こし
- 02ローカルベクトルデータベース検索
- 03ウェブ深層検索
- 04LlamaIndex エージェントワークフロー
- 05Docker デプロイメント
活用シーン
- 01会話を通じた TypeScript 学習
- 02TypeScript ドキュメントと例へのアクセス
- 03音声駆動のプログラミング教育
MCP 対応
TySVA は MCP サーバー経由でベクトル検索とウェブ検索ツールを公開し、アプリケーションのエージェントワークフローがこれらを呼び出します。
詳細
TySVA - TypeScript Voice Assistant🪄
AI とチャットして TypeScript を気軽に学ぶ
TySVA は、以下を活用して TypeScript についてもっと学ぶための学習スペースを作成することを目的としています:
- TypeScript の完全なドキュメントを備えた Qdrant ローカルデータベース
- ウェブ深層検索用の LinkUp
- ベクトル検索とウェブ検索の自動化用の MCP サーバー
- 音声入力の文字起こしと音声出力の生成用の ElevenLabs
- エージェントワークフロー用の LlamaIndex
音声入出力とテキスト入出力の両方をサポートしています。
インストールと起動🚀
最初のステップは Docker とソースコード設定の両方のアプローチに共通しており、リポジトリをクローンしてアクセスすることです:
git clone https://github.com/AstraBert/TySVA.git
cd TySVA
ここで、次の 2 つのアプローチのいずれかを選択できます:
Docker (推奨)🐋
必須: Docker および docker compose
.env.exampleファイルにgroq_api_key、elevenlabs_api_keyおよびlinkup_api_key変数を追加し、ファイル名を.envに変更してください。これらのキーを取得してください:
mv .env.example .env
- Docker アプリケーションを起動してください:
# If you are on Linux/macOS
bash start_services.sh
# If you are on Windows
.\start_services.ps1
- またはマニュアルで行うこともできます:
docker compose up vector_db -d
docker compose up mcp -d
docker compose up app -d
アプリケーションが http://localhost:7999/app で実行されているのが表示され、それを使用できるようになります。接続とハードウェアによっては、セットアップに時間がかかる場合があります (最初の実行時は最大 15 分) - ただしこれは初回のみです!
ソースコード🗎
必須: Docker、docker compose および conda
.env.exampleファイルにgroq_api_key、elevenlabs_api_keyおよびlinkup_api_key変数を追加し、ファイル名を.envに変更してください。これらのキーを取得してください:
mv .env.example scripts/.env
- 専用スクリプトを使用して conda 環境とベクトルデータベースをセットアップしてください:
# For MacOs/Linux users
bash setup.sh
# For Windows users
.\setup.ps1
- または、ご希望の場合はマニュアルで行うことができます:
docker compose up vector_db -d
conda env create -f environment.yml
- 次に、TypeScript ドキュメントをベクトルデータベースにロードするスクリプトを起動してください:
conda activate typescript-assistant-voice
python3 scripts/data.py
- 完了したら、MCP サーバーを起動してください:
conda activate typescript-assistant-voice
cd scripts
python3 server.py
- 別のターミナルを開いて、アプリケーションを実行してください:
uvicorn app:app --host 0.0.0.0 --port 7999
アプリケーションが http://localhost:7999/app で実行されているのが表示され、それを使用できるようになります。
ワークフロー

ワークフローは非常にシンプルです:
- リクエストを送信すると、オーディオの場合は文字起こしされてからエージェントワークフローに開始プロンプトとして送信され、テキストの場合はエージェントワークフローに直接送信されます
- エージェントワークフローは、ベクトルデータベースからドキュメントを取得するか、ウェブを検索することで TypeScript の質問に回答できます。答えが簡単な場合は直接応答 (ツール使用なし) の可能性もあります。すべてのツールは MCP を通じて利用可能です。
- エージェントが完了すると、エージェントプロセスと出力が要約され、要約が音声出力に変換されます。音声出力はエージェントによるテキスト出力とともに返されます。
コントリビューション
コントリビューションはいつでも歓迎です!こちらに記載されているコントリビューションガイドラインに従ってください。
ライセンスと使用権
ソフトウェアはMIT ライセンスの下で提供されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。