AI智能体项目实战记录(16):进阶学习 —— 添加语音识别功能,实现快速提问 发布时间:2026/11/2 12:50:44 AI智能体项目实战记录(16):进阶学习 —— 添加语音识别功能,实现快速提问1. 引言1.1 为什么给问答系统加语音前 15 篇我们完成了多智能体编排、技能选择、调用日志等能力,交互方式一直是"打字提问"。但在真实场景里:移动端打字慢,语音更自然;用户问题较长时,说话比输入快;客服/巡检等场景需要"说完即问"。所以这一篇给系统补上语音提问:按住麦克风 → 说话 → 松开 → 自动识别成文字并发送给主管智能体。1.2 方案选型风暴在动手前,先把可选方案摆出来对比:方案优点缺点适用浏览器 Web Speech API零依赖、接入最快多数浏览器实际走云端、离线不可用、各端行为不一致快速验证云端 ASR(讯飞/阿里/腾讯等)识别率高、模型维护成本低按量计费、依赖网络、音频出内网有合规风险对准确率要求极高本地模型(SenseVoiceSmall + sherpa-onnx)离线、免费、数据不出内网、CPU 可跑首次加载模型占内存、需要自己准备模型文件私有化/内网项目本项目选择本地 SenseVoiceSmall + sherpa-onnx,原因:系统本身已经私有化部署,音频不适合出内网;SenseVoiceSmall 支持中/英/日/韩/粤语,覆盖主要场景;sherpa-onnx 提供现成的 ONNX 推理封装,CPU 上 int8 模型速度可接受;不引入新的云服务账号与费用。1.3 几个名词先说明ONNX:一种跨框架的模型格式,PyTorch/训练框架导出的模型可以用 ONNX Runtime 推理;sherpa-onnx:基于 ONNX Runtime 的语音识别/合成工具库,封装了流式与非流式识别器;SenseVoiceSmall:多语言语音识别模型,输出带标点的文本;ITN(Inverse Text Normalization):把口语化的数字/单位转成书面形式,例如"一百二十"→"120";PCM:未压缩的音频采样数据;本项目统一转成16kHz、单声道、float32([-1, 1])。1.4 端到端链路LangGraphasr_serviceFastAPI浏览器用户LangGraphasr_serviceFastAPI浏览器用户按住麦克风,开始说话MediaRecorder 收集 audioChunks松开,结束录音 相关新闻 【I2C设备驱动专题】概念介绍、与LM75、BH1750传感器实现 文章目录前言一、核心属性二、I2C的时序三、I2C寻址体系四、Linux中的I2C子系统4.1 I2C子系统相关概念4.2 I2C子系统结构框架图4.3 I2C子系统中重要的结构体4.4 I2C相关函数五、LM75温度传感器5.1 LM75相关参数5.2 LM75驱动编写5.2.1 设备树节点添加5.2.1 驱动代码编写六、BH17… 2026/11/2 12:15:24 管线入地,管理上线:81页方案拆解城市综合管廊怎么建怎么管 先讲一个大家都不陌生的画面。一条新修好的马路,通车不到半年,又围起来了。挖开、埋管、回填、再铺沥青。过段时间旁边一段又挖。反复开挖,市政管线的损毁事故也跟着来。这就是没有综合管廊的城市日常。城市综合管廊,就是把这些电… 2026/11/1 15:21:51 【Linux】 权限篇(三):深入理解 umask 位运算与粘滞位的设计思想 一、引言:Linux 为什么要控制默认权限? 在前两篇中,我们学习了 Linux 的文件属性、基本权限,以及如何使用 chmod、chown 和 chgrp 修改权限。 但还有两个问题值得继续思考: 使用 touch 创建一个文件时,我们… 2026/11/1 12:38:33 最新新闻 量子程序跨芯片编译技术解析与实践 1. 量子程序跨芯片编译概述量子计算作为下一代计算范式,其硬件实现呈现出多样化发展态势。不同厂商的量子芯片在架构设计、量子门集支持、拓扑连接等方面存在显著差异,这使得量子程序的可移植性成为亟待解决的关键问题。QProg作为QPanda量子计算框架中的… 2026/11/2 13:51:37 企业AI落地关键不在大模型,而在AI应用底座——QuickBlue深度解析 最近帮一家制造企业做内部AI客服项目,前期聊得很好,我说你们需要个大模型API,他们说行,结果一周之后问题全来了:同一个PDF文档,三个模型解析出来的字段对不上;销售和财务看到的回复内容居然一样… 2026/11/2 13:51:37 OpenCode与oh-my-opencode插件:AI编程辅助全指南 1. OpenCode与oh-my-opencode插件概述OpenCode作为一款新兴的开源代码编辑器,正在开发者社区中快速流行。它最大的特色在于原生支持AI编程辅助功能,而oh-my-opencode插件则是专门为OpenCode设计的增强工具包,能够显著提升开发效率。这个插件集… 2026/11/2 13:51:37 基于AT89C52与DS18B20的数字温度计报警显示设计 简介:这份毕业论文文档围绕基于单片机的数字温度计设计展开,面向电子、自动化及相关专业需要完成课程设计或毕业设计的学生,提供从选题背景、系统方案到软硬件实现的参考。内容以DS18B20智能温度传感器和AT89C52单片机为核心,涵盖… 2026/11/2 13:51:37 构建产品商业护城河的三步法与评估框架 1. 为什么产品需要商业护城河?在当今高度竞争的商业环境中,产品同质化现象日益严重。我见过太多优秀的产品因为缺乏有效的竞争壁垒,最终被市场淘汰或被迫陷入价格战的泥潭。商业护城河不是奢侈品,而是产品生存的必需品。护城河的本… 2026/11/2 13:51:37 etcd v3.5 实战:集群部署、etcdctl、Raft/MVCC 排障 简介:《etcd实战及其原理分析》是一份面向后端开发、运维及分布式系统学习者的PDF技术资料,基于etcd v3.5梳理从入门到原理的完整知识框架,可用于理解强一致键值存储、服务发现、分布式锁、队列与主备选举等典型场景。压缩包共1个PDF文件&… 2026/11/2 13:48:37 日新闻 雷达数据处理平台化实践:从回波到航迹的链路设计与工程优化 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:00:59 从告警轰炸到精准预警:PLFM_RADAR平台监控雷达实践 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:00:59 SPI通信隔离实战:MAX14431BAEE+数字隔离器与PIC24FJ256GA705方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:00:59 周新闻 DRV8818+MK20DX128步进电机驱动方案:从电路到固件实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:39 DRV8818PWPR+PIC18LF46K40双极步进电机驱动实战指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:19 DRV8818PWPR与MK20DX128VFM5工业级双极步进控制协同设计 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:11 月新闻 DRV8818+MK20DX128步进电机驱动方案:从电路到固件实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:39 DRV8818PWPR+PIC18LF46K40双极步进电机驱动实战指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:19 DRV8818PWPR与MK20DX128VFM5工业级双极步进控制协同设计 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:11
【I2C设备驱动专题】概念介绍、与LM75、BH1750传感器实现 文章目录前言一、核心属性二、I2C的时序三、I2C寻址体系四、Linux中的I2C子系统4.1 I2C子系统相关概念4.2 I2C子系统结构框架图4.3 I2C子系统中重要的结构体4.4 I2C相关函数五、LM75温度传感器5.1 LM75相关参数5.2 LM75驱动编写5.2.1 设备树节点添加5.2.1 驱动代码编写六、BH17… 2026/11/2 12:15:24
管线入地,管理上线:81页方案拆解城市综合管廊怎么建怎么管 先讲一个大家都不陌生的画面。一条新修好的马路,通车不到半年,又围起来了。挖开、埋管、回填、再铺沥青。过段时间旁边一段又挖。反复开挖,市政管线的损毁事故也跟着来。这就是没有综合管廊的城市日常。城市综合管廊,就是把这些电… 2026/11/1 15:21:51
【Linux】 权限篇(三):深入理解 umask 位运算与粘滞位的设计思想 一、引言:Linux 为什么要控制默认权限? 在前两篇中,我们学习了 Linux 的文件属性、基本权限,以及如何使用 chmod、chown 和 chgrp 修改权限。 但还有两个问题值得继续思考: 使用 touch 创建一个文件时,我们… 2026/11/1 12:38:33
量子程序跨芯片编译技术解析与实践 1. 量子程序跨芯片编译概述量子计算作为下一代计算范式,其硬件实现呈现出多样化发展态势。不同厂商的量子芯片在架构设计、量子门集支持、拓扑连接等方面存在显著差异,这使得量子程序的可移植性成为亟待解决的关键问题。QProg作为QPanda量子计算框架中的… 2026/11/2 13:51:37
企业AI落地关键不在大模型,而在AI应用底座——QuickBlue深度解析 最近帮一家制造企业做内部AI客服项目,前期聊得很好,我说你们需要个大模型API,他们说行,结果一周之后问题全来了:同一个PDF文档,三个模型解析出来的字段对不上;销售和财务看到的回复内容居然一样… 2026/11/2 13:51:37
OpenCode与oh-my-opencode插件:AI编程辅助全指南 1. OpenCode与oh-my-opencode插件概述OpenCode作为一款新兴的开源代码编辑器,正在开发者社区中快速流行。它最大的特色在于原生支持AI编程辅助功能,而oh-my-opencode插件则是专门为OpenCode设计的增强工具包,能够显著提升开发效率。这个插件集… 2026/11/2 13:51:37
基于AT89C52与DS18B20的数字温度计报警显示设计 简介:这份毕业论文文档围绕基于单片机的数字温度计设计展开,面向电子、自动化及相关专业需要完成课程设计或毕业设计的学生,提供从选题背景、系统方案到软硬件实现的参考。内容以DS18B20智能温度传感器和AT89C52单片机为核心,涵盖… 2026/11/2 13:51:37
构建产品商业护城河的三步法与评估框架 1. 为什么产品需要商业护城河?在当今高度竞争的商业环境中,产品同质化现象日益严重。我见过太多优秀的产品因为缺乏有效的竞争壁垒,最终被市场淘汰或被迫陷入价格战的泥潭。商业护城河不是奢侈品,而是产品生存的必需品。护城河的本… 2026/11/2 13:51:37
etcd v3.5 实战:集群部署、etcdctl、Raft/MVCC 排障 简介:《etcd实战及其原理分析》是一份面向后端开发、运维及分布式系统学习者的PDF技术资料,基于etcd v3.5梳理从入门到原理的完整知识框架,可用于理解强一致键值存储、服务发现、分布式锁、队列与主备选举等典型场景。压缩包共1个PDF文件&… 2026/11/2 13:48:37
雷达数据处理平台化实践:从回波到航迹的链路设计与工程优化 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:00:59
从告警轰炸到精准预警:PLFM_RADAR平台监控雷达实践 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:00:59
SPI通信隔离实战:MAX14431BAEE+数字隔离器与PIC24FJ256GA705方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:00:59
DRV8818+MK20DX128步进电机驱动方案:从电路到固件实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:39
DRV8818PWPR+PIC18LF46K40双极步进电机驱动实战指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:19
DRV8818PWPR与MK20DX128VFM5工业级双极步进控制协同设计 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:11
DRV8818+MK20DX128步进电机驱动方案:从电路到固件实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:39
DRV8818PWPR+PIC18LF46K40双极步进电机驱动实战指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:19
DRV8818PWPR与MK20DX128VFM5工业级双极步进控制协同设计 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … 2026/11/2 1:18:11