DeepSeek 用不起了,切换小米 MiMo 搭建语音交互的实战经验
DeepSeek 用不起了切换小米 MiMo 搭建语音交互的实战经验DeepSeek 8/17 起要涨价峰谷价而小米的 MiMomimo-v2.5刚好出来——一个模型覆盖 ASR TTS Vision 文本TTS 限时免费ASR 仅 ¥0.5/小时。能力不差还更便宜。换完之后顺便把语音交互也搭了发现 MiMo 的 ASR/TTS 走 Chat Completions API接入成本很低踩了几个坑记录一下。1. MiMo 多模态能力实测1.1 视觉理解VisionMiMo 的视觉理解能力和其他多模态模型类似通过input_image参数传入图片。这里不展开重点说 ASR 和 TTS。1.2 语音识别ASRMiMo 的 ASR 调用方式和传统方案完全不同。它不走标准的/v1/audio/transcriptions端点调了会 404而是走 Chat Completions 接口。核心要点只能传input_audio不能传text部分。import json, base64, urllib.request API_KEY your-key BASE_URL https://token-plan-cn.xiaomimimo.com/v1 # 读取音频文件并编码为 base64 with open(voice_message.mp3, rb) as f: audio_b64 base64.b64encode(f.read()).decode() data json.dumps({ model: mimo-v2.5-asr, messages: [{ role: user, content: [{ type: input_audio, input_audio: {data: audio_b64, format: mp3} }] }], max_tokens: 2000 }).encode() req urllib.request.Request( f{BASE_URL}/chat/completions, datadata, headers{api-key: API_KEY, Content-Type: application/json} ) with urllib.request.urlopen(req, timeout60) as r: result json.loads(r.read()) text result[choices][0][message][content] print(text)⚠️坑如果 messages 里同时传了text类型的 contentAPI 会报错。MiMo ASR 的 user content 必须只有input_audio不能混入text。这和一些其他多模态模型的用法不同需要注意。成本方面MiMo ASR 按音频时长计费大约 ¥0.5/小时音频对于日常语音消息场景非常划算。1.3 语音合成TTSMiMo 的 TTS 同样走 Chat Completions API模型名是mimo-v2.5-tts。核心要点必须传audio参数否则返回 500 错误。import json, base64, urllib.request data json.dumps({ model: mimo-v2.5-tts, messages: [ {role: assistant, content: 要合成的文本内容} ], audio: {format: mp3, voice: 茉莉} }).encode() req urllib.request.Request( f{BASE_URL}/chat/completions, datadata, headers{api-key: API_KEY, Content-Type: application/json} ) with urllib.request.urlopen(req, timeout120) as r: result json.loads(r.read()) audio_data result[choices][0][message][audio][data] audio_bytes base64.b64decode(audio_data) # 保存音频文件...⚠️坑messages 必须包含assistantrole。文本放在 assistant content 里不是 user content。如果只传 user messageAPI 会报400: messages must contain an assistant role for TTS model。内置音色有茉莉、冰糖等具体列表可查 MiMo 文档。2. 语音交互搭建2.1 ASR 配置在 Hermes 的config.yaml中配置 MiMo ASR 作为 STT providerstt: enabled: true language: zh provider: mimo-asr providers: mimo-asr: command: python3 /path/to/ask_mimo_asr.py --audio {input_path} --out {output_path} format: txt language: zh timeout: 300 type: commandHermes 会在收到语音消息时自动调用这个脚本将音频文件转为文字。注意timeout要给够长语音可能需要几十秒。2.2 TTS 配置TTS 同样通过 command provider 模式接入tts: provider: mimo-tts providers: mimo-tts: command: python3 /path/to/ask_mimo_tts.py --text-file {input_path} --out {output_path} --voice xiaoai output_format: mp3 timeout: 120 type: command voice_compatible: trueHermes 会把要合成的文本写入{input_path}文件脚本读取后调用 MiMo API合成的音频输出到{output_path}。2.3 音色克隆MiMo TTS 支持音色克隆——传入一段参考音频模型会用这个音色来合成新内容。核心原理在 user message 的 content 中传入input_audio参考音频assistant content 放要合成的文本。# 读取参考音频 with open(reference_voice.mp3, rb) as f: ref_audio base64.b64encode(f.read()).decode() # 克隆调用格式 data json.dumps({ model: mimo-v2.5-tts, messages: [ { role: user, content: [ {type: input_audio, input_audio: {data: ref_audio, format: mp3}}, {type: text, text: 用这个声音的音色来说} ] }, {role: assistant, content: 要合成的文本内容} ], audio: {format: mp3} # 注意克隆模式不传 voice 参数 }).encode()实测中我们用小爱同学的语音片段作为参考音频进行克隆效果不错。参考音频的获取流程从视频网站找到目标音色的干净语音片段用yt-dlp下载音频用ffmpeg截取 5-30 秒无背景噪音的片段调用克隆 API 生成音频再用 MiMo 听一下验证相似度⚠️参考音频质量直接影响克隆效果需要干净的人声背景噪音太多会导致音色偏差。3. 多平台接入3.1 QQ Bot 语音消息QQ Bot 原生支持语音消息发送。在 Hermes 中配置 QQ Bot 后语音交互可以直接打通platforms: qqbot: enabled: true extra: app_id: your-app-id client_secret: your-secret dm_policy: pairing group_policy: pairing stt: provider: mimo-asrQQ Bot 支持send_voice()方法TTS 合成的音频可以直接作为语音消息发送。完整的语音交互链路是这样的用户在 QQ 发送语音消息Hermes 收到后调用ask_mimo_asr.py将音频转为文字文本经过 MiMo 模型推理生成回复内容调用ask_mimo_tts.py将回复文本合成为语音通过 QQ Bot 的send_voice()将语音发送给用户全链路都在 MiMo 生态内完成不需要跨多个服务商。下面是实际效果——QQ 上的语音对话截图用户发送语音消息AI 用 MiMo ASR 转录为文字经过推理后用 MiMo TTS 合成语音回复全程自动完成。另外有个常见坑如果dm_policy设为open需要同时设置环境变量GATEWAY_ALLOW_ALL_USERStrue否则 Gateway 会拒绝启动日志里会看到Refusing to start: qqbot has dm_policy/group_policy set to open but neither GATEWAY_ALLOW_ALL_USERS nor QQ_ALLOW_ALL_USERS is enabled这样的报错。3.2 微信语音条为什么不支持微信 Bot API 目前不支持发送语音条——API 层面接受消息但客户端静默丢弃。这是平台限制不是代码问题。目前微信渠道只支持文字消息收发语音交互建议走 QQ Bot。4. 踩坑记录TTS 必须传audio参数不传会返回 500 错误请求体中需包含audio: {format: mp3}ASR 不能传textcontentuser message 只能包含input_audio类型和 Vision 等其他多模态调用方式不同TTS 必须用assistantrole文本放在 assistant content 里放 user 会报 400 错误克隆模式不传voice参数voice只用于内置音色选择克隆模式下传了可能导致意外行为OGG 格式需要转换MiMo TTS 不直接支持 OGG 输出需要先出 WAV 再用 ffmpeg 转换5. 总结MiMo 的统一 API 设计让语音交互搭建变得很简单——ASR TTS Vision 一个模型搞定不用再维护多个 API。目前 TTS 限时免费ASR 仅 ¥0.5/小时性价比很高。如果你也在做类似的语音交互项目可以试试 MiMo。有问题欢迎评论区交流。

