2023-03-05 09:07:25 -05:00
## Introduction
2023-04-10 23:11:59 -04:00
2023-03-22 10:41:01 -04:00
This is a simple Matrix bot that uses OpenAI's GPT API and Bing AI to generate responses to user inputs. The bot responds to four types of prompts: `!gpt` , `!chat` and `!bing` and `!pic` depending on the first word of the prompt.
2023-03-05 09:07:25 -05:00
![demo ](https://i.imgur.com/kK4rnPf.jpeg "demo" )
2023-04-10 09:40:39 -04:00
## Feature
2023-04-10 23:11:59 -04:00
2023-04-10 09:40:39 -04:00
1. Support openai and Bing AI
2. Support Bing Image Creator
3. Support E2E Encrypted Room
2023-04-06 21:28:47 -04:00
2023-03-05 09:07:25 -05:00
## Installation and Setup
2023-04-10 23:11:59 -04:00
2023-04-09 22:52:18 -04:00
Docker method(Recommended):< br >
Edit `config.json` or `.env` with proper values < br >
2023-03-10 11:47:04 -05:00
Create an empty file, for persist database only< br >
2023-04-10 23:11:59 -04:00
2023-03-09 10:45:25 -05:00
```bash
2023-04-09 22:52:18 -04:00
touch db
2023-03-09 10:45:25 -05:00
sudo docker compose up -d
```
2023-04-10 23:11:59 -04:00
2023-03-09 10:45:25 -05:00
< hr >
2023-04-10 23:11:59 -04:00
Normal Method:< br >
2023-03-09 10:45:25 -05:00
2023-04-10 09:40:39 -04:00
1. Clone the repository and create virtual environment:
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
```
git clone https://github.com/hibobmaster/matrix_chatgpt_bot.git
2023-04-10 09:40:39 -04:00
python -m venv venv
source venv/bin/activate
2023-03-05 09:07:25 -05:00
```
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
2. Install the required dependencies:< br >
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
```
2023-04-10 23:11:59 -04:00
pip install -U pip setuptools wheel
2023-03-05 09:07:25 -05:00
pip install -r requirements.txt
```
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
3. Create a new config.json file and fill it with the necessary information:< br >
2023-04-10 23:11:59 -04:00
Use password to login(recommended) or provide `access_token` < br >
If not set:< br >
`room_id` : bot will work in the room where it is in < br >
`api_key` : `!chat` command will not work < br >
`bing_api_endpoint` : `!bing` command will not work < br >
`bing_auth_cookie` : `!pic` command will not work
2023-03-05 09:07:25 -05:00
```json
{
2023-04-10 23:11:59 -04:00
"homeserver": "YOUR_HOMESERVER",
"user_id": "YOUR_USER_ID",
"password": "YOUR_PASSWORD",
"device_id": "YOUR_DEVICE_ID",
"room_id": "YOUR_ROOM_ID",
"api_key": "YOUR_API_KEY",
"access_token": "xxxxxxxxxxxxxx",
"bing_api_endpoint": "xxxxxxxxx",
"bing_auth_cookie": "xxxxxxxxxx"
2023-03-05 09:07:25 -05:00
}
```
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
4. Start the bot:
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
```
python main.py
```
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
## Usage
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
To interact with the bot, simply send a message to the bot in the Matrix room with one of the two prompts:< br >
2023-04-10 23:11:59 -04:00
2023-04-11 01:41:26 -04:00
- `!gpt` To generate a one time response:
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
```
!gpt What is the meaning of life?
```
2023-04-10 23:11:59 -04:00
2023-03-10 12:01:25 -05:00
- `!chat` To chat using official api with context conversation
2023-04-10 23:11:59 -04:00
2023-03-05 09:07:25 -05:00
```
!chat Can you tell me a joke?
2023-03-10 10:45:38 -05:00
```
2023-04-10 23:11:59 -04:00
2023-03-10 12:01:25 -05:00
- `!bing` To chat with Bing AI with context conversation
2023-04-10 23:11:59 -04:00
2023-03-10 12:01:25 -05:00
```
!bing Do you know Victor Marie Hugo?
```
2023-04-10 23:11:59 -04:00
2023-03-22 10:41:01 -04:00
- `!pic` To generate an image from Microsoft Bing
2023-04-10 23:11:59 -04:00
2023-03-22 10:41:01 -04:00
```
!pic A bridal bouquet made of succulents
```
2023-04-10 23:11:59 -04:00
2023-03-22 10:41:01 -04:00
## Bing AI and Image Generation
2023-04-10 23:11:59 -04:00
https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/ < br >
2023-03-10 12:01:25 -05:00
![](https://i.imgur.com/KuYddd5.jpg)
2023-03-22 10:41:01 -04:00
![](https://i.imgur.com/3SRQdN0.jpg)