How lishuangqiang/ai-meeting works
码上面试平台是一个模块化单体后端,提供简历驱动的模拟面试、AI 对话、工作流智能体、语音媒体能力及用户认证。主流程从简历上传与解析、题目生成,进入多轮提问和答题评估,再形成面试记录与复盘;会话运行态支持恢复。README 描述了模型、工作流和语音集成能力;部分实现未采样,相关连线仅按文档明确的职责呈现。
Main entry points: InterviewSessionController.java 面试接口 · InterviewAnswerPipeline.java 答题评估流程 · AgentController.java 智能体接口 · InterviewSessionRuntimeRehydrateService.java 运行态恢复
Components 29
模拟面试
- 面试接口
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/api/InterviewSessionController.java - 简历解析出题
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/flow/extraction/InterviewQuestionExtractionService.java - 会话管理
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/service/InterviewSessionService.java - 答题编排
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/flow/session/InterviewAgentOrchestrationService.java - 答题评估流程
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/flow/answer/InterviewAnswerPipeline.java - 追问裁决
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/application/rule/InterviewFollowUpRuleService.java - 运行态恢复
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/application/runtime/InterviewSessionRuntimeRehydrateService.java - 状态快照与回放
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/application/runtime/InterviewSessionRuntimeSnapshotService.java - 记录与雷达报告
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/flow/report/InterviewRecordServiceImpl.java - 面试数据存储
admin/src/main/java/com/hewei/hzyjy/xunzhi/interview/dao/repository/InterviewSessionRepository.java
AI 对话
- AI 对话接口
admin/src/main/java/com/hewei/hzyjy/xunzhi/ai/api/AiMessageController.java - 模型处理器选择
admin/src/main/java/com/hewei/hzyjy/xunzhi/ai/service/chat/AiChatHandlerFactory.java - 统一模型处理器
admin/src/main/java/com/hewei/hzyjy/xunzhi/ai/service/chat/UniversalAiChatHandler.java - 对话消息持久化
admin/src/main/java/com/hewei/hzyjy/xunzhi/ai/infrastructure/persistence/AiMessageMongoPersistencePort.java
智能体
- 智能体接口
admin/src/main/java/com/hewei/hzyjy/xunzhi/agent/api/AgentController.java - 智能体配置
admin/src/main/java/com/hewei/hzyjy/xunzhi/agent/service/AgentPropertiesService.java - 业务智能体解析
admin/src/main/java/com/hewei/hzyjy/xunzhi/agent/application/BusinessAgentResolver.java - 智能体会话附件
admin/src/main/java/com/hewei/hzyjy/xunzhi/agent/service/AgentFileAssetService.java
语音媒体
- 语音 WebSocket
admin/src/main/java/com/hewei/hzyjy/xunzhi/common/config/WebSocketConfig.java - 讯飞实时转写
admin/src/main/java/com/hewei/hzyjy/xunzhi/media/infrastructure/integration/XunfeiAudioService.java
身份与权限
- WebSocket 鉴权
admin/src/main/java/com/hewei/hzyjy/xunzhi/auth/infrastructure/websocket/SaTokenWebSocketAuthService.java - 登录会话
admin/src/main/java/com/hewei/hzyjy/xunzhi/auth/infrastructure/satoken/SaTokenLoginSessionService.java - 当前用户服务
admin/src/main/java/com/hewei/hzyjy/xunzhi/auth/application/CurrentUserService.java
Other components
- 候选人
- Redis
- MongoDB
- 兼容模型服务
- 星云工作流服务
- 讯飞语音服务
Connections 30
- 候选人 → 面试接口: 发起面试请求
- 面试接口 → 会话管理: 创建与管理
- 面试接口 → 简历解析出题: 上传简历
- 简历解析出题 → 业务智能体解析: 请求出题智能体
- 业务智能体解析 → 星云工作流服务: 调用工作流
- 面试接口 → 答题编排: 提交回答
- 答题编排 → 答题评估流程: 执行答题流程
- 答题评估流程 → 业务智能体解析: 请求评分与追问
- 答题评估流程 → 追问裁决: 裁决追问
- 答题评估流程 → 运行态恢复: 确保运行态
- 运行态恢复 → 状态快照与回放: 恢复或保存状态
- 状态快照与回放 → MongoDB: 读写快照与回合
- 运行态恢复 → Redis: 读写运行缓存
- 会话管理 → 面试数据存储: 读写会话
- 面试接口 → 记录与雷达报告: 查询面试报告
- 候选人 → AI 对话接口: 发送对话
- AI 对话接口 → 模型处理器选择: 选择处理器
- 模型处理器选择 → 统一模型处理器: 分派请求
- 统一模型处理器 → 兼容模型服务: 流式模型调用
- AI 对话接口 → 对话消息持久化: 持久化与回溯消息
- 对话消息持久化 → MongoDB: 读写消息
- 候选人 → 智能体接口: 管理或对话
- 智能体接口 → 智能体配置: 维护配置
- 智能体接口 → 智能体会话附件: 上传附件
- 智能体接口 → 星云工作流服务: 发起工作流对话
- 候选人 → 语音 WebSocket: 建立语音连接
- 语音 WebSocket → WebSocket 鉴权: 校验连接身份
- 语音 WebSocket → 讯飞实时转写: 转发音频流
- 讯飞实时转写 → 讯飞语音服务: 实时识别
- 登录会话 → 当前用户服务: 验证令牌