相关新闻

7DGroup 开源 dsh-skill-7d-git-commit 插件

7DGroup 开源 dsh-skill-7d-git-commit 插件

文章目录项目信息功能特性项目结构快速开始通过 dsh CLI 安装在 dsh 会话中安装(推荐)构建与测试使用方式提交规范与 GitLab 集成使用集成功能说明背景:为什么要做提交信息校验设计原理:选择 pre-receive 阶段拦截工作原理实践落地…

2026/8/18 10:01:45 阅读更多 →
从零添加你的第一个游戏:Sunshine 应用管理完整指南

从零添加你的第一个游戏:Sunshine 应用管理完整指南

从零添加你的第一个游戏:Sunshine 应用管理完整指南 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 你打开 Sunshine 的 Web 界面,满怀期待地准备串流昨晚刚…

2026/8/18 10:01:45 阅读更多 →
Java企业AI转型实战:技术栈重构与典型场景落地

Java企业AI转型实战:技术栈重构与典型场景落地

1. Java企业向AI应用开发转型的必然性 当ChatGPT引爆全球AI热潮时,许多Java工程师还在纠结Spring Boot的自动配置原理。直到有一天,公司CTO在全员会议上宣布:"明年所有产品线必须接入AI能力",我才猛然意识到——这个曾经…

2026/8/18 10:01:45 阅读更多 →

最新新闻

Windows系统dssenh.dll缺失问题的解决方案与安全警示

Windows系统dssenh.dll缺失问题的解决方案与安全警示

