牛牛说 tts

July 31, 2026 · View on GitHub

群内把文字念成语音。需要 TTS 时安装;依赖 Pallas-Bot-AI(AI Runtime),与普通 @牛牛 聊天无关。

类型:官方插件(需安装)

安装

控制台插件商店,或:

uv run pallas ext install pallas-plugin-ai-media

另需部署 Pallas-Bot-AI,并在控制台配置媒体服务与 TTS 音色。见 LLM 对话、媒体与 AI Runtime

用法

命令 / 触发场景说明
牛牛说 〈文本〉群内侧车 TTS 合成语音(「牛牛说」后须有空格
@牛牛 里明确要求念 / 读出来群内可走 LLM 工具 tts.speak(须开启工具与 soft recall)

精确命令与「何人可用」以群内 牛牛帮助 为准。

不要用「牛牛说啥呢」这种粘连句当命令——中间没空格时不会当「牛牛说」处理,以免挡住正常闲聊。

酒后自动跟语音(可选)

与手动「牛牛说」分开:醉酒搭话出字后,可再 enqueue 一条 TTS(先文字、后语音)。

在控制台 智能对话(或 CHAT_TTS_* / DRUNK_TTS_*)配置:

默认说明
CHAT_TTS_ENABLE总开关
DRUNK_TTS_MIN_DRUNKENNESS1该牛本群醉酒度下限(见 drink
DRUNK_TTS_MIN_CHARS6本次酒后回文最短字数

还须:本插件启用、TTS_ENABLE=true、媒体服务与音色可用。未达标时只出字、不报错。

命令权限(代码默认)

命令 ID默认等级
tts.speak所有人

实际生效等级以控制台「命令权限」为准。面向用户的 usage 不要写死角色名。

配置

推荐在控制台 AI 配置 → 媒体

面板配置什么
媒体服务 · 连接服务地址与 Bearer Token(同步 AI_SERVER_* / TTS_API_TOKEN
TTS侧车参考音色默认;中翻日开关与百度/有道密钥(单独「保存翻译配置」);嵌入插件配置(启停、通路、超时、字数)

pallas-plugin-ai-media 4.3.0 起,插件页不再展示服务地址 / Bearer / endpoint(由媒体连接统一管理)。接口默认仍为 /v1/tts

翻译落盘在 AI Runtime 的 data/media_models.jsontranslator 段);控制台未保存过时回退 AI 侧 .envTRANSLATOR_*。开启且译成功后自动按日语合成(不必把「合成语种」改成日);译失败则保留原文并按「合成语种」念——中文输入请保持合成语种为中文,避免中文被按日语切分。

保存后写入 data/pallas_config/webui.json(Bot)与 AI 侧 media_models.json(音色/翻译)。

排障

现象处理
「牛牛说」无语音确认插件已启用、AI Runtime 在线、/callback 可达;媒体连接 Bearer 与 AI 侧 PALLAS_AI_API_TOKEN 一致;命令中间是否有空格
「牛牛说啥呢」却出声已改为前缀后须空白;升级 ai-media 后应不再误触发
@ 让念出来只回文字确认 LLM_TOOLS_ENABLED / soft recall;hints 含「念出来」「把你的话」等;被回复原文应作为工具 text
语音听感截断 / 怪查控制台 TTS「中翻日」与合成语种:译失败不应再强行按日语合成;音色默认与 prompt 语言是否匹配
提示云端未接入将「语音通路」改为侧车

源码

扩展仓 pallas-plugin-ai-media 中的 tts 目录。

仓库:Plugin-Ai-Media

相关链接