A Twitch Chat Bot that reads twitch chat and creates a text to speech response using google could api and openai's GPT-3 text completion model.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
This is a project to setup your very own VTuber AI similar to "Neuro-Sama".
- Python
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
- VLC MUST BE DOWNLOADED ON YOUR COMPUTER
In order to install the prerequisites you will need to do:
- Install poetry
-
poetry install
-
Get a OpenAI API Key at OpenAPIKey
-
Get a Twitch API Token at TwitchToken
-
Create a Google Cloud Project with TTS Service enabled and download JSON credentials file. GoogleCloud
-
Clone the repo
git clone https://github.com/adi-panda/Kuebiko/
-
Add the Google Cloud JSON file into the project folder.
-
Rename
.env.example
to.env
and enter API Keys:TWITCH_CHANNEL="You're Twitch Token" TWITCH_TOKEN="Your TWITCH Channel Name" OPENAI_API_KEY="Your OpenAI API Key" GOOGLE_JSON_PATH="Your Google Cloud JSON Path" BOT_NAME="Neuro-Sama" ELEVENLABS_APIKEY="Your ElevenLabs API Key" ELEVENLABS_VOICEID="Your ElevenLabs Voice Id" WEBSOCKET_URL="Your WebSocket Url"
-
Download VTube Studio and use VBAudio Cable to route audio coming from the program.
-
Add the following script into OBS CaptionsScript
-
Create a new text source for captions, and set it to read from a file, select the
subtitle.txt
file from the project folder. -
In the script options put the name of you're text source.
-
Set the script in transform options to scale to inner bounds, and adjust the size of the captions.
-
Enjoy! For more details watch the attatched video.
-
IN ORDER TO CHANGE THE VOICE OF YOU'RE VTUBER you will need to change the following parameters in main.py Here is a list of supported voices
voice = texttospeech.VoiceSelectionParams( language_code="en-GB", name= "en-GB-Wavenet-B", ssml_gender=texttospeech.SsmlVoiceGender.MALE, )
-
Run
poetry run python main.py
Use this space to show useful examples of how a project can be used. Additional screenshots, code examples and demos work well in this space. You may also link to more resources.
For more examples, please refer to the Documentation
- Local LLama Support to remove the need for OpenAI and the associated restrictions
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License.
@adi_panda - hello(aṭ)adipanda.me
@truecaesarlp - realcaesarlp(aṭ)gmail.com
Project Link: You are here
Replace API Keys in code and add google cloud json file and program should work!