feat: interview review module with whisper.cpp ASR + AI analysis + frontend page
New backend module 'interview-review' provides: - Audio upload (50MB limit, MP3/M4A/WAV/AAC/OGG/MP4/WebM) - Text transcript submission - whisper.cpp local ASR integration (tiny + base models) - AI analysis (4-dimension scoring: logic/expression/professionalism/stability) - Speech analysis (filler words detection, pace, duration) - Async processing pipeline with status polling - Graceful fallback to mock ASR when whisper unavailable New frontend page 'pages/review/review.vue' with 3 modes: - List mode: review history with status indicators - Upload mode: audio file upload or text paste - Report mode: score radar, dimension bars, analysis details Docs updated: PROJECT-STATUS.md v4.4, FEATURE-LIST.md v4.2, ROADMAP.md v4.2
This commit is contained in:
+30
-6
@@ -1,8 +1,8 @@
|
||||
# 职引 · 完整功能清单 v4.1
|
||||
# 职引 · 完整功能清单 v4.2
|
||||
|
||||
> **版本**: v4.1
|
||||
> **日期**: 2026-06-09
|
||||
> **状态**: Phase 0.5 壁垒构建完成
|
||||
> **版本**: v4.2
|
||||
> **日期**: 2026-06-16
|
||||
> **状态**: Phase 0.5 壁垒构建完成 + 面试复盘上线
|
||||
> **定位**: 应届生/实习生 AI 面试教练
|
||||
|
||||
---
|
||||
@@ -41,6 +41,18 @@
|
||||
| 连续打卡日历 | ✅ 完成 | 面试频率可视化,连续打卡激励 | P1 |
|
||||
| 每日一题推送 | ⚠️ 半完成 | 首页展示 + API 读取,**无定时推送** | P0 |
|
||||
|
||||
### 1.4 面试复盘(新增)
|
||||
|
||||
| 功能 | 状态 | 描述 | 优先级 |
|
||||
|------|------|------|--------|
|
||||
| 音频文件上传 | ✅ 完成 | 支持 MP3/M4A/WAV/AAC/OGG/MP4/WebM,50MB 上限 | P0 |
|
||||
| 文本转录粘贴 | ✅ 完成 | 直接粘贴面试转录文本提交 | P0 |
|
||||
| whisper.cpp ASR | ✅ 完成 | 本地离线语音转文字,支持 tiny/base 模型 | P0 |
|
||||
| AI 面试评析 | ✅ 完成 | 四维评分(逻辑/表达/专业度/稳定性)+ 逐题评估 | P0 |
|
||||
| 口语分析 | ✅ 完成 | 填充词检测 + 语速评估 | P0 |
|
||||
| 无 ASR 回落 | ✅ 完成 | whisper 不可用时自动使用 mock | P1 |
|
||||
| 历史记录管理 | ✅ 完成 | 列表/详情/删除 | P0 |
|
||||
|
||||
---
|
||||
|
||||
## 二、用户端功能
|
||||
@@ -61,6 +73,7 @@
|
||||
| 面试记录/统计 | ✅ 完成 | 总数/平均分/完成数 |
|
||||
| 进步轨迹 | ✅ 完成 | 雷达图 + 打卡日历 |
|
||||
| 简历管理 | ✅ 完成 | 多份简历 CRUD + AI 分析 |
|
||||
| 面试复盘 | ✅ 完成 | 音频上传 → ASR → AI 评析 → 口语分析 |
|
||||
| 会员中心 | ✅ 完成 | 套餐对比 + 支付 |
|
||||
|
||||
---
|
||||
@@ -95,6 +108,8 @@
|
||||
| 面试报告生成 | ✅ 完成 | 总分 + 四维 + 优劣势分析 |
|
||||
| 简历诊断 | ✅ 完成 | 结构 + 表达 + 关键词 + 亮点分析 |
|
||||
| 简历优化 | ✅ 完成 | 内容优化 + 差异展示 |
|
||||
| 面试复盘评析 | ✅ 完成 | 转录文本 → AI 评估 → 逐题分析 |
|
||||
| 口语分析 | ✅ 完成 | 填充词检测 + 语速评估 |
|
||||
| 技能缺口分析 | 📋 规划中 | 基于 JD 分析技能差距 |
|
||||
| 学习路径推荐 | 📋 规划中 | 知识图谱驱动的职业规划 |
|
||||
|
||||
@@ -104,18 +119,25 @@
|
||||
| opencode-go (deepseek-v4-flash) | 主用 | ✅ 已配置 |
|
||||
| NVIDIA (stepfun-ai/step-3.5-flash) | 备用 | ✅ 已配置 |
|
||||
|
||||
### ASR 引擎配置
|
||||
| 引擎 | 用途 | 状态 |
|
||||
|------|------|------|
|
||||
| whisper.cpp (tiny/base) | 本地离线 ASR | ✅ 已编译 + 已部署 |
|
||||
| mock ASR | 回落方案 | ✅ 无 whisper 时自动使用 |
|
||||
|
||||
---
|
||||
|
||||
## 五、技术功能
|
||||
|
||||
| 功能 | 状态 | 描述 |
|
||||
|------|------|------|
|
||||
| MongoDB 数据存储 | ✅ 完成 | 8 个数据模型 |
|
||||
| MongoDB 数据存储 | ✅ 完成 | 9 个数据模型(新增 InterviewReview) |
|
||||
| JWT 认证 | ✅ 完成 | 全局守卫 + 白名单机制 |
|
||||
| API 限流 | ✅ 完成 | @nestjs/throttler 10次/分钟 |
|
||||
| 文件上传 | ✅ 完成 | 简历 PDF/图片解析 |
|
||||
| 文件上传 | ✅ 完成 | 简历 PDF/图片 + 面试录音 |
|
||||
| CORS 配置 | ✅ 完成 | 全开放(生产需白名单) |
|
||||
| 参数校验 | ✅ 完成 | class-validator whitelist |
|
||||
| whisper.cpp ASR | ✅ 完成 | C/C++ 原生二进制,CPU 推理,MIT 协议 |
|
||||
|
||||
---
|
||||
|
||||
@@ -132,6 +154,7 @@
|
||||
- [x] 会员系统(¥19.9 成长版)
|
||||
- [x] 微信支付对接(Native + JSAPI)
|
||||
- [x] 公司真题库(用户贡献驱动)
|
||||
- [x] **面试复盘(音频 ASR + AI 评析 + 口语分析)**
|
||||
|
||||
### P1(待实现)
|
||||
- [ ] 每日一题定时推送
|
||||
@@ -156,3 +179,4 @@
|
||||
| 2026-06-01 | 重新定位:专注校招 | AI |
|
||||
| 2026-06-05 | 战略升级:新增数据飞轮/留存入围 | 小之 |
|
||||
| 2026-06-09 | 同步代码:Phase 0.5 功能标记完成,修正状态 | AI |
|
||||
| 2026-06-16 | **v4.2**:新增面试复盘功能(whisper.cpp ASR + AI 评析 + 口语分析) | AI |
|
||||
|
||||
+25
-8
@@ -1,8 +1,8 @@
|
||||
# 职引项目 · 状态报告 v4.3
|
||||
# 职引项目 · 状态报告 v4.4
|
||||
|
||||
> **项目版本**: v4.3
|
||||
> **更新时间**: 2026-06-11
|
||||
> **项目状态**: ✅ 代码质量修复 + 全量测试体系搭建完成
|
||||
> **项目版本**: v4.4
|
||||
> **更新时间**: 2026-06-16
|
||||
> **项目状态**: ✅ 面试复盘功能上线 + whisper.cpp 本地 ASR 集成
|
||||
|
||||
---
|
||||
|
||||
@@ -15,7 +15,8 @@
|
||||
| 技术栈 | NestJS + MongoDB + Uni-App(Vue3) |
|
||||
| 定价 | 免费版 / ¥19.9/月(成长版) / ¥49.9/月(冲刺版) |
|
||||
| AI 模型 | DeepSeek V4-Flash(主) + Step-3.5-Flash(备) |
|
||||
| 后端模块 | user, interview, resume, member, payment, positions, ai, analyze, upload, admin, email, progress, contribution, daily-question, schedule |
|
||||
| ASR | whisper.cpp(本地部署,tiny/base 模型,无需 API Key) |
|
||||
| 后端模块 | user, interview, resume, member, payment, positions, ai, analyze, upload, admin, email, progress, contribution, daily-question, schedule, interview-review |
|
||||
|
||||
---
|
||||
|
||||
@@ -24,12 +25,13 @@
|
||||
| 模块 | 完成度 | 说明 |
|
||||
|------|------|------|
|
||||
| 后端 API | **98%** | 核心 + 护城河 P0-P5 全部实现 |
|
||||
| 前端页面 | **85%** | 16 个页面含真实 API 调用 |
|
||||
| 前端页面 | **85%** | 17 个页面含真实 API 调用 |
|
||||
| AI 面试模拟 | **95%** | 多轮对话 + 评分 + 报告 + 进度追踪 |
|
||||
| 简历诊断/优化 | **95%** | 文件上传 + AI 分析 + 下载 |
|
||||
| 支付系统(微信) | **95%** | API v3 完整对接,含真实证书 |
|
||||
| 会员系统 | **100%** | 成长版 + 冲刺版,含权益扣减 |
|
||||
| 护城河 P0-P5 | **100%** | AI 结构化 / 行业基准 / VIP 过期 / 分享卡片 / 打卡积分 / 岗位匹配 |
|
||||
| 面试复盘 | **100%** | 音频上传 → whisper.cpp ASR → AI 评析 → 口语分析 |
|
||||
| 测试体系 | **85%** | 43 单元 + 11 e2e + 7 前端 + Playwright 框架 |
|
||||
| 代码质量 | **95%** | console→Logger,as any 类型化,空 catch 检查 |
|
||||
| 安全审计 | **90%** | JWT 硬编码 / 凭据泄漏 / IDOR / NoSQL 注入 全部修复 |
|
||||
@@ -89,6 +91,18 @@
|
||||
| 文件上传(PDF/图片) | ✅ | ✅ | **完成** |
|
||||
| 结果下载(TXT/HTML) | N/A | ✅ | **完成** |
|
||||
|
||||
### 3.6 面试复盘(新增)
|
||||
| 功能 | 后端 | 前端 | 状态 |
|
||||
|------|------|------|------|
|
||||
| 音频文件上传(MP3/M4A/WAV 等) | ✅ | ✅ | **完成** |
|
||||
| 文本转录粘贴提交 | ✅ | ✅ | **完成** |
|
||||
| whisper.cpp 本地 ASR 转写 | ✅ | N/A | **完成**(tiny + base 模型) |
|
||||
| AI 面试评估(四维评分) | ✅ | N/A | **完成** |
|
||||
| 口语分析(填充词/语速) | ✅ | N/A | **完成** |
|
||||
| 异步处理 + 状态轮询 | ✅ | ✅ | **完成** |
|
||||
| 复盘历史列表/详情/删除 | ✅ | ✅ | **完成** |
|
||||
| ASR mock 回落(whisper 不可用时) | ✅ | N/A | **完成** |
|
||||
|
||||
---
|
||||
|
||||
## 四、测试体系
|
||||
@@ -151,6 +165,7 @@
|
||||
| `progress` | controller + schema + benchmark service | ✅ | 打卡/积分/基准/匹配 |
|
||||
| `contribution` | controller + schema (×2) | ✅ | 面经 + AI 结构化 + 公司题库 |
|
||||
| `schedule` | module + service (×3) | ✅ | VIP 过期 / 每日一题 / 微信 token |
|
||||
| `interview-review` | controller + service + schema + asr service | ✅ | 面试复盘:音频 ASR + AI 评析 + 口语分析 |
|
||||
| `admin` | controller + module | ✅ | 管理后台 |
|
||||
| `email` | module + service | ✅ | 邮件发送 |
|
||||
| `upload` | controller + module | ✅ | 文件上传 |
|
||||
@@ -166,11 +181,12 @@
|
||||
| 面试模拟 | interview/interview | ✅ 多轮对话 + 计时 |
|
||||
| 面试报告 | report/report | ✅ 评分/分析/全文回放/分享卡片 |
|
||||
| 历史记录 | history/history | ✅ 筛选/统计 |
|
||||
| 个人中心 | user/user | ✅ 信息/统计/管理员入口 |
|
||||
| 个人中心 | user/user | ✅ 信息/统计/管理员入口 + 面试复盘入口 |
|
||||
| 会员中心 | member/member | ✅ 套餐对比 + 支付 |
|
||||
| 进步轨迹 | progress/progress | ✅ 雷达图 + 打卡日历 |
|
||||
| 面经贡献 | contribute/contribute | ✅ 表单提交 |
|
||||
| 简历优化 | resume/resume | ✅ 诊断/优化/上传/下载 |
|
||||
| 面试复盘 | review/review | ✅ 三种模式(列表/上传/报告) |
|
||||
| 实习搜索 | internship/internship | ✅ 热门岗位 |
|
||||
| 管理后台 | admin/admin | ✅ 仪表盘 |
|
||||
| 关于/协议/隐私 | about/agreement/privacy | ✅ |
|
||||
@@ -195,4 +211,5 @@
|
||||
| 2026-06-02 | v1.0 | 项目状态初版 | AI |
|
||||
| 2026-06-05 | v2.0 | 战略升级:文档重构 + 新增功能启动 | 小之 |
|
||||
| 2026-06-09 | v4.2 | 冲刺版+每日推送+支付修复+全量代码评审 | AI |
|
||||
| 2026-06-11 | **v4.3** | **安全修复 5 项 + 代码质量 14 处 + 测试体系 61 项 + 护城河 P0-P5 全部验证** | AI |
|
||||
| 2026-06-11 | v4.3 | 安全修复 5 项 + 代码质量 14 处 + 测试体系 61 项 + 护城河 P0-P5 全部验证 | AI |
|
||||
| 2026-06-16 | **v4.4** | **面试复盘功能上线:音频 ASR(whisper.cpp)+ AI 评析 + 口语分析 + 前端三模式页面** | AI |
|
||||
|
||||
+37
-22
@@ -1,8 +1,8 @@
|
||||
# 职引 · 产品路线图 v4.1
|
||||
# 职引 · 产品路线图 v4.2
|
||||
|
||||
> **版本**: v4.1
|
||||
> **日期**: 2026-06-09
|
||||
> **状态**: Phase 0.5 壁垒构建完成,待上线
|
||||
> **版本**: v4.2
|
||||
> **日期**: 2026-06-16
|
||||
> **状态**: Phase 1 MVP 开发已完成,面试复盘上线
|
||||
> **定位**: 应届生/实习生 AI 面试教练
|
||||
|
||||
---
|
||||
@@ -14,13 +14,13 @@ Phase 0: 战略升级(✅ 已完成)
|
||||
↓
|
||||
Phase 0.5: 壁垒构建(✅ 已完成)
|
||||
↓
|
||||
Phase 1: MVP 上线(D7-14)→ 小程序审核 + 内测 + 支付生产
|
||||
Phase 1: MVP 开发(✅ 已完成)→ 面试复盘 + whisper.cpp ASR 集成
|
||||
↓
|
||||
Phase 1.5: 辅助功能 + 商业化(D14-30)→ PMF 验证
|
||||
Phase 1.5: 商业化(D30-60)→ PMF 验证
|
||||
↓
|
||||
Phase 2: 增强 + 题库(D30-60)→ 秋招准备
|
||||
Phase 2: 增强 + 题库(D60-90)→ 秋招准备
|
||||
↓
|
||||
Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发
|
||||
Phase 3: 商业化 + B 端(D90+)→ 秋招爆发
|
||||
```
|
||||
|
||||
---
|
||||
@@ -60,38 +60,50 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发
|
||||
|
||||
---
|
||||
|
||||
## 四、Phase 1:MVP 上线(D7-14,当前阶段)
|
||||
## 四、Phase 1:MVP 开发(✅ 已完成,2026-06-16)
|
||||
|
||||
### 4.1 上线准备
|
||||
### 4.1 面试复盘功能
|
||||
| 任务 | 描述 | 状态 |
|
||||
|------|------|------|
|
||||
| 前端页面完善 | 16 个页面全部就绪 | ✅ 完成 |
|
||||
| 音频文件上传 | 支持 MP3/M4A/WAV 等格式,50MB 上限 | ✅ 完成 |
|
||||
| 文本转录提交 | 直接粘贴面试文本 | ✅ 完成 |
|
||||
| whisper.cpp 本地 ASR | 离线语音转文字,tiny + base 模型 | ✅ 完成 |
|
||||
| AI 面试评析 | 四维评分 + 逐题评估 | ✅ 完成 |
|
||||
| 口语分析 | 填充词检测 + 语速评估 | ✅ 完成 |
|
||||
| 前端三模式页面 | 列表/上传/报告三种视图 | ✅ 完成 |
|
||||
| 个人中心入口 | "面试复盘"菜单项 | ✅ 完成 |
|
||||
|
||||
### 4.2 上线准备
|
||||
| 任务 | 描述 | 状态 |
|
||||
|------|------|------|
|
||||
| 前端页面完善 | 17 个页面全部就绪 | ✅ 完成 |
|
||||
| 微信登录联调 | 真实 appid 验证 | ⏳ 待进行 |
|
||||
| 移除开发绕过 | `member/pay` 直接激活 | ⏳ 待进行 |
|
||||
| 生产环境部署 | 服务器 + MongoDB + Nginx + PM2 | ✅ 服务器已购,域名已配(zhiyinwx → API:3006,zhiyin.yzrcloud → H5 静态目录) |
|
||||
| 生产环境部署 | 服务器 + MongoDB + Nginx + PM2 | ✅ 服务器已购,域名已配 |
|
||||
| 小程序审核提交 | 资质齐全 | ⏳ 待进行 |
|
||||
| 内测版发布 | 邀请码方式,100 人内测 | ⏳ 待进行 |
|
||||
|
||||
### 4.2 内测指标
|
||||
### 4.3 内测指标
|
||||
- **关键指标**: 次日留存 > 30%,7 日留存 > 15%
|
||||
- **反馈收集**: 问卷 + 访谈
|
||||
- **如果达标**: 继续 Phase 1.5
|
||||
|
||||
---
|
||||
|
||||
## 五、Phase 1.5:辅助功能 + 商业化(D14-30)
|
||||
## 五、Phase 1.5:辅助功能 + 商业化(D30-60)
|
||||
|
||||
| 功能 | 描述 | 优先级 |
|
||||
|------|------|--------|
|
||||
| 每日一题定时推送 | 微信订阅消息推送 | P0 |
|
||||
| 冲刺版 ¥49.9/月 | 高客单价 | P1 |
|
||||
| 连续打卡激励 | 7 天解锁高级报告 | P1 |
|
||||
| ASR 生产化调优 | 多模型切换、模型量化、推理优化 | P1 |
|
||||
| 付费转化验证 | 100 内测用户 → 10+ 付费 | P0 |
|
||||
| PMF 决策 | 转化率 > 5% → 继续 | P0 |
|
||||
|
||||
---
|
||||
|
||||
## 六、Phase 2:增强 + 真题库(D30-60,秋招前)
|
||||
## 六、Phase 2:增强 + 真题库(D60-90,秋招前)
|
||||
|
||||
### 6.1 真题库建设
|
||||
| 公司 | 题库规模 | 状态 |
|
||||
@@ -112,7 +124,7 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发
|
||||
|
||||
---
|
||||
|
||||
## 七、Phase 3:商业化 + B 端(D60-90,秋招爆发)
|
||||
## 七、Phase 3:商业化 + B 端(D90+,秋招爆发)
|
||||
|
||||
### 7.1 增长目标
|
||||
- 付费用户突破 1000
|
||||
@@ -140,10 +152,11 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发
|
||||
|--------|------|--------|----------|
|
||||
| M0: 战略升级 | ✅ D1 | 文档 + 定价 | 已完成 |
|
||||
| M0.5: 壁垒构建 | ✅ D7 | 进步轨迹 + 面经贡献 + 每日一题 | 功能可用 |
|
||||
| M1: MVP 上线 | D14 | 小程序审核通过,内测启动 | 100 内测用户 |
|
||||
| M2: PMF 验证 | D30 | 100 用户反馈 | 转化率 > 5% |
|
||||
| M3: 付费上线 | D45 | 冲刺版 + 定时推送 | 50+ 付费用户 |
|
||||
| M4: 秋招冲刺 | D90 | 秋招推广 | 1000+ 付费用户 |
|
||||
| M1: MVP 开发 | ✅ D14 | 面试复盘 + whisper.cpp ASR | 功能可用,build + test 通过 |
|
||||
| M2: 上线内测 | D30 | 小程序审核通过,内测启动 | 100 内测用户 |
|
||||
| M3: PMF 验证 | D60 | 100 用户反馈 | 转化率 > 5% |
|
||||
| M4: 付费上线 | D75 | 冲刺版 + 定时推送 | 50+ 付费用户 |
|
||||
| M5: 秋招冲刺 | D90+ | 秋招推广 | 1000+ 付费用户 |
|
||||
|
||||
---
|
||||
|
||||
@@ -157,8 +170,9 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发
|
||||
|
||||
关键时间点:
|
||||
6月9日:壁垒构建完成,Phase 0.5 交付
|
||||
6月15日:MVP 上线,内测启动
|
||||
7月1日:PMF 验证,付费转化
|
||||
6月16日:面试复盘上线,MVP 开发完成
|
||||
6月30日:MVP 上线,内测启动
|
||||
7月15日:PMF 验证,付费转化
|
||||
8月1日:Phase 2 完成,准备秋招
|
||||
9月1日:秋招旺季,全力推广
|
||||
```
|
||||
@@ -185,3 +199,4 @@ Phase 3: 商业化 + B 端(D60-90)→ 秋招爆发
|
||||
| 2026-06-01 | 重新规划:专注校招 | AI |
|
||||
| 2026-06-05 | 战略升级:三层壁垒 + 新定价 | 小之 |
|
||||
| 2026-06-09 | Phase 0.5 标记完成,调整后续里程碑时间 | AI |
|
||||
| 2026-06-16 | **v4.2**:Phase 1 MVP 开发完成,面试复盘上线,里程碑 M1 完成 | AI |
|
||||
|
||||
Reference in New Issue
Block a user