# Piper-TTS 本项目基于 **piper** 模型封装,提供简洁的 Docker 部署方式,支持 **SSML 输入**,输出 **PCM 原始音频**,可用于语音合成。 --- ## Quickstart ### 1. 安装镜像 ```bash docker build -t tts:piper . -f Dockerfile_piper ``` ### 2. 启动服务 ```bash docker run -it --rm \ -v /models/piper_model:/mnt/models \ -e ASCEND_VISIBLE_DEVICES=1 \ --device /dev/davinci2:/dev/davinci0 \ --device /dev/davinci_manager \ --device /dev/devmm_svm \ --device /dev/hisi_hdc \ -v /usr/local/dcmi:/usr/local/dcmi \ -v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \ -v /usr/local/Ascend/driver/lib64/:/usr/local/Ascend/driver/lib64/ \ -v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info \ -v /etc/ascend_install.info:/etc/ascend_install.info \ --privileged \ -p 8080:80 \ -e MODEL_DIR=/mnt/models \ -e MODEL_NAME=zh/zh_CN/huayan/medium/'epoch=3269-step=2460540.ckpt' \ tts:piper ``` 参数说明: - `MODEL_DIR`:模型所在目录(挂载到容器内 `/mnt/models`) - `MODEL_NAME`:加载的模型文件名(通常为 `.safetensors`) - `-p 8080:80`:将容器内服务端口映射到宿主机 `8080` ### 3. 测试服务 ```bash curl --request POST "http://localhost:8080/tts" \ --header 'Content-Type: application/ssml+xml' \ --header 'User-Agent: curl' \ --data-raw ' 今天天气很好,不知道明天天气怎么样。 ' \ --output sound.pcm ``` ---