SoulX-Podcast README

The project's README from github.com/Soul-AILab/SoulX-Podcast. As one markdown file: README.md.

SoulX-Podcast

Official inference code for
SoulX-Podcast: Towards Realistic Long-form Podcasts with Dialectal and Paralinguistic Diversity

SoulX-Podcast_Logo

version HF-model technical report HF-demo Apache-2.0

SoulX-Podcast: Towards Realistic Long-form Podcasts with Dialectal and Paralinguistic Diversity

Overview

SoulX-Podcast is designed for podcast-style multi-turn, multi-speaker dialogic speech generation, while also achieving superior performance in the conventional monologue TTS task.

To meet the higher naturalness demands of multi-turn spoken dialogue, SoulX-Podcast integrates a range of paralinguistic controls and supports both Mandarin and English, as well as several Chinese dialects, including Sichuanese, Henanese, and Cantonese, enabling more personalized podcast-style speech generation.

Key Features 🔥


Demo Examples

Zero-Shot Podcast Generation

https://github.com/user-attachments/assets/a9d3da2a-aaff-49d0-a3c7-2bd3c0b6d5eb

Cross-Dialectal Zero-Shot Podcast Generation

🎙️ All prompt audio samples used in the following generations are in Mandarin.

🎙️ 以下音频生成采用的参考音频全部为普通话。

https://github.com/user-attachments/assets/982d799b-9f91-40a3-ab64-9e165166f788

https://github.com/user-attachments/assets/d0a59d7b-27c9-4b47-8242-f7630814c1e9

https://github.com/user-attachments/assets/a53ff35c-1e2b-42d9-9ef4-279164574646

For more examples, see demo page.

🚀 News

Install

Clone and Install

Here are instructions for installing on Linux.

git clone [email protected]:Soul-AILab/SoulX-Podcast.git
cd SoulX-Podcast
conda create -n soulxpodcast -y python=3.11
conda activate soulxpodcast
pip install -r requirements.txt
# If you are in mainland China, you can set the mirror as follows:
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com
cd runtime/vllm
docker build -t soulxpodcast:v1.0 .
# Mounts the host directory at LOCAL_RESOURCE_PATH to CONTAINER_RESOURCE_PATH in the container, enabling file sharing between the host system and container. To access the web application, add -p LOCAL_PORT:CONTAINER_PORT
# example: docker run -it --runtime=nvidia  --name soulxpodcast  -v /mnt/data:/mnt/data -p 7860:7860 soulxpodcast:v1.0
docker run -it --runtime=nvidia  --name soulxpodcast  -v LOCAL_RESOURCE_PATH:CONTAINER_RESOURCE_PATH soulxpodcast:v1.0

Model Download

pip install -U huggingface_hub

# base model
huggingface-cli download --resume-download Soul-AILab/SoulX-Podcast-1.7B --local-dir pretrained_models/SoulX-Podcast-1.7B

# dialectal model
huggingface-cli download --resume-download Soul-AILab/SoulX-Podcast-1.7B-dialect --local-dir pretrained_models/SoulX-Podcast-1.7B-dialect

Download via python:

from huggingface_hub import snapshot_download

# base model
snapshot_download("Soul-AILab/SoulX-Podcast-1.7B", local_dir="pretrained_models/SoulX-Podcast-1.7B") 

# dialectal model
snapshot_download("Soul-AILab/SoulX-Podcast-1.7B-dialect", local_dir="pretrained_models/SoulX-Podcast-1.7B-dialect") 

Download via git clone:

mkdir -p pretrained_models

# Make sure you have git-lfs installed (https://git-lfs.com)
git lfs install

# base model
git clone https://huggingface.co/Soul-AILab/SoulX-Podcast-1.7B pretrained_models/SoulX-Podcast-1.7B

# dialectal model
git clone https://huggingface.co/Soul-AILab/SoulX-Podcast-1.7B-dialect pretrained_models/SoulX-Podcast-1.7B-dialect

Basic Usage

You can simply run the demo with the following commands:

# dialectal inference
bash example/infer_dialogue.sh

WebUI

You can simply run the webui with the following commands:

# Base Model:
python3 webui.py --model_path pretrained_models/SoulX-Podcast-1.7B

