Files
zhiyin/backend/src/modules/interview-review/interview-review.module.ts
T
wlt 4cd889c081 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
2026-06-16 18:32:25 +08:00

20 lines
689 B
TypeScript

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 {}