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:
@@ -0,0 +1,19 @@
|
||||
import { Module } from '@nestjs/common'
|
||||
import { MongooseModule } from '@nestjs/mongoose'
|
||||
import { InterviewReviewController } from './interview-review.controller'
|
||||
import { InterviewReviewService } from './interview-review.service'
|
||||
import { InterviewReview, InterviewReviewSchema } from './interview-review.schema'
|
||||
import { AsrService } from './asr.service'
|
||||
import { AiModule } from '../ai/ai.module'
|
||||
|
||||
@Module({
|
||||
imports: [
|
||||
MongooseModule.forFeature([
|
||||
{ name: InterviewReview.name, schema: InterviewReviewSchema },
|
||||
]),
|
||||
AiModule,
|
||||
],
|
||||
controllers: [InterviewReviewController],
|
||||
providers: [InterviewReviewService, AsrService],
|
||||
})
|
||||
export class InterviewReviewModule {}
|
||||
Reference in New Issue
Block a user