A simple matrix bot that supports chatting with ChatGPT, Bing AI, Google Bard
Find a file
2023-04-10 19:37:43 +08:00
.github/workflows refactor code 2023-04-10 10:52:18 +08:00
.vscode refactor code 2023-04-10 10:52:18 +08:00
.dockerignore refactor code 2023-04-10 10:52:18 +08:00
.env.example refactor code 2023-04-10 10:52:18 +08:00
.gitignore refactor code 2023-04-10 10:52:18 +08:00
askgpt.py Support E2E encrypted room 2023-04-10 19:37:43 +08:00
bing.py Support E2E encrypted room 2023-04-10 19:37:43 +08:00
BingImageGen.py refactor code 2023-04-10 10:52:18 +08:00
bot.py Support E2E encrypted room 2023-04-10 19:37:43 +08:00
compose.yaml refactor code 2023-04-10 10:52:18 +08:00
config.json.sample Support login via access_token 2023-03-12 23:24:05 +08:00
Dockerfile refactor code 2023-04-10 10:52:18 +08:00
log.py Support E2E encrypted room 2023-04-10 19:37:43 +08:00
main.py Support E2E encrypted room 2023-04-10 19:37:43 +08:00
README.md refactor code 2023-04-10 10:52:18 +08:00
requirements.txt Support E2E encrypted room 2023-04-10 19:37:43 +08:00
send_image.py Add Image Generation by Microsoft Bing 2023-03-22 22:28:22 +08:00
send_message.py Support E2E encrypted room 2023-04-10 19:37:43 +08:00
v3.py refactor code 2023-04-10 10:52:18 +08:00

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. demo

Installation and Setup

Docker method(Recommended):
Edit config.json or .env with proper values
Create an empty file, for persist database only

touch db
sudo docker compose up -d

To run this application, follow the steps below:

  1. Clone the repository:
git clone https://github.com/hibobmaster/matrix_chatgpt_bot.git
  1. Install the required dependencies:
pip install -r requirements.txt
  1. Create a new config.json file and fill it with the necessary information:
    Use password to login(recommended) or provide access_token
    If not set:
    room_id: bot will work in the room where it is in
    api_key: !chat command will not work
    bing_api_endpoint: !bing command will not work
    bing_auth_cookie: !pic command will not work
{
    "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"
}
  1. Start the bot:
python main.py

Usage

To interact with the bot, simply send a message to the bot in the Matrix room with one of the two prompts:

  • !gpt To generate a response using free_endpoint API:
!gpt What is the meaning of life?
  • !chat To chat using official api with context conversation
!chat Can you tell me a joke?
  • !bing To chat with Bing AI with context conversation
!bing Do you know Victor Marie Hugo?
  • !pic To generate an image from Microsoft Bing
!pic A bridal bouquet made of succulents

Bing AI and Image Generation

https://github.com/waylaidwanderer/node-chatgpt-api
https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/Bing-AI
https://github.com/acheong08/EdgeGPT/blob/master/src/ImageGen.py