mimo-v2-5-tts

MiMo V2.5 TTS 语音合成。使用小米 MiMo V2.5 TTS 系列模型生成语音。当需要将文字转为语音、发送语音消息、朗读内容、或用户要求「说出来」「语音回复」时激活此 skill。支持预置音色、音色设计、音色克隆三种模式,支持自然语言控制、导演模式,支持语气、情绪、方言的风格标签控制,预置音色支持唱歌。

By xiaomimimo · 612 installs

npx skills add xiaomimimo/mimo-skills --skill mimo-v2-5-tts

Source repository · Upstream listing

MiMo V2.5 TTS 使用小米 MiMo V2.5 TTS 系列模型生成语音。支持中英文、预置音色、音色设计、音色克隆、情绪风格、方言、唱歌。 脚本目录: $SKILLS PATH/mimo v2 5 tts/scripts/ $SKILLS PATH 说明: skills 目录路径,因部署环境而异。 模型选择 V2.5 系列提供三种模型,根据使用场景选择: 模型 ID 用途 音色来源 特殊能力 mimo v2.5 tts 预置音色语音合成 内置精品音色 支持唱歌 mimo v2.5 tts voicedesign 文本描述定制音色 文本描述生成 — mimo v2.5 tts voiceclone 音频样本复刻音色 音频样本 — 选择建议: 需要快速生成语音、需要唱歌功能 → mimo v2.5 tts (预置音色) 需要独特音色 → mimo v2.5 tts voicedesign (文本描述生成) 需要模仿特定声音 → mimo v2.5 tts voiceclone (音频样本复刻) 注意: TTS 有随机性,同样输入的效果可能不同,用户有需要时可以多生成几次以供挑选。 环境依赖 环境变量 说明 必需 MIMO API KEY MiMo API 密钥(MiMo 开放平台获取) 是 依赖 说明 必需 python3 运行脚本 是 openai pip install openai 是 ffmpeg 转换格式、长文本分段拼接 仅转换、拼接场景使用 curl 调用飞书 API 仅飞书发送使用 预置音色 使用 mimo v2.5 tts 模型时必须明确指定音色,你可以提醒用户有哪些音色可选,或根据内容语言和风格选择合适音色。 音色名 Voice ID 语言 性别 风格 冰糖 冰糖 中文 女性 活泼少女 茉莉 茉莉 中文 女性 知性女声 苏打 苏打 中文 男性 阳光少年 白桦 白桦 中文 男性 成熟男声 Mia Mia English Female Lively girl Chloe Chloe English Female Sweet Dreamy Milo Milo English Male Sunny boy Dean Dean English Male Steady Gentle 自然语言控制 所有模型都支持自然语言控制。 通过自然语言描述让模型理解并生成对应风格的语音。所有模型均可通过 context 参数传入自然语言控制指令: mimo v2.5 tts 和 mimo v2.5 tts voiceclone 可用于调整指定音色下的语气情绪等风格; mimo v2.5 tts voicedesign 则通过这个选项同时控制音色和风格。 能力特点: 多风格切换 :同一段语音内完成播报 → 低语 → 嘶吼的风格转场 多情绪混合 :支持"压抑的愤怒"、"带着哽咽的笑意"等复合情绪 多粒度控制 :段落级 → 句子级 → 词级 → 字粒度都可指定 示例: 导演模式 自然语言控制的一种特殊用法是「导演模式」,即从角色、场景、指导三个维度全方位刻画人物与声线: 【角色】 人物身份、性格底色、外形气质与说话习惯 【场景】 此刻发生了什么、和谁说话、情绪位置 【指导】 语速、气息、停顿、重音、共鸣位置、音色质感、情绪起伏 导演模式示例: 导演模式适合对语音表演要求较高的场景,例如角色配音、影视级内容生成等。 音频标签控制 mimo v2.5 tts 和 mimo v2.5 tts voiceclone 支持音频标签控制。 mimo v2.5 tts voicedesign 暂不支持,如需控制风格请通过 context 写更详细的描述。 在文本任意位置用括号描述语气、情绪或能发出声音的动作,实现句内切换。括号内必须是声音相关内容(如语气、情绪、叹气、打哈欠、咳嗽),不能是身体动作(如转身、坐下、挥手)。 中文支持全角 () 、半角 () 、方括号 [] 三种括号,英文支持半角 () 、方括号 [] 两种括号。 括号可以放在文本 任意位置 (开头、中间、结尾都行),可描述:语气、情绪、呼吸、笑声、哭声、喘息、咳嗽、打哈欠、叹气等能发出声音的内容。注意不能写身体动作(如转身、坐下、挥手)。 整体风格标签 整体风格标签是音频标签控制的一种情况,在目标文本开头添加 (风格) 标签,指定整段语音的发音风格。 格式示例: (风格1 风格2)待合成内容 唱歌: 必须在最开头添加 (唱歌) 标签,格式为: (唱歌)歌词 。标签内标识支持: 唱歌 、 sing 、 singing 。 类别 常用风格 基础情绪 开心 悲伤 愤怒 恐惧 惊讶 兴奋 委屈 平静 冷漠 复合情绪 怅然 欣慰 无奈 愧疚 释然 嫉妒 厌倦 忐忑 动情 整体语调 温柔 高冷 活泼 严肃 慵懒 俏皮 深沉 干练 凌厉 音色定位 磁性 醇厚 清亮 空灵 稚嫩 苍老 甜美 沙哑 醇雅 人设腔调 夹子音 御姐音 正太音 大叔音 台湾腔 方言 东北话 四川话 河南话 粤语 角色扮演 孙悟空 林黛玉 唱歌 唱歌 经典组合: (怅然) 这么多年过去了... 、 (慵懒) 再让我睡五分钟... 、 (磁性) 夜已经深了... 、 (东北话) 哎呀妈呀... 、 (粤语) 呢个真係好正啊... 音色描述编写 当使用 mimo v2.5 tts voicedesign 进行文本描述定制音色时,需要编写一段简短的音色描述,指导模型生成符合预期特质的声音,和自然语言控制共用 context 参数输入。音色描述的写作要求如下: 音色描述是嗓子的身份卡。只描写这副声音本身长什么样——不写场景、不写动作、不写这次要说什么。写得越凝练,越容易跨场景复用。 必写项: 1. 身份锚点: 年龄段 + 性别。决定基频,是所有特质的基础。 2. 声音质感: 气息走向、共鸣位置、吐字与音色底色。用可感的动词或比喻,不要堆形容词。 3. 语速节奏: 稳 / 快 / 慢 / 忽快忽慢 / 连珠带顿挫。 4. 情绪底色: 嗓子默认状态(高亢 / 松弛 / 温软 / 克制)。 可选项(强烈推荐): 5. 风格/身份标签: 一笔带过的职业或风格锚点,模型秒懂。例:拍卖师风格 / 美食评论家风格 / 播音员风格 / 法庭陈词风格。 6. 辨识度小癖好: 一个让人一耳朵记住的习惯。例:偶尔闭眼吸气 / 字尾带颤音 / 笑起来是胸腔闷笑。 硬约束: 一到两句话,白描式,不分段、不列条。 不写场景("在发布会""值夜班")。 不写动作("她走上舞台")。 不用真实演员或 IP 角色名(版权 + 泛化差)。 默认普通话或英文;方言仅在明确需要时加。 音色描述样例: 内容与标签增强 当用户没有直接提供要念的文本时,你应该根据角色扮演、创作等具体情况,自行编写要合成的文本。 当用户仅提供了要念的文本而不包含语气情绪细节的时候,你应该根据实际情况,微调文本并插入合适的标签。 硬规则: 1. 文本情绪必须和音色底色契合。 温软奶奶不怒吼,拍卖师不深夜独白。 2. 长度 2–5 句,一整段。 太短模型立不住节奏,微妙声线特质也出不来。 3. 标签是调味,不是主菜。 该停就停、该笑就笑,不要堆砌。同一句话最多一个标签。 4. 标点有表演意义: 省略号 = 停顿 / 破折号 = 被打断或拖音 / ALL CAPS = 强调。 5. 标签语言跟随正文。 中文正文配中文标签,英文正文配英文标签,禁止混用。 推荐标签(中文用 [标签] ): 类别 常用标签 节奏 [停顿] [长停顿] [急促] [拖音] [语速加快] [语速放缓] 情绪 [轻声] [低语] [叹气] [吸气] [哽咽] [强调] [笑] [爽朗大笑] 其他 [欲言又止] [碎碎念] [沉默片刻] 推荐标签(英文用 [tag] ): Category Common Tags Pacing [pause] [long pause] [fast] [slow] [drawn out] Emotion [whispering] [sighs] [inhale] [choked up] [emphasis] [laughs] [hearty laugh] 配对样例: Python 脚本用法 三个模型分别对应三个脚本,根据需求选择: 脚本 模型 用途 mimo tts.py mimo v2.5 tts 预置音色语音合成 mimo tts voicedesign.py mimo v2.5 tts voicedesign 文本描述定制音色 mimo tts voiceclone.py mimo v2.5 tts voiceclone 音频样本复刻音色 预置音色语音合成(mimo tts.py) 预置音色 + 自然语言风格控制 预置音色 + 音频标签控制 音色设计(mimo tts voicedesign.py) 技巧: 可以将 Voice Design 生成的音频保存下来,后续作为 mimo tts voiceclone.py 的 voice file 输入,实现「设计 → 克隆」的工作流:先用文本描述( context )生成满意的音色,再用该音频作为样本克隆到其他文本。克隆时也可通过 context 添加导演模式指令。 音色克隆(mimo tts voiceclone.py) 注意: 音色样本 Base64 编码不超过 10 MB,仅支持 mp3 和 wav 格式。 音色克隆 + 导演模式 唱歌 注意: 唱歌歌词要完整,残缺歌词会导致跑调、效果差。 英文 + 音频标签 长文本处理 V2.5 对长文本的支持较好, 建议几乎所有场景都一次性生成 ,无需手动分段。仅当文本超过 2500 字 时,才需要考虑分段合成再拼接。 分段合成方法:按句号/段落自然切分,每段独立生成 wav,再用 ffmpeg 拼接: 飞书语音消息发送 注意: 仅当用户需要将 TTS 生成的语音发送到飞书时才需要使用此功能。 将 TTS 生成的 WAV 发送到飞书,一条命令完成:生成 → 转码 → 上传 → 发送。 为什么不用 message tool: 飞书语音消息需要调用 /im/v1/messages 接口( msg type: audio ),且需先上传音频获取 file key 。很多工具的 message tool( asVoice: true )在飞书 channel 上未实现此逻辑,会将音频当作普通附件发送(用户看到的是文件而非语音条)。 feishu send audio.sh 完成了完整的上传 + 发送流程,不可替换为 message tool。 环境依赖 环境变量 来源 说明 FEISHU APP ID 飞书开放平台 应用 App ID FEISHU APP SECRET 飞书开放平台 应用 App Secret 依赖 说明 必需 ffmpeg WAV 转 Opus、获取音频时长 是 curl 调用飞书 API 是 用法 私聊发送(open id) 群聊发送(chat id) feishu send audio.sh 内部流程: wav → opus (ffmpeg) → 获取 tenant access token → 上传音频文件 → 发送 audio 消息 。