AI-Girlfriend Bot is a simple application based on OpenAI GPT-4 that simulates a conversation with an AI-powered virtual girlfriend. This is a simpler reproduction of the famous (and somewhat creepy) AI Girlfriend featured on Fortune.
- 🧡 Pretends to be your girlfriend
- 📛 Knows your name
- 🎙️ Accepts text or audio input
- 🔈 Replies with audio messages
- 💳 Supports payments through Stripe ($1/min)
- Python 3
- A Telegram bot token
- A MongoDB database
- API keys from OpenAI, ElevenLabs, MongoDB, and Stripe
- Clone the repository:
- Navigate to the cloned directory and install the required Python packages:
pip install -r requirements.txt
- Create a Telegram bot and obtain the bot token.
- Set up a MongoDB database (you can use the free tier). Name it as you wish and create two collections:
users
, andmessage_history
. Ensure network access is enabled for all IPs. - Obtain API keys from OpenAI, ElevenLabs, MongoDB, and Stripe (for testing) and write them in a
.env
file that you create. - Run the bot:
python3 telegram_bot.py
-
Payment & Registration: Users need to make a payment to interact with the bot. Upon payment, the user gets registered as a customer in the database with an expiration time.
-
Conversing with the Bot: When a user sends a message, a language model from OpenAI responds as the virtual girlfriend.
-
Saving the Conversation: The user's message and the model's response are saved in the MongoDB database and can be used as chat history for subsequent messages.
-
Text-to-Speech Conversion: The model's response is converted into audio using Eleven Labs' text-to-speech service.
-
Sending Audio Response: The audio is sent to the user as a response through Telegram.
We welcome contributions!
- OpenAI for GPT-4
- Eleven Labs for text-to-speech service
- Telegram for messaging platform
- MongoDB for database services
- Stripe for payment services