Skip to main content

AI powered Telegram bot for chatting, text-to-image and text-to-speech conversions

Project description

License Python version PyPi Black Downloads wakatime

Welcome to pytgpt-bot

This is a Telegram bot based on python-tgpt, a powerful tool designed to enhance your interactions with AI. This bot is built on the robust foundation of the pyTelegramBotAPI and offers a wide range of features to make your experience with AI more engaging and interactive. Whether you're looking to chat with AI, generate images and audio from text, pytgpt-bot has got you covered.

Prerequisites

Installation

  1. From Source

Clone repo and install.

git clone https://github.com/Simatwa/pytgpt-bot.git
cd pytgpt-bot
pip install .
  1. From Pypi (recommended)
pip install pytgpt-bot

Usage

Before getting started, ensure you've your Telegram bot token. If that's not the case then purpose to secure one from @BotFather.

Proceed to fill the env configuration file as per the needs and then rename it .env before firing up the bot python3 run.py.

Alternatively, using CLI:

$ pytgpt-bot run <Your Telegram Token>

Features

Access Commands

  • /start: This command shows you how to use the bot. It's like a guidebook for all the commands and what they do.

  • /chat: Use this to talk to the AI. You can ask questions, make requests, or just chat about anything.

  • /image: Want to see what something looks like? Type a description, and this command will create an image for you.

  • /prodia: Similar to /image, but it gives you a different style of image.

  • /speak: If you prefer listening to text instead of reading it, use this command to have the AI read out text for you.

  • /intro: Sets a new text for the chat intro.

  • /voice: Choose how the AI's voice sounds when it reads out text.

  • /provider: Switch between different AI providers for various features.

  • /awesome: Browse through a selection of cool chat intros.

  • /history: See past conversations with the bot.

  • /check: See what settings are currently active for your bot.

  • /reset: Start a new conversation from scratch.

  • /myid: Find out your Telegram ID.

  • /suspend: Temporarily stop the bot from responding.

  • /resume: Restart the bot after it's been suspended.

  • Any other text: Just type anything to continue chatting.

Administrative Commands

  • /clear: Remove all chat data from the bot's database. Be careful with this one!

  • /total: See how many chats the bot has had.

  • /drop: Delete everything from the chat table and bot logs. This is more extreme than /clear.

  • /sql: Run SQL queries on the bot's database. Use this with caution!

  • /logs: Check the bot's logs for activity, errors, and user interactions.

  • any other text: An alias for /chat, allowing users to continue with chatting.

[!TIP] For a better understanding of these commands, try interacting with a running bot from @pytgpt_bot. This can give you a practical idea of how the bot works and how to use it effectively.

Administrative Commands

  • /clear: Use this command to remove all chat data from the bot's database. It's a powerful tool, so use it carefully to avoid losing important data.

  • /total: This command shows you the total number of chats the bot has handled. It's a quick way to see how much interaction the bot has had.

  • /drop: If you need to completely wipe out all chat data and logs, use this command. It's more extreme than /clear and should be used with caution to avoid losing all data.

  • /sql: Want to directly interact with the bot's database? This command lets you run SQL queries. It's a powerful feature for managing and analyzing data, but be cautious to avoid mistakes.

  • /logs: This command gives you access to the bot's logs. It's useful for monitoring the bot's activity, spotting errors, and understanding user interactions.

[!IMPORTANT] Administrative commands are restricted to the users whose Telegram IDs are specified in the .env file.

Further Tips

  • The bot features inline query for text generation. The query must end with three ellipsis .... Remember to enable the mode from @BotFather. /setinline
  • You can as well add the bot to a Telegram channel. Grant it read and delete permissions. The access commands will still work out. @bot_username <text> will trigger text generation.
  • Channel Admin will control the bot access using the /suspend and /resume commands. (Experimental).

Support and Feedback

If you have any questions, feedback, or suggestions for pytgpt, please feel free to reach out. Your input is valuable in helping us improve and expand the bot's capabilities.

License

pytgpt-bot is open-source and available under the MIT License. Feel free to use, modify, and distribute the code as you see fit.


Thank you for using pytgpt-bot. Enjoy your AI-powered interactions!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytgpt_bot-0.1.7.4.tar.gz (18.9 kB view hashes)

Uploaded Source

Built Distribution

pytgpt_bot-0.1.7.4-py3-none-any.whl (18.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page