Amadeus version2.3
- RenPy
- Python
- ChatGPT
- VOSK
- TTS
该项目实现了对Amadeus的简单复刻,能够实现与ChatGPT饰演的Amadeus助手进行即时对话,支持线上模式和离线模式,线上模式需要启动本地socket服务器(v2.py文件),通过socket连接RenPy客户端与本地服务端;在交互上支持文本输入与语音输入两种模式,推荐使用语音输入,带来的沉浸感更强
项目未对python环境打包,需要你自己配置好程序运行所需要的环境,最好使用anaconda创建虚拟环境方便包管理,程序运行所需的依赖我已经在requirements.txt中列出
-
首先创建好新的虚拟环境后(假设你创建的环境名为
demo) -
用conda命令切换
conda activate demo -
然后
cd到该项目的目录下,pip install -r requirements安装所有依赖
最后,在一切准备就绪后,运行v2.py文件,可以在vscode等编辑器中运行或者通过终端输入python v2.py运行,在输出等待客户端连接后,执行amadeus.exe可执行文件,即可开始游戏
- 本程序通过直接获取本地的sqlit数据库文件获取openai的登录token令牌,因此必须使用chrome浏览器,若要改成手动输入token,请自行修改代码
- 访问openai服务器需要使用代理,目前已支持香港地区访问
- 在使用前,你必须注册自己的openai账号,请自行上网查找注册指南
- 可以自行将服务端改为可实现远程部署的版本,但是不推荐,因为目前使用的该wrapper还不太稳定,需要本地监控调试,等后续openai真正开放chatgpt的api的时候会进行相应的修改
- UI窗口输出的中文是将chatgpt的日文回复通过调用百度翻译API实现的,要使用此功能需要自行前往http://api.fanyi.baidu.com 获取自己的api key,并在chatgpt/translate.py中修改,或者更换其他API(百度翻译要钱,免费的每月限制5w字符)
- 在使用语音输入的时候, 默认的电脑麦克风容易受到环境杂音的影响导致误录,通过耳机输入会好一点
- 仓库未使用lfs存储,因此并未上传运行所需的VOSK,TTS模型文件,需要模型的朋友可以通过下面链接自取,或者使用自己的模型替换:
vosk-model-cn-0.15 https://alphacephei.com/vosk/models/vosk-model-cn-0.15.zip
G265000.pth 链接:https://pan.baidu.com/s/1IqbQp-wnJQSiyB-irRHTIQ 提取码:gaof
将vosk-model-cn-0.15文件夹放入到voice2Text目录,将G265000.pth放入到TTS_model目录下即可
- 语音识别需要将
ffmpeg.exe和ffprobe.exe两个文件放到项目目录下,可以自行去官网下载获取,或者通过下面的链接自取: https://www.aliyundrive.com/s/BiB2yxoJhJF 提取码: 6m9i
也可以尝试使用自己训练的模型来进行替换,这里就不讲述教程了,自行阅读代码,非常的简单(需要替换模型与模型相关配置的json文件)
- 初始化ChatGPT设定的文件在
./chatgpt/init_chatgpt.txt,可以自行根据喜好修改chatGPT扮演设定。
- 目前还是demo版本,完全是出于个人兴趣制作的一个简易版本,本人大三了准备考研,后续如果不太忙会继续更新的
- 目前使用的vosk模型是官方开源的,可直接在官网下载,VITS模型暂时使用的是huggingface上大佬开源的模型,本人还在不断调参训练中,后续若效果可以的话会替换成自己训练的模型
- 后续优先计划是把模型训练好,可以考虑在这基础上再添加比屋真帆定的角色设定及TTS模型
- 对交互界面进行优化,目前的界面设计比较简陋,live2d动画仅制作了说话和呼吸两个基础动作,有时间会不断完善,增加多样性
- 语言模型在不断迭代,之后还会有GPT4等,等openai真正开放chatgpt的接口,或者是有更高级的语音模型的时候我会跟进的
- 搭载NLP情感分类,结合更多动作增强表现力