该项目受到shioridotdev的启发,利用voicevox engine、deepl、whisper openai、seliro 和vtubestudio等多种技术来创建一个ai waifu虚拟youtuber。
v3.5 现在还支持 twitch streamer
v3.0 现在不仅支持使用 voicevox 的日语 tts。但还支持 ru(俄语)、en(英语)、de(德语)、es(西班牙语)、fr(法语)、tt(鞑靼语)、ua(乌克兰语)、uz(乌兹别克语)、xal(卡尔梅克语)的 tts,印度语(印地语),使用 seliro tts。将 run.py
上的 voicevox_tts
更改为 seliro_tts
,了解如何使用 seliro tts 的详细信息
安装
- 安装依赖项
pip install -r requirements.txt
2. 创建 config.py 并存储您的 openai api 密钥
api_key = 'yourapikey'
3.更改所有者名称
owner_name = "ardha"
如果您想将其用于直播,请创建一个您想要在 run.py
上列入黑名单的用户列表
blacklist = ["nightbot", "streamelements"]
4.改变你的助手的传说或身份。更改 characterconfig\pina\identity.txt
处的 txt 文件
5. 如果您想在 twitch 上进行直播,您需要更改 utils/twitch_config.py
处的配置文件。从这里获取您的令牌。您的令牌应类似于 oauth:43rip6j6fgio8n5xly1oum1lph8ikl1 (本教程中为假)。更改配置文件后,可以使用mode – 3启动程序
server = 'irc.chat.twitch.tv'
port = 6667
nickname = 'testing' # you don't need to change this
token = 'oauth:43rip6j6fgio8n5xly1oum1lph8ikl1' # get it from https://twitchapps.com/tmi/.
user = 'ardha27' # your twitch username
channel = '#aikohound' # the channel you want to retrieve messages from
6. 选择您要使用的 tts: voicevox
或 silero
。取消注释和注释以在它们之间切换
choose between the available tts engines
japanese tts
voicevox_tts(tts)
# silero tts, silero tts can generate english, russian, french, hindi, spanish, german, etc. uncomment the line below. make sure the input is in that language
"en", "v3_en", "en_21") silero_tts(tts_en,
如果您想使用voicevox,您需要先运行voicevox engine。您可以使用 voicevox docker 在本地运行它们,也可以使用 voicevox colab 在 google colab 上运行它们。如果您使用 colab,请使用从 colab 获得的链接更改 utils\tts.py
上的 voicevox_url
。
voicevox_url = 'http://localhost:50021'
如果您想查看 voicevox 的语音列表,您可以检查此 voicevox 并在 speaker.json
上查看扬声器 id,然后在 utils/tts.py
上更改它。对于 seliro 语音示例,您可以查看此 seliro 示例
7. 根据您的用例选择要使用的翻译器(如果您需要翻译答案,则可选)。选择谷歌翻译或 deeplx。如果您想使用 voicevox
,您需要将答案转换为日语,因为 voicevox 只接受日语输入。openai 的语言答案将取决于您的助手传说语言 characterconfig\pina\identity.txt
和输入语言
tts = translate_deeplx(text, f"{detect}", "ja")
tts = translate_google(text, f"{detect}", "ja")
deeplx
是 deepl
的免费版本(无需 api 密钥)。你可以在docker上运行deeplx,或者如果你想使用普通版本的deepl,你可以在 utils\translate.py
上创建该功能。我使用 deeplx
,因为我无法在我的国家/地区注册 deepl
。 deepl
的翻译结果比 google 翻译更准确、更随意。但如果你想要简单的方法,只需使用谷歌翻译即可。
8. 如果您想使用程序的音频输出作为 vtubestudio
的输入。您需要使用 virtual cable
捕获桌面音频并将其用作 vtubestudio 麦克风的输入。
9. 如果您打算使用此程序进行直播,请使用 chat.txt
和 output.txt
作为 obs 文本上的实时字幕/字幕的输入
项目链接
https://github.com/ardha27/ai-waifu-vtuber
原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/yun267418.html