Update README.md

This commit is contained in:
hibobmaster 2023-04-11 11:11:59 +08:00
parent 276d0fe40b
commit a2a83930e9
No known key found for this signature in database
GPG Key ID: 316B77D7914D713C

View File

@ -1,79 +1,103 @@
## Introduction ## Introduction
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. 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.
![demo](https://i.imgur.com/kK4rnPf.jpeg "demo") ![demo](https://i.imgur.com/kK4rnPf.jpeg "demo")
## Feature ## Feature
1. Support openai and Bing AI 1. Support openai and Bing AI
2. Support Bing Image Creator 2. Support Bing Image Creator
3. Support E2E Encrypted Room 3. Support E2E Encrypted Room
## Installation and Setup ## Installation and Setup
Docker method(Recommended):<br> Docker method(Recommended):<br>
Edit `config.json` or `.env` with proper values <br> Edit `config.json` or `.env` with proper values <br>
Create an empty file, for persist database only<br> Create an empty file, for persist database only<br>
```bash ```bash
touch db touch db
sudo docker compose up -d sudo docker compose up -d
``` ```
<hr>
To run this application, follow the steps below:<br> <hr>
Normal Method:<br>
1. Clone the repository and create virtual environment: 1. Clone the repository and create virtual environment:
``` ```
git clone https://github.com/hibobmaster/matrix_chatgpt_bot.git git clone https://github.com/hibobmaster/matrix_chatgpt_bot.git
python -m venv venv python -m venv venv
source venv/bin/activate source venv/bin/activate
``` ```
2. Install the required dependencies:<br> 2. Install the required dependencies:<br>
``` ```
pip install -U pip setuptools wheel
pip install -r requirements.txt pip install -r requirements.txt
``` ```
3. Create a new config.json file and fill it with the necessary information:<br> 3. Create a new config.json file and fill it with the necessary information:<br>
Use password to login(recommended) or provide `access_token` <br> Use password to login(recommended) or provide `access_token` <br>
If not set:<br> If not set:<br>
`room_id`: bot will work in the room where it is in <br> `room_id`: bot will work in the room where it is in <br>
`api_key`: `!chat` command will not work <br> `api_key`: `!chat` command will not work <br>
`bing_api_endpoint`: `!bing` command will not work <br> `bing_api_endpoint`: `!bing` command will not work <br>
`bing_auth_cookie`: `!pic` command will not work `bing_auth_cookie`: `!pic` command will not work
```json ```json
{ {
"homeserver": "YOUR_HOMESERVER", "homeserver": "YOUR_HOMESERVER",
"user_id": "YOUR_USER_ID", "user_id": "YOUR_USER_ID",
"password": "YOUR_PASSWORD", "password": "YOUR_PASSWORD",
"device_id": "YOUR_DEVICE_ID", "device_id": "YOUR_DEVICE_ID",
"room_id": "YOUR_ROOM_ID", "room_id": "YOUR_ROOM_ID",
"api_key": "YOUR_API_KEY", "api_key": "YOUR_API_KEY",
"access_token": "xxxxxxxxxxxxxx", "access_token": "xxxxxxxxxxxxxx",
"bing_api_endpoint": "xxxxxxxxx", "bing_api_endpoint": "xxxxxxxxx",
"bing_auth_cookie": "xxxxxxxxxx" "bing_auth_cookie": "xxxxxxxxxx"
} }
``` ```
4. Start the bot: 4. Start the bot:
``` ```
python main.py python main.py
``` ```
## Usage ## Usage
To interact with the bot, simply send a message to the bot in the Matrix room with one of the two prompts:<br> To interact with the bot, simply send a message to the bot in the Matrix room with one of the two prompts:<br>
- `!gpt` To generate a response using free_endpoint API:
- `!gpt` To generate a response using free_endpoint API:
``` ```
!gpt What is the meaning of life? !gpt What is the meaning of life?
``` ```
- `!chat` To chat using official api with context conversation - `!chat` To chat using official api with context conversation
``` ```
!chat Can you tell me a joke? !chat Can you tell me a joke?
``` ```
- `!bing` To chat with Bing AI with context conversation - `!bing` To chat with Bing AI with context conversation
``` ```
!bing Do you know Victor Marie Hugo? !bing Do you know Victor Marie Hugo?
``` ```
- `!pic` To generate an image from Microsoft Bing - `!pic` To generate an image from Microsoft Bing
``` ```
!pic A bridal bouquet made of succulents !pic A bridal bouquet made of succulents
``` ```
## Bing AI and Image Generation ## Bing AI and Image Generation
https://github.com/waylaidwanderer/node-chatgpt-api <br>
https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/Bing-AI <br>
https://github.com/acheong08/EdgeGPT/blob/master/src/ImageGen.py https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/ <br>
![](https://i.imgur.com/KuYddd5.jpg) ![](https://i.imgur.com/KuYddd5.jpg)
![](https://i.imgur.com/3SRQdN0.jpg) ![](https://i.imgur.com/3SRQdN0.jpg)