# Python 文字转语音：离线、免费、自然的音色

更新于 2026-10-22

重要提示：本文介绍的 Supertonic 3 模型和 SuperClonica 引擎不支持中文，可以朗读英语、日语、韩语、德语、俄语等 31 种语言。如果您需要中文语音，请选择其他模型。

在 Python 中把文字转成语音有几种方式：有的库使用操作系统自带的机械音色朗读，有的把文字发送到在线服务，还有的直接在您自己的电脑上运行神经网络模型。最后一种如今听起来已接近真人，而且无需联网。本指南先比较这些方案，再给出 SuperClonica 引擎的可运行代码。它是基于开放模型 Supertonic 3 的 pip 包，内容包括安装、第一个脚本、自定义音色、长文本以及 Docker 中的本地 HTTP API。引擎是我们的产品，涉及之处我们会说明。

## 在 Python 中实现文字转语音的几种方式

选库之前先想清楚两件事：文字能否离开您的电脑，以及音色需要多自然。

- pyttsx3 调用系统内置的语音引擎：Windows 上是 SAPI5，macOS 上是 NSSpeechSynthesizer，Linux 上是 eSpeak。它离线可用，几秒即可安装，但音色机械，而且每台机器都不一样。
- gTTS 把文字发送到谷歌翻译的语音服务并保存为 MP3。声音更清晰，但需要联网，只能选择语言和口音而不能选择音色，而且它是非官方接口，随时可能失效。
- Google、Amazon、Microsoft 或 ElevenLabs 的云端 API 音质很好，但需要账号和密钥，按字符计费，而且每段文字都会发送给服务商。
- Supertonic 3、Kokoro、Piper 等本地神经网络模型在您自己的 CPU 或 GPU 上运行。模型下载一次后即可离线工作，没有按字符的费用，听起来也比系统音色自然得多。我们的对比页面有详细介绍。

## 安装 SuperClonica 引擎

引擎是一个 pip 包，分两个版本。任意 CPU（Windows、macOS 或 Linux，Python 3.10 及以上）：python -m pip install superclonica-cpu。NVIDIA GPU（Windows 或 Linux，Python 3.11 及以上）：python -m pip install superclonica-gpu-cuda。每个环境只安装其中一个，两者提供相同的 superclonica 模块。

GPU 版通过 pip 自带 CUDA 和 cuDNN，系统只需安装支持 CUDA 12 的 NVIDIA 驱动；没有可用的 GPU 时会自动改用 CPU。首次运行时，约 385 MB 的 Supertonic 3 模型会一次性下载到 ~/.cache/supertonic3。如需存放到其他位置，请设置 SUPERTONIC_CACHE_DIR。

## 第一个脚本

导入引擎，合成一句话并保存：from superclonica import Superclonica，然后 tts = Superclonica()，audio, sample_rate = tts.synthesize("Hello! This voice runs on my own computer.", voice="F1", lang="en", seed=7)，最后 tts.save("hello.wav", audio)。模型自带 M1 至 M5、F1 至 F5 共十种音色，无需额外文件。

引擎只需创建一次并重复使用：加载需要几秒钟，之后每句话只需不到一秒。在我们的测试中，短句的中位耗时在 RTX 5070 Ti 上为 0.12 秒，在四线程的 Ryzen 7 5800X 上为 0.43 秒。

## 使用自定义音色

Supertonic 3 的音色是一个约 0.3 MB 的 JSON 文件。带试听样本的免费音色放在 GitHub 的 superclonica/supertonic-voices 仓库中，SuperClonica 目录里还有 170 多种音色，从游戏角色到旁白应有尽有，每种都可以免费在线试听。

用文件代替预设名称：tts.synthesize("Good morning!", voice="ciri.json", lang="en", seed=7)。命令行：superclonica --text "Good morning!" --voice ciri.json --lang en --output morning.wav。每种音色都能说模型支持的全部 31 种语言；lang 填写文本的语言，例如 en、de、ja 或 ru。不支持中文。

## 长文本、对话和文件格式

几个选项就能满足大多数实际项目。

- 长文本（例如一整章）可以一次调用传入：引擎会把它切成不超过 160 个字符的自然片段，避免重复或吞字。
- normalize=True 会把响度统一到 −18 LUFS，便于拼接大量文件。
- tts.synthesize_batch() 可一次合成多行，每行使用自己的音色，例如对话的台词；结果保持输入顺序。
- 相同的文本、音色和随机种子会再次得到相同的音频，因此可以只重做某一行而不影响其他行。
- 数字会读成单词，常见的聊天缩写会展开，表情符号和未知符号会被清理，而不会导致报错。
- tts.save() 根据文件扩展名写出 WAV、FLAC 或 OGG。

## 作为本地 HTTP API 使用

如果需要语音的程序不是用 Python 写的，可以在 Docker 中运行引擎：docker run -d -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cpu；在 NVIDIA GPU 上使用 cuda 标签并加上 --gpus all。模型会在首次启动时下载到数据卷中。

向 POST /synthesize 发送包含文本、语言和音色文件内容的 JSON，即可收到 WAV。一个音色约 0.3 MB，因此请把请求写进文件，再用 curl -d @request.json 发送。

## 许可与负责任的使用

