Giter Site home page Giter Site logo

sorokinvld / matrix_chatgpt_bot Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hibobmaster/matrix_chatgpt_bot

0.0 1.0 0.0 154 KB

A simple matrix bot that supports chatting with ChatGPT, Bing AI, Google Bard

Home Page: https://matrix.to/#/#public:matrix.qqs.tw

License: MIT License

Python 99.45% Dockerfile 0.55%

matrix_chatgpt_bot's Introduction

Introduction

This is a simple Matrix bot that support using OpenAI API, Langchain to generate responses from user inputs. The bot responds to these commands: !gpt, !chat, !pic, !new, !lc and !help depending on the first word of the prompt. ChatGPT

Feature

  1. Support official openai api and self host models(LocalAI)
  2. Support E2E Encrypted Room
  3. Colorful code blocks
  4. Langchain(Flowise)
  5. Image Generation with DALL·E or LocalAI or stable-diffusion-webui

Installation and Setup

Docker method(Recommended):
Edit config.json or .env with proper values
For explainations and complete parameter list see: https://github.com/hibobmaster/matrix_chatgpt_bot/wiki
Create two empty file, for persist database only

touch sync_db manage_db
sudo docker compose up -d

manage_db(can be ignored) is for langchain agent, sync_db is for matrix sync database


Normal Method:
system dependece: libolm-dev
  1. Clone the repository and create virtual environment:
git clone https://github.com/hibobmaster/matrix_chatgpt_bot.git

python -m venv venv
source venv/bin/activate
  1. Install the required dependencies:
pip install -U pip setuptools wheel
pip install -r requirements.txt
  1. Create a new config.json file and complete it with the necessary information:
    If not set:
    room_id: bot will work in the room where it is in
{
  "homeserver": "YOUR_HOMESERVER",
  "user_id": "YOUR_USER_ID",
  "password": "YOUR_PASSWORD",
  "device_id": "YOUR_DEVICE_ID",
  "room_id": "YOUR_ROOM_ID",
  "openai_api_key": "YOUR_API_KEY",
  "gpt_api_endpoint": "xxxxxxxxx"
}
  1. Launch the bot:
python src/main.py

Usage

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

  • !help help message

  • !gpt To generate a one time response:

!gpt What is the meaning of life?
  • !chat To chat using official api with context conversation
!chat Can you tell me a joke?
  • !lc To chat using langchain api endpoint
!lc All the world is a stage
  • !pic To generate an image using openai DALL·E or LocalAI
!pic A bridal bouquet made of succulents
  • !agent display or set langchain agent
!agent list
!agent use {agent_name}
  • !new + {chat} Start a new converstaion

LangChain(flowise) admin: https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/Langchain-(flowise)

Image Generation

demo1 demo2 https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/

Thanks

  1. matrix-nio
  2. acheong08
  3. 8go
JetBrains Logo (Main) logo.

matrix_chatgpt_bot's People

Contributors

hibobmaster avatar dependabot[bot] avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.