先说明一个前提:如果你正在研究如何给 NotebookLM 更换语音引擎,希望生成的播客声音更自然、更符合人物设定,甚至带一点方言特色——那么官方网页版基本不用再尝试了。这条路目前走不通。
想绕过封闭的 TTS 语音合成链路,真正实现自定义替换,只有本地部署的开源方案更靠谱。目前能够自由切换 TTS 引擎的,主要就是 Local-NotebookLM 和 NotebookLlama。前者通过修改配置文件即可切换到 Bark,后者则可以通过调整 ParlerTTS 模型路径或 speaker embedding 来更换音色。

先确认你使用的是哪个版本
官方 NotebookLM(也就是 notebooklm.google.com)——并没有开放 TTS 引擎的自定义权限。所有音频基本都由 Fireworks AI 托管的 MeloTTS 负责生成,在设置面板中来回查看,也只有语种、语调、时长这几个选项,Bark 或 ParlerTTS?目前无法直接使用。只有 Local-NotebookLM、NotebookLlama 这类本地开源部署版本,才支持自定义 TTS 后端与语音模型。
所以,如果你现在还在官方网页端反复查找设置入口,可以直接停下来——这一步目前没有实际效果。
Local-NotebookLM切换到Bark引擎
Local-NotebookLM 可以理解为官方 NotebookLM 功能的本地开源复刻版本,核心文件 make_audio.py 中专门预留了 TTS 模型接口。切换到 Bark 的步骤其实并不复杂:
第一步,打开项目根目录下的config.json,找到"tts_engine"字段;
第二步,把它的值从"melo"改成"bark",然后保存配置文件;
第三步,确认系统中已经安装 bark 库及相关依赖——执行pip install git+https://github.com/suno-ai/bark.git,同时注意 Python 版本需≥3.9,并且环境要兼容 CUDA 12.1;
第四步,启动服务前,在终端中执行export BARK_OFFLINE=True。这一步非常关键,否则 Bark 可能会尝试联网下载大模型权重,导致运行过程卡住;
第五步,运行python app.py,上传 PDF 后生成的音频就会改由 Bark 进行语音合成。多说话人、背景音效、情绪语调等 Bark 的原生能力,此时都可以正常启用。
NotebookLlama中启用ParlerTTS
NotebookLlama 是 Meta 推出的完整 PDF 转播客流程方案,TTS 模块被独立封装在第 4 个 Jupyter Notebook 中,同时支持 ParlerTTS 和 Bark 两种语音生成路径。
方法一:直接修改Notebook第4页单元格
定位到!pip install parler-tts所在单元格下方,找到tts_model = ParlerTTSForConditionalGeneration.from_pretrained("parler-tts/parler-tts-mini-v1")这一行;
把模型路径替换为"parler-tts/parler-tts-mini-v1"(标准版)或"parler-tts/parler-tts-large-v1"(高保真版本)。需要注意的是,后者通常至少需要 16GB 显存才能稳定运行。
方法二:动态加载不同speaker
ParlerTTS 依赖 speaker embedding 来控制不同音色。你需要提前下载对应的 speaker 文件——前往 Hugging Face Hub 搜索parler-tts-speakertoken,下载speaker_token.pt,并放入notebookllama/tts/speakers/目录;
运行时传入参数--speaker_id "female_english_1",即可绑定指定声线,实现更细致的角色配音效果。
【特别提醒:ParlerTTS 要求 transformers ≤4.43.3,而前面的 LLM 步骤通常需要 ≥4.45.0。因此必须在 TTS 单元格开头加入%pip install transformers==4.43.3,并在安装后重启内核,否则大概率会直接报错】
