原文:【GitHub每日速递 250915】3 个宝藏开源项目:超长语音合成、算法学习库、自托管软件导航,开发者速收
VibeVoice:挑战传统TTS,最长90分钟多角色语音合成神器来袭!
VibeVoice 是一个长对话文本转语音模型的开源项目。简单讲,它能将连续的文本内容自然地转换成语音,支持长时间对话场景。适用人群:语音技术开发者、AI研究人员、开源社区爱好者。
项目地址:https://github.com/vibevoice-community/VibeVoice
主要语言:Python
stars: 204
核心功能
VibeVoice是一个用于从文本生成富有表现力、长篇幅、多说话人对话音频(如播客)的新型框架。它解决了传统文本转语音(TTS)系统在可扩展性、说话人一致性和自然话轮转换等方面的重大挑战。其核心创新在于使用了工作频率为7.5Hz的连续语音分词器(声学和语义),能在高效处理长序列时保留音频保真度,提升计算效率。同时采用了下一个令牌扩散框架,借助大语言模型理解文本上下文和对话流程,通过扩散头生成高保真声学细节。该模型能够合成长达90分钟、最多4个不同说话人的语音,超越了许多先前模型通常1 - 2个说话人的限制。
优势
- 长时合成能力:可以合成长达90分钟的语音,满足长篇内容的需求。
- 多说话人支持:最多支持4个不同说话人,适用于复杂的对话场景。
- 计算效率高:连续语音分词器提升了长序列处理的计算效率。
可能的应用场景
- 播客制作:可将文字稿转换为多说话人的播客音频。
- 有声书制作:用于生成不同角色的有声书内容。
- 语音交互系统:为对话式语音交互系统提供语音合成功能。
模型信息
模型 | 上下文长度 | 生成长度 | 权重 |
---|---|---|---|
VibeVoice - 0.5B - Streaming | - | - | 待发布 |
VibeVoice - 1.5B | 64K | ~90 min | HF链接 |
VibeVoice - Large | 32K | ~45 min | HF链接 |
安装步骤
推荐使用NVIDIA深度学习容器管理CUDA环境:
- 启动docker
# NVIDIA PyTorch Container 24.07 / 24.10 / 24.12已验证。
# 更高版本也兼容。
sudo docker run --privileged --net=host --ipc=host --ulimit memlock=-1:-1 --ulimit stack=-1:-1 --gpus all --rm -it nvcr.io/nvidia/pytorch:24.07-py3## 如果docker环境中不包含flash attention,需要手动安装
## 安装说明请参考https://github.com/Dao-AILab/flash-attention
# pip install flash-attn --no-build-isolation
- 从github安装
git clone https://github.com/vibevoice-community/VibeVoice.git
cd VibeVoice/pip install -e .
使用方法
启动Gradio演示
apt update && apt install ffmpeg -y # 用于演示# 对于1.5B模型
python demo/gradio_demo.py --model_path microsoft/VibeVoice-1.5B --share# 对于Large模型
python demo/gradio_demo.py --model_path microsoft/VibeVoice-Large --share
直接从文件进行推理
# 我们在demo/text_examples/下提供了一些大语言模型生成的示例脚本用于演示
# 1个说话人
python demo/inference_from_file.py --model_path microsoft/VibeVoice-Large --txt_path demo/text_examples/1p_abs.txt --speaker_names Alice# 或多个说话人
python demo/inference_from_file.py --model_path microsoft/VibeVoice-Large --txt_path demo/text_examples/2p_music.txt --speaker_names Alice Frank
注意事项和常见问题解答
合成中文语音的提示
- 即使是中文文本,也使用英文标点,最好仅使用逗号和句号。
- 使用Large模型变体,稳定性更好。
- 如果生成的语音语速过快,可以尝试将文本按相同说话人标签进行分块。
常见问题解答
- 是否为预训练模型:是,这是一个没有进行任何后训练或特定基准优化的预训练模型,具有很强的通用性。
- 随机触发声音/音乐/背景音乐:背景音乐或声音是自发产生的,无法直接控制。其生成与输入文本和所选语音提示有关。例如,语音提示包含背景音乐时,生成语音更可能带有背景音乐;即使语音提示干净,但输入文本包含特定短语时,也可能出现背景音乐;使用“Alice”说话人标签时,随机出现背景音乐的情况曾有发生(现已修复);Large模型在这方面更稳定。
- 文本归一化:训练和推理过程中不进行文本归一化,大语言模型应能自行处理复杂输入,但可能存在特殊情况。
- 歌唱能力:训练数据中不包含音乐数据,歌唱能力是模型的涌现能力,可能会跑调,Large模型比1.5B模型更易展现该能力。
- 中文发音错误:训练集中中文数据量远小于英文数据,某些特殊字符(如中文引号)可能导致发音问题。
- 跨语言迁移的不稳定性:模型具有较强的跨语言迁移能力,包括保留口音,但性能不稳定,可通过重复采样获得满意结果。
Python算法学习神器!The Algorithms仓库助你轻松上手
一个汇集了各类算法实现 的 开源项目。简单讲,它用Python语言实现了大量经典算法,方便学习和使用。适用人群:Python开发者、算法学习者和计算机专业学生。
项目地址:https://github.com/TheAlgorithms/Python
主要语言:Python
stars: 206.64k
主要内容、优势及应用场景
- 主要内容:该仓库包含了大量用 Python 实现的算法,涵盖了各种类型的算法,具体算法列表可查看 directory。
- 优势
- 教育价值高:专门为教育目的设计,代码实现清晰易懂,非常适合初学者学习算法和 Python 编程。
- 社区活跃:有活跃的社区渠道,如 Discord 和 Gitter,用户可以在社区中交流问题、获取帮助,也可以参与到项目的开发中。
- 便于贡献:明确欢迎贡献者参与,提供了详细的贡献指南,降低了贡献代码的门槛。
- 代码质量有保障:使用了 GitHub Actions 进行持续集成,还启用了 pre - commit 工具和特定的代码风格检查(ruff),保证了代码的质量和一致性。
- 应用场景
- 学习算法:对于算法初学者来说,可以通过查看这些实现来理解算法的原理和工作过程。
- Python 编程学习:可以学习到如何用 Python 语言实现各种算法,提升 Python 编程能力。
- 算法验证:在研究新算法时,可以参考这里的实现进行验证和测试。
超全!涵盖20+领域的自托管开源软件大集合
awesome-selfhosted 是一个收录可自行搭建的免费网络服务和Web应用的资源列表。简单讲,它是一个帮你把各种云服务搬到自己服务器上的开源软件导航。适用人群:开发者、运维人员、隐私爱好者
项目地址:https://github.com/awesome-selfhosted/awesome-selfhosted
stars: 245.45k
核心内容
该仓库主要收录了各类可在自己服务器上托管的免费软件,涵盖网络服务和 web 应用程序。这些软件涉及众多领域,从提供的代码片段能看到包括但不限于以下类别:
- 分析工具(Analytics)
- 归档与数字保存(Archiving and Digital Preservation)
- 自动化工具(Automation)
- 备份软件(Backup)
- 博客平台(Blogging Platforms)
- 预约与调度(Booking and Scheduling)
- 书签与链接分享(Bookmarks and Link Sharing)
- 日历和联系人(Calendar & Contacts)
- 各类通信相关系统(如电子邮件解决方案、IRC、SIP、社交网络、视频会议、XMPP 服务器及客户端等)
- 内容管理系统(CMS)
- 客户关系管理(CRM)
- 数据库管理(Database Management)
- 文件传输与同步(包括分布式文件系统、对象存储与文件服务器、点对点文件共享等)
- 库存管理(Inventory Management)
- 项目管理(Project Management) 等。
特点
- 区分免费与非免费软件,非免费软件单独列在
non-free.md
中。 - 提供了 HTML 版本(推荐)和 Markdown 版本( legacy)供访问。
- 每个软件条目通常包含名称、简介、源代码链接(部分有演示链接)、许可证类型以及技术栈等信息,方便用户了解和选用。
简单来说,这个仓库是自托管爱好者和需要搭建私有服务的用户的重要资源,帮助他们找到合适的开源软件来构建和管理自己的服务器应用。