# If you want to experience dialect podcast generation, use the dialectal model:
python3 webui.py --model_path pretrained_models/SoulX-Podcast-1.7B-dialect

TODOs

Citation

@misc{SoulXPodcast,
  title        = {SoulX-Podcast: Towards Realistic Long-form Podcasts with Dialectal and Paralinguistic Diversity},
  author       = {Hanke Xie and Haopeng Lin and Wenxiao Cao and Dake Guo and Wenjie Tian and Jun Wu and Hanlin Wen and Ruixuan Shang and Hongmei Liu and Zhiqi Jiang and Yuepeng Jiang and Wenxi Chen and Ruiqi Yan and Jiale Qian and Yichao Yan and Shunshun Yin and Ming Tao and Xie Chen and Lei Xie and Xinsheng Wang},
  year         = {2025},
  archivePrefix={arXiv},
  url          = {https://arxiv.org/abs/2510.23541}
}

License

We use the Apache 2.0 license. Researchers and developers are free to use the codes and model weights of our SoulX-Podcast. Check the license at LICENSE for more details.

Acknowledge

Usage Disclaimer

This project provides a speech synthesis model for podcast generation capable of zero-shot voice cloning, intended for academic research, educational purposes, and legitimate applications, such as personalized speech synthesis, assistive technologies, and linguistic research.

Please note:

Do not use this model for unauthorized voice cloning, impersonation, fraud, scams, deepfakes, or any illegal activities.

Ensure compliance with local laws and regulations when using this model and uphold ethical standards.

The developers assume no liability for any misuse of this model.

We advocate for the responsible development and use of AI and encourage the community to uphold safety and ethical principles in AI research and applications. If you have any concerns regarding ethics or misuse, please contact us.

Contact Us

If you are interested in leaving a message to our work, feel free to email [email protected] or [email protected] or [email protected] or [email protected]

You’re welcome to join our WeChat group for technical discussions, updates.


WeChat Group QR Code

Star History

Star History Chart

SoulX-Podcast (Soul-AILab/SoulX-Podcast)

Searching Database…

这是什么?SoulX-Podcast 是一个推理代码库,能从文本生成逼真的长篇多说话人播客式对话,包括副语言效果和多种中文方言。
这是现成的应用,还是需要我自己运行的代码?它是一个研究代码库,不是打包好的应用:你需要克隆仓库、下载模型检查点,然后自己运行提供的脚本或 WebUI。
怎么让它跑起来?克隆仓库,安装 Conda,创建 Conda 环境,然后从 Hugging Face 下载模型检查点(通过 Python 脚本或 git clone),之后再运行演示或 WebUI 脚本。
安装之前需要准备什么?你需要 Conda、一台 Linux 机器,以及来自 Hugging Face 的 SoulX-Podcast 模型检查点;可选地,可以使用修改版 vLLM 0.10.1 构建来加速推理。
目前有什么安装坑或缺失的功能吗?安装说明只覆盖 Linux,而且流式推理仍被列为待办事项(TODO),目前还不可用。
这是给谁用的?它面向研究播客式 TTS 和声音克隆的研究人员和开发者,按照项目的免责声明,使用范围仅限于学术、教育和其他合法应用。
许可条款是怎样的?代码以 Apache 2.0 发布,但作者明确禁止未经授权的声音克隆、冒充他人、欺诈或深度伪造等滥用行为。
除普通话和英语外它还支持哪些方言?它支持多种中文方言,包括四川话、河南话和粤语,可用于零样本声音克隆和语音生成。
它能给语音加上笑声等自然效果吗?可以,它包含用于笑声、叹息等效果的副语言标签,让生成的对话听起来更逼真。
有网页界面吗,还是只有命令行脚本?除了用于独白 TTS 的命令行演示脚本,还有一个便于推理的 WebUI。
推理可以加速或容器化吗?可以,该项目提供了用于加速的修改版 vLLM 0.10.1 构建,并且自 2025 年 11 月起还支持通过 Docker 配合 vLLM 运行。
Creator
Soul-AILab
Size
185.2 MB
Stars
3.6K
Updated
CommitDec 11
Age
1y
Commits · 90 Days