Supertonic 3 采用 OpenRAIL-M 许可，这是一种免版税许可，列出了禁止用途，而不是禁止商用的条款。请勿在未经同意的情况下用语音冒充他人、欺骗或骚扰，并在必要时说明音频由机器生成。

目录中的部分音色受知名人物启发。它们不是本人的真实声音，因此不要把这类音频说成是本人的真实言论。

## 更多指南

- [如何在自己的电脑上离线把文字转成语音](https://superclonica.com/zh/guides/offline-text-to-speech)
- [声音克隆：如何得到一个像录音里那样的声音](https://superclonica.com/zh/guides/voice-cloning)
- [2026 年适合本地运行的免费语音合成模型](https://superclonica.com/zh/guides/best-free-tts-models)
- [为视频、有声书、游戏和应用做文字转语音配音](https://superclonica.com/zh/guides/text-to-speech-for-videos)
- [Supertonic 3 音色：自定义音色的来源与使用方法](https://superclonica.com/zh/guides/supertonic-3-voices)
- [在 Docker 中自建文字转语音 API](https://superclonica.com/zh/guides/text-to-speech-api-docker)

## 语音合成与对比

- [在自己电脑上运行的语音合成](https://superclonica.com/zh/text-to-speech)
- [Supertonic 与 SuperClonica：同一模型，更快更干净](https://superclonica.com/zh/compare/supertonic)
- [Fish Audio、Fish Speech 与 SuperClonica 对比](https://superclonica.com/zh/compare/fish-audio)
- [OmniVoice 与 SuperClonica：语言更多，还是速度更快](https://superclonica.com/zh/compare/omnivoice)
- [本地语音合成：Qwen3-TTS 还是 SuperClonica](https://superclonica.com/zh/compare/qwen3-tts)
- [VoxCPM 2 与 SuperClonica：录音棚音质还是 CPU 速度](https://superclonica.com/zh/compare/voxcpm)
- [F5-TTS 与 SuperClonica：零样本克隆还是 CPU 上的快速合成](https://superclonica.com/zh/compare/f5-tts)
- [可离线使用的 ElevenLabs 替代方案](https://superclonica.com/zh/compare/elevenlabs)
- [Kokoro TTS 与 SuperClonica：两个小模型的本地语音合成](https://superclonica.com/zh/compare/kokoro)
- [Piper TTS 与 SuperClonica：小设备还是定制音色](https://superclonica.com/zh/compare/piper)
- [Coqui XTTS-v2 与 SuperClonica：Coqui TTS 的替代方案](https://superclonica.com/zh/compare/xtts)
- [Chatterbox TTS 与 SuperClonica：即时克隆还是训练好的音色文件](https://superclonica.com/zh/compare/chatterbox)

## 常见问题

### 如何在不联网的情况下用 Python 把文字转成语音？

使用在本机运行的库：系统音色可用 pyttsx3，自然语音可用本地神经网络模型。使用 SuperClonica 引擎时，用 pip 安装 superclonica-cpu；模型下载一次后，一切都可离线运行。注意它不支持中文。

### pyttsx3 和 gTTS 哪个更好？

pyttsx3 离线使用系统音色，听起来比较机械；gTTS 更清晰，但会通过互联网把文字发送给谷歌。Supertonic 3 这样的本地神经网络模型无需联网即可生成自然语音。

### 需要 GPU 吗？

不需要。superclonica-cpu 可在 Windows、macOS 和 Linux 的普通 CPU 上运行，一句短句远不到一秒。NVIDIA GPU 要快好几倍，适合大批量处理。

### 生成的语音可以商用吗？

Supertonic 3 的许可 OpenRAIL-M 免版税，没有禁止商用的条款；它列出了禁止用途，例如未经同意冒充他人。受知名人物启发的音色不得被说成是本人的真实言论。

- [浏览适合 Python 项目的音色](https://superclonica.com/zh/explore)
- [安装 SuperClonica 引擎](https://superclonica.com/zh/superclonica)

## 参考来源

- [pyttsx3（PyPI）](https://pypi.org/project/pyttsx3/)
- [gTTS 文档](https://gtts.readthedocs.io/)
- [SuperClonica 引擎（PyPI）](https://pypi.org/project/superclonica-cpu/)
- [Supertonic 3 模型卡（Hugging Face）](https://huggingface.co/supertone-oss-archive/supertonic-3)
- [免费的 Supertonic 3 音色（GitHub）](https://github.com/superclonica/supertonic-voices)
- [SuperClonica Docker 镜像（Docker Hub）](https://hub.docker.com/r/superclonica/superclonica)
- [SuperClonica](https://superclonica.com/zh/)
- [文字转语音 AI 声音目录](https://superclonica.com/zh/explore)
- [Supertonic 3 定制音色委托](https://superclonica.com/zh/requests)
- [工作原理：音色、本地语音、训练](https://superclonica.com/zh/guide)
- [安装更快的 Supertonic 3 引擎](https://superclonica.com/zh/superclonica)
- [关于我们：语音合成爱好者团队](https://superclonica.com/zh/about)
- [联系方式、支持与音色投诉](https://superclonica.com/zh/contacts)
- [隐私政策](https://superclonica.com/zh/privacy)
- [使用条款](https://superclonica.com/zh/terms)
- [语音合成](https://superclonica.com/zh/text-to-speech)
