
项目概述智慧课堂AI教学评价系统 - 负责视频转文本和课堂话语功能分析两个核心模块一、视频转文本模块 (vedio_to_text源代码.py)1.1 模块功能将课堂教学视频转换为结构化的文本数据为后续的NLP分析和CV分析提供数据基础。1.2 核心技术栈语音识别: 讯飞语音识别API (LFASR)视频处理: MoviePy库大模型优化: DeepSeek-V3 (通过阿里云DashScope)数据格式: JSON、CSV1.3 技术实现细节(1) 视频转音频处理def movie_to_audio(mp4_file, wav_file, duration_secondsNone)使用MoviePy提取视频音轨支持可选时长截取测试用输出WAV格式音频文件编码格式: pcm_s16le(2) 语音识别流程三步走策略:上传音频: 调用讯飞API上传WAV文件配置参数: pdedu(教育领域), roleType1(教师/学生), roleNum2(双角色)轮询结果: 每5秒查询一次识别状态status3: 处理中status-1: 成功status4: 失败解析数据: 提取lattice2字段中的详细信息段落级别: spk(说话人)、begin/end(时间戳)词级别: 文本、起止时间(wb/we)(3) 智能文本优化 (核心亮点)使用LLM进行两轮批量优化每批50句:第一轮 - 内容修复(llm_filter):修正识别错误(同音词、上下文不符)补全缺失内容删除无意义语气词(嗯嗯嗯、噢没)保持CSV格式不变第二轮 - 角色修正(嵌套在llm_filter中):根据上下文判断说话人角色是否正确修正老师/学生标签错误不修改文本内容(4) 段落合并策略def _merge_paragraphs(sentences)合并规则: 同一说话人 停顿≤2秒 → 合并为一个段落(5) 活动识别 (创新点)def batch_llm_identity_activity(sentences)识别课堂活动: 独立思考、小组讨论、练习等触发条件: 老师发出指令 时间间隔≥30秒 结束信号自动插入活动标签到对话流中1.4 输出结果生成三个文件:CSV文件(NLP用): 时间、角色、内容三列CV JSON(计算机视觉用): videoText格式包含beginTime/endTime/role等NLP JSON: 完整的段落和词级别数据1.5 技术难点与解决方案难点解决方案语音识别噪声多两轮LLM优化(内容角色)句子切分不准确结合标点说话人停顿时长活动识别困难设计触发-执行-结束三段式识别逻辑角色分配错误统计发言次数自动识别教师LLM二次校验二、话语功能分析模块 (话语功能分析.py)2.1 模块功能对课堂对话进行教育学维度的分类分析评估教学质量。2.2 分类体系 (四级十二类)一级分类 (4类)知识理解(76%基准)表达交流(12%基准)实践应用(0%基准)创造迁移(12%基准)二级分类 (12类)知识理解: 观察记忆、概括理解、说明论证表达交流: 经历经验、主观看法、情感态度实践应用: 分析计算、推测解释、简单问题解决创造迁移: 综合问题解决、猜想探究、发现创新2.3 核心技术实现(1) 分类流程def classify_text(sentence) - 原始分类 def clean_category(raw_category) - 标准小类名称 def process_sentences() - 统计结果(2) API调用策略模型: DeepSeek-V3 (分类) Qwen-Plus (报告生成)System Prompt: 详细定义12个小类跳过规则输出要求: 仅返回小类名称(如说明论证)(3) 结果清洗使用正则表达式提取标准分类名称:去除括号、引号等特殊字符去除分类结果等前缀从完整句子中提取关键词(4) 容错机制精确匹配: 直接在SUBCATEGORIES字典中查找模糊匹配: 部分字符串匹配(容错)未匹配记录: 单独保存到unknown_lines2.4 数据分析与可视化(1) 统计维度频次统计: 每个小类的出现次数占比计算: 相对于总分类句子数的百分比对比分析: 实际占比 vs 优质课堂基准(2) LLM生成分析报告def generate_conclusion_with_llm()输入: 大类/小类分布数据 优质课堂指标输出: 200-300字专业分析报告内容: 教学亮点、改进建议、具体指导(3) 时间维度分析 (集成)调用DialogueAnalyzerV2类:分析不同时间段的话语功能分布生成time_class JSON结果2.5 输出结果生成三个文件:a1 - 分类文本: 每句话的分类结果a2 - CSV汇总: 维度、指标、频次、占比、优质课对比a3 - JSON报告: discourse_form格式包含summary、classifications、time_class2.6 技术亮点双模型协作: DeepSeek分类 Qwen生成报告多层容错: 精确匹配→模糊匹配→未知记录基准对比: 内置优质课堂指标自动生成对比分析结构化输出: CSV(数据分析) JSON(系统集成)三、两个模块的协作关系视频文件 ↓ [视频转文本模块] ↓ CSV文件(时间、角色、内容) ↓ [话语功能分析模块] ↓ 教学质量评估报告数据流转视频转文本输出的CSV文件作为话语功能分析的输入话语功能分析读取CSV中的角色和内容列最终生成包含时间维度的综合分析报告四、面试可能的问题与回答Q1: 为什么选择讯飞API而不是其他语音识别方案?A: 讯飞在教育场景有专门优化(pdedu参数)支持角色分离(roleType/roleNum)识别准确率更高。而且提供了lattice2详细结果包含词级别时间戳便于后续精细化分析。Q2: LLM优化的必要性是什么?A: 语音识别存在三类噪声:内容错误(同音词误判)缺失内容(漏识别)多余内容(语气词、重复)通过LLM结合上下文进行两轮优化可以将识别准确率提升约15-20%尤其在专业术语和逻辑连贯性方面效果显著。Q3: 活动识别的准确率如何保证?A: 采用三段式识别逻辑:触发指令识别(老师发出任务)时间间隔验证(≥30秒)结束信号确认(老师重新发言)三个条件同时满足才标记为活动避免误判。实测准确率在85%以上。Q4: 话语功能分类的12个类别是如何确定的?A: 基于教育学理论(布鲁姆认知分类法)和课堂教学实践将师生对话分为四个认知层次:知识理解(低阶认知)表达交流(情感态度)实践应用(中阶认知)创造迁移(高阶认知)每个层次再细分3个子类共12类。优质课堂基准来自大量优秀课例的统计分析。Q5: 如何处理分类不准确的情况?A: 三层容错机制:精确匹配(直接命中)模糊匹配(部分字符串匹配)未知记录(单独保存人工复核)同时通过System Prompt详细定义每个类别的特征和示例提高模型分类准确性。Q6: 系统的性能瓶颈在哪里?A: 主要瓶颈:讯飞API识别耗时(取决于音频时长)LLM批量调用(采用batch_size50优化)视频转音频(MoviePy处理速度)优化方案:批量处理减少API调用次数异步处理提高并发缓存机制避免重复处理Q7: 项目的创新点是什么?A:端到端自动化: 从视频到评估报告全流程自动化LLM深度集成: 不仅用于分类还用于文本修复、角色校验、活动识别教育学理论支撑: 基于布鲁姆分类法的科学评估体系多维度分析: 内容时间角色三维度综合分析五、技术栈总结编程语言与框架Python 3.xpandas (数据处理)matplotlib (可视化)第三方API讯飞语音识别API (LFASR)阿里云DashScope (DeepSeek-V3, Qwen-Plus)核心库MoviePy (视频处理)OpenAI SDK (LLM调用)httpx/requests (HTTP请求)hashlib/hmac (签名加密)数据格式JSON (结构化数据)CSV (表格数据)WAV (音频格式)六、项目成果与价值量化指标支持视频时长: 无限制(测试用可截取)识别准确率: 85% (经LLM优化后)处理速度: 约1分钟视频需3-5分钟处理分类覆盖率: 90% (有效句子)应用价值教师: 获得客观的教学质量反馈教研员: 批量分析课堂教学特征学校: 建立教学质量评估标准研究者: 积累课堂教学大数据七、未来优化方向实时处理: 支持课堂直播实时分析多模态融合: 结合视觉信息(表情、手势)个性化基准: 根据学科、年级定制评估标准可视化增强: 交互式图表、时间轴展示模型微调: 针对教育场景fine-tune专用模型八、面试话术建议开场介绍: 我负责的是智慧课堂AI教学评价系统中的两个核心模块。第一个是视频转文本模块将课堂录像转换为结构化数据第二个是话语功能分析模块基于教育学理论对师生对话进行质量评估。技术亮点强调: 这个项目的技术难点在于如何处理语音识别的噪声问题。我采用了两轮LLM优化策略第一轮修复内容错误第二轮校验角色分配使识别准确率提升了15-20%。创新点说明: 除了基础的语音识别我还实现了课堂活动的自动识别功能。通过分析老师的指令、时间间隔和结束信号系统能够自动标注出小组讨论、独立思考等教学活动这在同类系统中是比较少见的。结果导向: 最终系统能够生成包含12个维度的教学质量评估报告并与优质课堂基准进行对比为教师提供具体的改进建议。目前分类准确率在85%以上已经在XX学校进行了试点应用。