mcpField
T
TySVA - TypeScript Voice Assistant🪄

TySVA - TypeScript Voice Assistant🪄

github.com/astrabert桌面应用1682 周前更新

关于 TySVA - TypeScript Voice Assistant🪄

TySVA 是一个集成 MCP 服务、向量数据库和语音功能的桌面应用,帮助用户通过对话学习 TypeScript。支持语音和文本输入输出,利用本地 TypeScript 文档和网络搜索为学习提供上下文。

主要功能

  1. 01语音输入输出和转录
  2. 02本地向量数据库搜索
  3. 03网络深度搜索
  4. 04LlamaIndex Agent 工作流
  5. 05Docker 部署

适用场景

  1. 01通过对话学习 TypeScript 概念
  2. 02获取 TypeScript 文档和示例
  3. 03进行实时语音交互的编程学习

MCP 相关

TySVA 通过 MCP 服务暴露向量搜索和网络搜索工具,供应用的 Agent 工作流调用。

详细介绍

TySVA - TypeScript 语音助手🪄

通过与 AI 聊天轻松学习 TypeScript

如果您觉得 TySVA 有用,请考虑捐赠以支持该项目:
GitHub Sponsors Badge

TySVA Logo

TySVA 旨在为您创建一个学习空间,深入了解 TypeScript,利用:

  • Qdrant 本地数据库,包含完整的 TypeScript 文档
  • LinkUp,用于网络深度搜索
  • MCP 服务,用于向量搜索和网络搜索自动化
  • ElevenLabs,用于语音输入转录和语音输出生成
  • LlamaIndex,用于 Agent 工作流

它支持语音输入/输出以及文本输入/输出。

安装和启动🚀

第一步对 Docker 和源代码设置方法都是通用的,即克隆仓库并进入其中:

git clone https://github.com/AstraBert/TySVA.git
cd TySVA

进入后,您可以选择以下两种方法之一:

Docker(推荐)🐋

需要:Docker 和 docker compose

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

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 上运行,您就可以使用它了。

工作流

workflow

工作流非常简单:

  • 当您提交请求时,如果是音频,它会被转录,然后作为起始提示词提交给 Agent 工作流,而如果是文本,它会直接提交给 Agent 工作流
  • Agent 工作流可以通过从向量数据库检索文档或搜索网络来解决 TypeScript 问题。如果答案很简单,也可以直接响应(不使用工具)。所有工具都通过 MCP 提供
  • Agent 完成后,Agent 过程和输出会被总结,摘要被转换为语音输出。语音输出与 Agent 的文本输出一起返回

贡献

欢迎提交贡献!请遵循此处报告的贡献指南。

许可证和使用权

该软件在 MIT 许可证下提供。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。