AI Chatbot是一个由AI大语言模型驱动的聊天软件,支持 OpenAI (ChatGPT) 和 Google Gemini 两种AI后端,通过Voicevox与用户进行语音交互。
- Python 3.8或更高版本及其依赖包
- Git (可选)
- OpenAI API密钥 或 Google Gemini API密钥 (二选一)
- Voicevox引擎
-
克隆存储库或者下载zip:
git clone https://github.com/Inupedia/AI-Chatbot.git
-
安装系统依赖 (Ubuntu/Debian):
sudo apt-get install -y portaudio19-dev python3-dev ffmpeg
-
安装所需的Python包:
pip install -r requirements.txt
-
下载VoiceVox引擎并运行:
- 官方软件
- Docker镜像 (推荐):
docker run -d --name voicevox -p 50021:50021 voicevox/voicevox_engine:cpu-ubuntu20.04-latest
- Google Colab
-
选择AI后端并设置API密钥:
OpenAI (默认):
- 修改
module/config.json中provider为"openai" - 设置密钥: 环境变量
export OPENAI_API_KEY="your-key"或修改配置文件中openai.api_key
Google Gemini:
- 修改
module/config.json中provider为"gemini" - 设置密钥: 环境变量
export GEMINI_API_KEY="your-key"或修改配置文件中gemini.api_key - Gemini API密钥可在 Google AI Studio 免费获取
- 修改
-
修改
module/config.json的信息provider:openai或gemini,选择AI后端chat_mode:voice,text或者live,选择使用语音,文本或直播模式role: 角色性格塑造,可根据个人喜好自行调教max_tokens,temperature,top_p,frequency_penalty,presence_penalty: AI参数调整endpoint: VoiceVox引擎的地址,根据本地运行方式进行调整speaker_id: VoiceVox引擎的ID,可参照官方声音样品及对比对应角色进行调整username: 用户名, 仅在voice和text模式下有效queue_size: 能最大存储消息队列大小, 仅在live和text模式下有效。为保持记录最新,当消息队列达到最大值时,会自动清空早期1/2的消息room_id: 直播间ID,如https://live.bilibili.com/123456中的123456proxy: 免翻墙代理,如需使用代理,请将enabled设置为true并在host中填写代理地址
-
运行程序 (首先运行Voicevox):
python main.py
- vtuber运行角色皮肤需要用到Vtube Studio
- 如果需要将音频信号从一个应用程序传递到另一个应用程序或系统组件,可以使用Virtual Audio Cable
本项目仅供学习交流使用,不得用于商业用途,否则后果自负。