1. 问题现象与背景解析 最近在Windows系统上运行某些程序时,突然弹出"无法启动此程序,因为计算机中丢失dssenh.dll"的错误提示,相信不少用户都遇到过类似情况。这个看似简单的dll文件缺失问题,背后其实涉及到Windows系统…

2026/8/18 12:02:08 阅读更多 →
KMS_VL_ALL_AIO 免费一键激活 Windows 与 Office:从双击到 180 天自动续期的完整指南

KMS_VL_ALL_AIO 免费一键激活 Windows 与 Office:从双击到 180 天自动续期的完整指南

KMS_VL_ALL_AIO 免费一键激活 Windows 与 Office:从双击到 180 天自动续期的完整指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 又是周一。开会前十分钟,你的 Word …

2026/8/18 12:02:08 阅读更多 →
汽车电瓶亏电原因与预防:从寄生负载到充电赤字的全面解析

汽车电瓶亏电原因与预防:从寄生负载到充电赤字的全面解析

1. 一个被忽视的“慢性杀手”:电瓶亏电 很多车主朋友可能都有过这样的经历:车子停了一两天,再启动时,仪表盘灯光昏暗,启动机“哒哒哒”响几声就没了动静,车子彻底趴窝。这时候,大家的第一反应往…

2026/8/18 12:02:08 阅读更多 →
Ubuntu容器安全实战:从可重现构建到供应链防护的全栈解决方案

Ubuntu容器安全实战:从可重现构建到供应链防护的全栈解决方案

Ubuntu容器安全实战:从可重现构建到供应链防护的全栈解决方案 摘要 容器化技术已经成为现代应用开发与部署的主流方式,但随之而来的安全挑战也日益严峻。本文将深入探讨Ubuntu在容器安全领域的创新实践,从可重现构建、签名验证到供应链防护,构建完整的容器安全体系。我们…

2026/8/18 12:02:08 阅读更多 →
系统级虚拟麦克风是怎么“凭空出现“的:obs-virtual-cam 音频链路拆解与三步落地

系统级虚拟麦克风是怎么“凭空出现“的:obs-virtual-cam 音频链路拆解与三步落地

系统级虚拟麦克风是怎么"凭空出现"的:obs-virtual-cam 音频链路拆解与三步落地 【免费下载链接】obs-virtual-cam obs-studio plugin to simulate a directshow webcam 项目地址: https://gitcode.com/gh_mirrors/ob/obs-virtual-cam 元描述&#…

2026/8/18 12:02:08 阅读更多 →
模型训练原理(一):别急着学 Transformer:所谓“训练大模型”,其实就是把一堆数字一点点改对

模型训练原理(一):别急着学 Transformer:所谓“训练大模型”,其实就是把一堆数字一点点改对

这一课先不钻 Transformer 细节,只把训练最底层的主线讲清楚:参数、Loss、Gradient、Optimizer,以及一次 Parameter Update 到底发生了什么。第一次接触大模型的人,很容易走一条弯路。上来先学 Transformer。然后是 Self-Attentio…

2026/8/18 12:01:07 阅读更多 →

日新闻

告别逐帧截图:用 extract-video-ppt 快速提取视频中的 PPT 并一键导出 PDF

告别逐帧截图:用 extract-video-ppt 快速提取视频中的 PPT 并一键导出 PDF

告别逐帧截图:用 extract-video-ppt 快速提取视频中的 PPT 并一键导出 PDF 【免费下载链接】extract-video-ppt extract the ppt in the video 项目地址: https://gitcode.com/gh_mirrors/ex/extract-video-ppt 如果你还停留在"看网课 不停暂停 截图 …

2026/8/18 0:00:57 阅读更多 →
思源宋体TTF一站式上手:7个字重免费商用,从下载到上线的完整走查

思源宋体TTF一站式上手:7个字重免费商用,从下载到上线的完整走查

思源宋体TTF一站式上手:7个字重免费商用,从下载到上线的完整走查 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 你是不是也经历过这种时刻:设计稿里…

2026/8/18 0:00:58 阅读更多 →
华硕笔记本控制权回收指南:GHelper 如何用一个 10MB 文件替代 Armoury Crate

华硕笔记本控制权回收指南:GHelper 如何用一个 10MB 文件替代 Armoury Crate

华硕笔记本控制权回收指南:GHelper 如何用一个 10MB 文件替代 Armoury Crate 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, …

2026/8/18 0:00:59 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/18 9:15:35 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/18 9:06:28 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/18 9:04:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/17 18:54:37 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/17 18:55:16 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/17 18:55:55 阅读更多 →