KittenTTS 设置
返回 TTS 提供商概览
KittenTTS 直接在您的电脑上运行神经网络 TTS 模型。无需云服务、无需 API 密钥、数据不会离开您的电脑——而且语音质量确实很好。设置大约需要 5 分钟。目前仅支持英语。
KittenTTS 使用 PyTorch 在 CPU 上进行神经网络推理,这意味着它需要较强的计算能力:
| 硬件 | 体验 |
|---|---|
| 8 核以上,现代 CPU(Ryzen 7、i7、Xeon) | 出色。语音生成速度快,对其他任务影响很小 |
| 4-6 核(Ryzen 5、i5) | 良好。生成时 CPU 占用明显,但完全可用 |
| 2 核 / 较旧的 CPU | 较慢。每句话的生成可能需要数秒。建议考虑使用 Google Cloud |
CPU 占用是暂时的 —— KittenTTS 仅在实际生成语音时使用 CPU(通常每句话 1-2 秒)。在语音生成间隔,CPU 占用几乎降为零。
默认情况下,KittenTTS 使用所有可用的 CPU 核心以获得最快速度。如果您同时运行国际象棋引擎(如 Stockfish),可能需要限制 KittenTTS 使用的线程数。
在 Settings > Sound > KittenTTS CPU Threads 中设置一个值来限制线程使用量。设为 0 表示自动模式(使用所有核心)。与国际象棋引擎共同使用时,一个好的起点是设为核心数的一半。
提示: KittenTTS 和 Stockfish 都需要 CPU 核心。如果您在 KittenTTS 生成语音的同时进行全深度分析,两者会竞争 CPU 时间。在 8 核以上的机器上,您几乎不会注意到影响。在 4 核机器上,建议给 KittenTTS 分配 2 个线程,其余留给引擎。
步骤 1:安装依赖
Section titled “步骤 1:安装依赖”KittenTTS 需要 Python 3.10+ 和一些 Python 包。请选择以下方法之一:
方法 A:应用内设置向导(推荐)
Section titled “方法 A:应用内设置向导(推荐)”- 打开 En Parlant~ 并进入 Settings > Sound
- 将 TTS Provider 设为 KittenTTS (English Only)
- 如果缺少依赖项,会出现黄色的 “Setup Guide” 提示
- 点击提示打开设置向导
- 向导会引导您完成每个步骤,并提供 “Fix” 按钮进行自动安装
方法 B:终端设置脚本
Section titled “方法 B:终端设置脚本”cd /path/to/en-parlant./scripts/setup-tts.sh --kittentts此脚本会创建 Python 虚拟环境并安装所需的包(kittentts、flask、soundfile、numpy)。首次运行时,nano 模型(约 25MB)会从 HuggingFace 下载。
方法 C:手动设置
Section titled “方法 C:手动设置”cd /path/to/en-parlant/scriptspython3 -m venv .venv.venv/bin/pip install kittentts flask soundfile numpy步骤 2:配置 En Parlant~
Section titled “步骤 2:配置 En Parlant~”- 打开 En Parlant~ 并进入 Settings(齿轮图标)> Sound 选项卡
- 将 TTS Provider 设为 KittenTTS (English Only)
- 选择该提供商后,服务器会自动启动
- 等待几秒钟让模型加载(首次运行会从 HuggingFace 下载)
- 选择一个声音——共有 8 个选项(4 个男声、4 个女声)
- 点击声音选择器旁边的 Test 按钮
您应该能听到一步棋以自然、富有表现力的 AI 语音朗读出来。
- 出现 “Server not responding” 错误? KittenTTS 服务器可能未启动。请检查设置中的设置向导——它会显示依赖项状态,并可自动修复缺失的包。
- 首次运行很慢? 约 25MB 的 nano 模型会在首次使用时从 HuggingFace 下载。这是一次性下载,后续启动只需 2-5 秒。
- CPU 占用过高? 这在语音生成期间是正常的。如果影响到其他任务,请在设置中减少线程数。
- 没有声音? 请确保已安装 Python 3.10+ 且虚拟环境创建成功。设置向导可以帮助诊断此问题。
KittenTTS 提供 8 种声音,编号为 2-5,每个编号有男声和女声两种变体。所有声音均为英语,但音调特质略有不同。建议试听几种,找到您最喜欢的。
KittenTTS 目前仅支持英语。如需其他语言,请使用 ElevenLabs 或 Google Cloud。使用 KittenTTS 时,TTS 语言设置会被忽略——国际象棋术语始终以英语朗读。