Giter Club home page Giter Club logo

telegramrpbot's Introduction

ChatGPT Telegram RP (RolePlay) Bot: Add a roleplay bot in your group chats

Bring the ability to setup a full roleplay experience in your telegram group chats.

Currently this is the work in progress.

Features

  • Create and use chat-bounded chat modes by describing the agent and how you want it to act
  • Introduce yourself to the model
  • Add facts about yourself or other people that the model would later use
  • Chat with the bot
    • Send it text
    • Send it pictures
    • Send it voice messages
    • Receive back text
    • Receive back puctures
  • Flexible tracking of the AI resources usage
  • Flexible permissions and limits
  • This bot is built with the idea of not being constrained by just Telegram bot, it could be adapted for most other platforms as well.

Bot commands

  • /start - Start the bot in current chat
  • /stop - Stop the bot in current chat
  • /reset – Reset the dialogue history
  • /mode [mode] – Select chat mode from existing ones
  • /addmode [mode] [description] - Add new chat mode
  • /deletemode [mode] - delete existing chat mode from this chat
  • /introduce [your introduction] - Add fact about yourself
  • /fact [@tg_handle] [fact] - add fact about the person within the chat
  • /clearfacts [@tg_handle] - delete facts for given person
  • /usage – Show usage limits for your user
  • /language - Set bot preferred language
  • /conversationtracker - Turn on/off the conversation tracker for current chat
  • /ban [@tg_handle] - Ban the user (could work by replying to user's message as well)
  • /unban [@tg_handle] - Unban the user
  • /help – Show help

Setup

  1. Get your OpenAI API key.

  2. Get your Telegram bot token from @BotFather.

  3. Compose a .env file locally according to the .env.example file. Make sure to specify proper database credentials.

  4. Run docker containers with docker-compose.yaml file by doing docker-compose up locally.

  5. (Optional) TODO: for more advanced use cases you can setup environment for automatic deployment (see .github/workflows/deploy.yaml)

telegramrpbot's People

Contributors

flagro avatar

Stargazers

Dmitry Wolf avatar  avatar

Watchers

Kostas Georgiou avatar  avatar

telegramrpbot's Issues

Add usage limits logic

Ignore the user request if he exceeded to usage limit

Maybe implement a logic with estimation of the needed tokens first

Decide on thread message store logic

  • Most likely it's reasonable to avoid parsing files when the bot is not explicitly mentioned
  • There should be a bot command with option to disable this logic

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.