2.5 KiB
2.5 KiB
Ai-Teacher - AI 授课助手
一个结合 Live2D 虚拟形象的 AI 授课网页应用,可以展示 PDF 课件并通过 AI 进行讲解。
功能特点
- 左侧 PDF 课件查看器,支持翻页、缩放等操作
- 右侧 Live2D 虚拟形象,可以根据当前 PDF 页面内容进行讲解
- 集成 OpenAI API 进行内容理解和生成讲解
- 集成 TTS (文本转语音) 功能,让虚拟形象"开口说话"
- 支持多种 Live2D 模型切换
最新更新
- 重构了 Live2D 控制器,提高了模型加载的可靠性
- 优化了库加载机制,解决了 Live2D 库加载失败的问题
- 添加了更详细的调试信息,方便排查问题
- 改进了用户界面,提供更好的用户体验
- 增强了错误处理机制,提高了应用的稳定性
环境要求
- Node.js 环境 (推荐 v14 或更高版本)
- Python 3.8 或更高版本
- Conda 环境管理工具 (可选)
安装步骤
- 克隆仓库到本地
git clone https://github.com/feng-arch/Ai-Teacher.git
cd Ai-Teacher
- 安装 Node.js 依赖
npm install
- 安装 Python 依赖
conda create -n Ai-Teacher python=3.12.9
conda activate Ai-Teacher
pip install -r requirements.txt
- 配置 API 密钥
在setting.json里配置api密钥
运行应用
npm run start
这将同时启动前端开发服务器和后端 Python 服务器。
或者,你也可以分别启动(不推荐):
# 启动前端
npm run dev
# 启动后端 (在另一个终端中)
python server.py
使用说明
- 在浏览器中访问
http://localhost:6007(或配置的端口) - 左侧可以查看 PDF 课件,使用控制按钮进行翻页和缩放
- 右侧显示 Live2D 虚拟形象,可以从下拉菜单选择不同模型
- 点击"讲解当前页面"按钮,AI 将分析当前页面内容并通过虚拟形象进行讲解
- 讲解过程中可以点击"停止讲解"按钮终止语音
配置文件
在 setting.json 中可以配置以下参数:
{
"websocket_port": 6006, // WebSocket 服务器端口
"port": 6007 // HTTP 服务器端口
}
自定义 PDF 文件
默认加载项目**public/pdf/**目录下的 VLA4RM-仿生智能.pdf 文件。如需使用其他 PDF 文件,可以:
- 将 PDF 文件放在项目根目录下
- 修改
js/main.js中的loadDefaultPDF方法中的文件名
技术栈
- 前端:HTML, CSS, JavaScript, PDF.js, pixi-live2d-display
- 后端:Python, Flask, WebSockets
- AI 服务:OpenAI API (GPT-3.5-Turbo), OpenAI TTS API
许可证
ISC License