mirror of
https://github.com/hibobmaster/matrix_chatgpt_bot.git
synced 2024-10-01 05:35:36 -04:00
A simple matrix bot that supports chatting with ChatGPT, Bing AI, Google Bard
bing-aibing-image-creatorbotchatbotchatgptgoogle-bardgpt3-turbomatrixmatrix-dendritematrix-niomatrix-synapsepython
.github/workflows | ||
.vscode | ||
.dockerignore | ||
.env.example | ||
.gitignore | ||
askgpt.py | ||
bing.py | ||
BingImageGen.py | ||
bot.py | ||
compose.yaml | ||
config.json.sample | ||
Dockerfile | ||
log.py | ||
main.py | ||
README.md | ||
requirements.txt | ||
send_image.py | ||
send_message.py | ||
v3.py |
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.
Roadmap
- Support reading config from environment variables
Solve sync token persist problem when using access_token to loginDone!Support e2e sessionDone!
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:
- Clone the repository:
git clone https://github.com/hibobmaster/matrix_chatgpt_bot.git
- Install the required dependencies:
pip install -r requirements.txt
- Create a new config.json file and fill it with the necessary information:
Use password to login(recommended) or provideaccess_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"
}
- 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