目 录CONTENT

文章目录

Docker部署自己用的OpenAI 文本转语音工具Text-To-Speech

yyzq
2023-12-26 / 7 评论 / 6 点赞 / 5,524 阅读 / 1,401 字

引言

OpenAI的文本转语音(Text-to-Speech,简称TTS)技术是一种先进的人工智能应用,它能够将文本转换为自然听起来的语音。这项技术基于深度学习和神经网络模型,能够模仿人类语音的各种特性,包括语调、节奏和情感。OpenAI的TTS技术主要有以下几个特点:

高质量语音合成:

OpenAI的TTS能够生成接近真人的语音,具有很高的自然度和可听性。

多种语音选项:

通常提供多种预设声音,用户可以根据需求选择不同的声音和风格。

实时应用优化:

某些模型变体(如tts-1)针对实时应用进行了优化,适用于需要快速响应的场景。

高清晰度选项:

例如tts-1-hd模型,专为高质量声音输出设计,适合对音质要求较高的应用场景。

灵活性和易用性:

通过API提供服务,可以轻松集成到各种应用程序中,包括客户服务系统、数字助手、内容朗读工具等。

支持流式传输:

允许音频文件分块传输,适用于长文本或实时音频流。

成本效率:

按使用量收费,每1000个输入字符大约0.015美元(大约相当于500个汉字话费0.1元人民币),使其适用于不同规模的项目和企业。

OpenAI的TTS技术广泛应用于各种领域,如自动客服电话系统、语音助手、电子书阅读、语言学习软件等。通过提供更加自然和流畅的语音体验,该技术正改变着人们与机器交互的方式。

支持的语言

TTS模型在语言支持方面总体上遵循Whisper模型。尽管当前语音针对英语进行了优化,但Whisper支持以下语言并且表现良好:

南非荷兰语、阿拉伯语、亚美尼亚语、阿塞拜疆语、白俄罗斯语、波斯尼亚语、保加利亚语、加泰罗尼亚语、中文、克罗地亚语、捷克语、丹麦语、荷兰语、英语、爱沙尼亚语、芬兰语、法语、加利西亚语、德语、希腊语、希伯来语、印地语、匈牙利语、冰岛语、印度尼西亚语、意大利语、日语、卡纳达语、哈萨克语、韩语、拉脱维亚语、立陶宛语、马其顿语、马来语、马拉地语、毛利语、尼泊尔语、挪威语、波斯语、波兰语、葡萄牙语、罗马尼亚语、俄语、塞尔维亚语、斯洛伐克语、斯洛文尼亚语、西班牙语、斯瓦希里语、瑞典语、他加禄语、泰米尔语、泰语、土耳其语、乌克兰语、乌尔都语、越南语和威尔士语。

您可以通过以您选择的语言提供输入文本来生成这些语言的口语音频。

Demo

https://tts.ywsj.eu.org
image-1703588381434

准备条件

1)一台服务器(X86架构这个docker镜像不支持arm架构)
需要便宜VPS的可以参考这个
https://duan.yyzq.eu.org/vps1
2)一个OpenAI账号
用来获取免费的API
https://platform.openai.com/api-keys
image-1703589770030
Text to speech官方介绍
https://platform.openai.com/docs/guides/text-to-speech

一、Docker环境部署

在vps安装docker和docker-compose
Docker官方安装文档(英文)
https://duan.yyzq.eu.org/docker-001
Docker-Compose官方安装文档(英文)
https://duan.yyzq.eu.org/docker-002
Centos安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//03
Ubuntu安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//04

docker安装脚本

bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)

docker-compose安装脚本

curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose

二、创建docker-compose.yml文件

sudo -i  #切换到root用户
mkdir openai-tts;cd openai-tts  #创建一个目录,并进入此目录
vim docker-compose.yml
version: '3.8'
services:
  tts-service:
    image: registry.hf.space/ysharma-openai-tts-new:latest
    platform: linux/amd64
    command: python app.py
    ports:
      - "7860:7860"  #:左侧的端口可以自定义
    stdin_open: true
    tty: true

三、执行容器运行命令

docker-compose up -d #运行容器
docker-compose ps  #查看是否开启成功

正常启动见如下所示

          Name                Command      State                    Ports                  
-------------------------------------------------------------------------------------------
openai-tts_tts-service_1   python app.py   Up      0.0.0.0:7860->7860/tcp,:::7860->7860/tcp

四、打开web页面使用

成功以后需要打开自己相应的端口防火墙就可以web端访问了

http://ip:7860   #打开自己VPS的端口加ip进入web页面

五、更新网站

cd openai-tts    #进入项目目录
docker-compose down #停止容器
docker-compose pull #拉取最新镜像
docker-compose up -d #启动新容器

六、绑定域名

绑定域名可以参考
NginxProxyManager
https://duan.yyzq.eu.org//npm-ch
绑定完域名就可以用域名来访问了

有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我

6

评论区