AI面试助手是一个基于React的智能面试准备工具,提供实时语音转文字、AI智能回答建议和完整的面试会话管理功能。
- 🎤 实时语音转写 - 基于科大讯飞RTasr API的高精度语音识别
- 🤖 AI智能回答 - 集成DeepSeek AI提供面试问题的智能回答建议
- 💾 会话持久化 - 完整的面试记录保存和历史回顾
- 👤 用户认证 - 基于JWT的安全用户登录系统
- 🔄 实时同步 - 前后端实时数据同步和状态管理
- React 19 + TypeScript + Vite
- Ant Design - 企业级UI组件库
- Zustand - 轻量级状态管理
- Axios - HTTP客户端和请求拦截
- WebAudio API - 实时音频处理
- FastAPI - 高性能Python Web框架
- PostgreSQL - 关系型数据库
- Redis - 缓存和会话存储
- JWT - 用户认证和授权
- SQLAlchemy - ORM数据库操作
- Node.js 16+
- Python 3.9+
- PostgreSQL 17+ (推荐Docker)
- Redis 7+ (推荐Docker)
# 启动生产环境
chmod +x scripts/docker-start.sh
./scripts/docker-start.sh
# 或启动开发环境(支持代码热重载)
chmod +x scripts/dev-start.sh
./scripts/dev-start.sh# 生产环境
docker-compose up --build -d
# 开发环境
docker-compose -f docker-compose.dev.yml up --build -d# PostgreSQL
docker run --name postgres-ai-interview \
-e POSTGRES_PASSWORD=root \
-p 5432:5432 \
-d postgres:17.5
# Redis
docker run --name redis-ai-interview \
-p 6379:6379 \
-d redis:7.4-alpine💡 推荐使用上面的Docker方式启动,可避免环境配置问题
cd backend
chmod +x setup.sh
./setup.sh # 自动创建.env配置文件
python run_server.pycd backend
python test_connection.py # 测试数据库连接
python run_server_windows.py # Windows专用启动脚本cd frontend
chmod +x setup.sh
./setup.sh # 自动创建.env配置文件
npm run dev# 进入前端目录
cd frontend
# 复制环境变量模板
cp .env.example .env
# 安装依赖
npm install
# 启动开发服务器 (运行在 http://localhost:5173)
npm run dev- 用户名:
test - 密码:
test1234 - 邮箱:
[email protected]
使用前需要配置API密钥(在应用内设置):
- DeepSeek AI API: 在应用的API配置页面填入密钥
- 科大讯飞语音API: 在应用的语音设置页面配置APPID和APIKEY
💡 安全提示: 所有API密钥都通过应用内界面配置,不会硬编码在代码中
ai-interview-helper-react/
├── frontend/ # React前端应用
│ ├── src/
│ │ ├── api/ # API接口封装
│ │ ├── components/ # 可复用组件
│ │ ├── pages/ # 页面组件
│ │ ├── store/ # Zustand状态管理
│ │ └── utils/ # 工具函数
│ └── public/
├── backend/ # FastAPI后端应用
│ ├── app/
│ │ ├── models.py # 数据库模型
│ │ ├── schemas.py # Pydantic模型
│ │ ├── auth.py # 认证逻辑
│ │ └── routers/ # API路由
│ ├── main.py # 应用入口
│ └── requirements.txt # Python依赖
└── memory-bank/ # 项目文档和上下文
后端配置 (backend/.env):
DATABASE_URL=postgresql://postgres:root@localhost:5432/ai_interview_helper
REDIS_URL=redis://localhost:6379
SECRET_KEY=your-secret-key-change-this-in-production
ACCESS_TOKEN_EXPIRE_MINUTES=30前端配置 (frontend/.env):
VITE_API_BASE_URL=http://localhost:9000- 科大讯飞语音转写API - 申请地址:https://www.xfyun.cn/
- DeepSeek AI API - 申请地址:https://platform.deepseek.com/
申请后在应用内设置页面配置,不需要修改代码文件。
后端启动后可访问自动生成的API文档:
- Swagger UI: http://localhost:9000/docs
- ReDoc: http://localhost:9000/redoc
| 端点 | 方法 | 描述 |
|---|---|---|
/health |
GET | 健康检查 |
/api/auth/login |
POST | 用户登录 |
/api/auth/register |
POST | 用户注册 |
/api/auth/me |
GET | 获取当前用户 |
/api/sessions/ |
GET/POST | 会话管理 |
/api/sessions/{id}/messages |
GET/POST | 消息管理 |
# 启动开发环境
./scripts/dev-start.sh
# 查看日志
./scripts/docker-logs.sh
# 查看特定服务日志
./scripts/docker-logs.sh backend
./scripts/docker-logs.sh postgres
# 重启服务
./scripts/docker-restart.sh
# 停止服务
./scripts/docker-stop.sh
# 进入后端容器调试
docker-compose -f docker-compose.dev.yml exec backend bashcd frontend
npm run dev # 启动开发服务器
npm run build # 构建生产版本
npm run lint # 代码检查
npm run preview # 预览构建结果Linux/macOS/WSL:
cd backend
source venv/bin/activate
python run_server.py # 启动开发服务器
python init_default_user.py # 重置默认用户
python test_db.py # 测试数据库连接Windows:
cd backend
venv\Scripts\activate
python run_server_windows.py # Windows专用启动脚本
python test_connection.py # 测试数据库连接
python init_default_user.py # 重置默认用户# 查看容器状态
docker-compose ps
# 查看实时日志
docker-compose logs -f
# 重新构建并启动
docker-compose up --build -d
# 停止并删除容器
docker-compose down
# 清理所有数据(谨慎使用)
docker-compose down -v- ✅ v0.1 - 基础前端UI和语音转写功能
- ✅ v0.2 - AI回答功能和实时对话体验
- ✅ v0.3 - 后端架构和数据持久化
- 🔄 v0.4 - 多模型支持和API配置管理
- 📋 v0.5 - 完善用户系统和登录页面
- Fork 本仓库
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 创建 Pull Request
- 加我WeChat: JarvanJason 一起贡献
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
- 科大讯飞提供优秀的语音识别API
- DeepSeek提供强大的AI模型支持
- Ant Design提供优雅的UI组件库
- 面试狗提供UI灵感
触发AI提问的时机难以控制, 准确率低, 需要帮忙改进

