Finrandojin/alexandria-audiobook
AI-powered multi-voice audiobook generator — LLM script annotation, voice cloning, voice design, LoRA training, per-line style control, and export to MP3, chaptered M4B, or Audacity multi-track. Built on Qwen3-TTS.
Alexandria 有声书生成器
是什么 – 一个可在本地运行的网页应用程序,可将纯文本书籍(.txt、.md、.epub)转换为功能完整的有声书。它将 LLM 驱动的脚本注释步骤与内置的 Qwen-3 文本转语音(TTS)引擎结合,允许您为每个角色分配不同的合成语音,逐行编辑脚本,并将结果导出为单个 MP3、带章节的 M4B 文件,或用于 Audacity 的每角色 WAV 轨道。
核心工作流程(5步流水线)
- 设置 – 指定一个 LLM 服务器(LM Studio、Ollama、OpenAI 或任何 OpenAI 兼容 API),并选择 TTS 模式(本地 Qwen3-TTS 或外部 Gradio 服务器)。
- 脚本 – 上传书籍;LLM 将其解析为 JSON 脚本,标注说话人、添加自然语音表达,并提供 TTS 指令字段。可选的第二轮“审查”LLM 用于清理归属错误。
- 声音 – 对每个检测到的角色,您可以:
- 从九种预训练的自定义声音中选择一种。
- 从一段短参考音频中克隆声音。
- 使用 LoRA 微调的声音适配器。
- 使用 VoiceDesigner 实时生成声音(文本描述 → 合成声音)。
- 自动生成角色:LLM 创建声音描述,VoiceDesign 模型生成参考样本,单击即可将克隆声音关联到角色。
- 映射别名(例如 YOUNG ELENA → ELENA),使多个名称共享同一声音。
- 编辑器 – 批量渲染所有片段(GPU 加速,子批处理,可选
torch.compile提升 3-4 倍速度)。您可以收听、编辑文本/指令,或仅重新渲染单个片段而无需重新处理整本书。 - 结果 – 预览完成的有声书,然后下载:
- 一个带有自然停顿的 MP3。
- 用于有声书播放器的带章节 M4B 文件。
- 包含每角色 WAV 文件、Audacity 项目和多轨导入标签文件的 ZIP 包。
突出功能
- LLM 驱动的脚本注释 – 自动说话人检测、对话提取和 TTS 指令生成。
- 内置 Qwen3-TTS – 本地运行(无需外部 TTS 服务器),提供 9 个现成声音,支持全语言(EN、ZH、FR、DE、IT、JA、KO、PT、RU、ES 或自动检测)。
- 声音克隆与 LoRA 训练 – 从 5-15 秒样本创建持久声音身份,或通过交互式数据集构建器微调 LoRA 适配器。
- 智能分块与上下文保留 – 按说话人分组(≤500 字符),并保留前三个脚本条目以保持风格一致。
- 批量处理与 GPU 优化 – 子批处理、并行工作线程、可选
torch.compile、NVIDIA/AMD GPU 的闪存注意力(flash-attention)。 - Web UI 编辑器 – 可编辑任意行,选择性重新渲染,实时查看日志,即时预览音频。
- 导出灵活性 – 支持 MP3、带章节的 M4B,或 Audacity 就绪的多轨包。
系统要求
| 组件 | 最低要求 | 推荐配置 |
|---|---|---|
| GPU | 8 GB VRAM(任何 CUDA-12.8 兼容 NVIDIA,或 Linux 上的 AMD) | 批处理大小舒适运行建议 16 GB+ |
| RAM | 8 GB | 16 GB |
| 磁盘 | ~20 GB(环境 + 模型权重) | – |
| 操作系统 | Windows、Linux、macOS(Apple Silicon 上仅 CPU) | – |
| 依赖项 | Pinokio 平台(推荐)或 Docker、Python 3.10+、PyTorch、Qwen3-TTS 权重(每变体约 3.5 GB) | – |
安装选项
| 方法 | 步骤 |
|---|---|
| A – Pinokio(推荐) | 1. 从 https://pinokio.computer/ 安装 Pinokio。 2. 在 Pinokio 中点击 Install via Pinokio → 粘贴 https://github.com/Finrandojin/alexandria-audiobook。3. 点击 Start – 网页 UI 将自动打开。 |
| B – Google Colab | 打开提供的笔记本,提供免费 ngrok 令牌并运行 – 系统将为您分配一个 T4 GPU。无需本地安装。 |
| C – Docker(NVIDIA GPU) | ```bash |
| git clone https://github.com/Finrandojin/alexandria-audiobook.git | |
| cd alexandria-audiobook | |
| docker compose up --build | |
| ``` 在 http://localhost:4200 访问 UI。 |
快速启动检查清单
- 运行 LLM 服务器(LM Studio、Ollama 或 OpenAI),并记下其基础 URL 和 API 密钥。
- 通过 Pinokio/Docker/Colab 启动 Alexandria。
- 在 Setup 选项卡中,输入 LLM URL、密钥和模型名称(例如
qwen2.5-14b)。选择 TTS 模式 =local。 - 在 Script 选项卡上传书籍文件,点击 Generate Annotated Script。
- (可选)点击 Review Script 以清理说话人错误。
- 切换到 Voices,点击 Generate Personas 自动分配克隆声音,或手动选择/自定义声音。
- 进入 Editor,点击 Render Pending – 观察进度条并收听预览片段。
- 满意后,点击 Merge All,然后 Result → Download 所需格式。
如何获取帮助
- Wiki – 详细指南涵盖声音类型、LoRA 训练、批量调优和故障排除。
- 终端日志 – Pinokio 的终端显示模型下载进度、VRAM 使用情况和错误信息。
- 常见问题 – 请参阅 Troubleshooting 页面了解 GPU 内存错误、下载卡顿和首次批量预热延迟等问题。
许可与社区
该仓库为开源(MIT 风格许可 – 请参阅仓库中的 LICENSE)。欢迎通过拉取请求贡献;接受问题报告,但维护者指出由于资源有限,响应时间可能较慢。
总结 – Alexandria 将整个有声书制作流程——LLM 脚本生成、多角色语音合成、交互式编辑和灵活导出——整合到一个可在消费级 GPU 上运行的单一 Web UI 中。它面向爱好者、播客制作者以及任何希望将文本转化为精美、完整配音有声书而不必支付商业 TTS 服务费用的人。
相关
- 项目
- 项目
- 项目
- 项目
- 项目