Skip to content

Alexvidalcor/Jepetobot

Repository files navigation

CURRENT STATUS: STABLE




Telegram bot developed to explore the AI possibilities of OpenAI.

Support for deployment on AWS is included through Github Actions.


Main features 🔥

AWS cloud support.

  • IaC (Infrastructure as Code) support for cloud infrastructure on Amazon Web Services is included through the AWS CDK.

  • Github Codespaces support is included (see devcontainer)

  • Support for local execution is also included.

Automated deployment of cloud infrastructure and code.

  • The deployment of cloud infrastructure on AWS has been automated through Github Actions.

  • New code releases have also been automated via Github Actions and Docker containers.

Easy access to ChatGPT (GPT-4 TURBO) from Telegram

Adapted to the latest chatgpt model 'Identity' change from bot options 'Temperature' change from bot options

Management system of users

  • A system has been added to enable or deny access to specific user IDs

  • The user management system can also be applied to the configuration access.

Support for text and voice note conversations (tts-1 and whisper-1 models).

  • The bot remembers the conversations of each user.

  • It is allowed to delete the stored conversations easily from the bot settings.

Statistics enabled

  • A statistics function has been implemented that allows more control over the behavior of the application.

  • This feature complements an advanced monitoring system.

Focus on security

  • Encrypted database and user information.

  • Secured communications by default.

Easy access to Dalle3 from Telegram

  • Support for the use of Dalle3 in image generation is included.

  • This feature allows you to generate images from text messages and voice notes.

Easy access to Vision from Telegram

  • Support for the use of Vision in image recognition is included.

  • This feature allows you to ask about image elements.


Getting started 🚀

As the entire infrastructure is automated in the cloud, it is not necessary to install anything locally. You only need to have the following:




  • The Github account is necessary to fork the code and to be able to execute the deployment automations

  • To create an account on Github, go to the official website and follow the steps described there.




  • Obviously, you need a Telegram account to deploy a bot on Telegram.

  • To create a Telegram account, you must download a Telegram client and follow the steps described there.

  • It is necessary to obtain a token from the Telegram Bot API.

  • Instructions for it are HERE.






  • All the infrastructure of the application is deployed in AWS, therefore, an account is needed in said public cloud provider to be able to create the necessary resources.

  • You can see how to create an AWS account HERE

  • It is necessary to obtain a Access Key and a Secret Access Key from the AWS Management Console.

  • Instructions for it are HERE






  • The main functionality of Jepetobot is based on the OpenAi api, therefore an account is needed there.

  • To create an OpenAi account, you can click HERE

  • It is necessary to obtain a token from the OpenAI API.

  • Instructions for it are HERE.


❗ If you already have the above, check the Wiki for step by step usage guide

Cloud deployment overview ☁️

Currently there are three Github Actions workflows prepared to automate the cloud deployment:

Resources EC2 S3 secretmanager codedeploy cloudwatch lambda
Purpose Machine where the application is hosted Bucket where application versions are stored Secret Manager inside AWS Automates the deployment of new versions of the application Monitor logs easily Trigger custom task

Update cloud app code with every push to master branch. It generates a slight service downtime of a few seconds.

Like the file name itself suggests, it deletes all the deployed cloud resources in AWS.


Below is the diagram used for the automated deployment of cloud resources and the application itself:

Deploy resources Update application

⚡ All use of cloud and OpenAi api generate costs, use it at your own risk!

Built with 🛠️


Disclaimer 📝

  • I'm not responsible for bricked devices or software misconfigurations.
  • I'm not responsible for possible high cloud costs/openai api costs generated by using the code of this project.
    • You are free to use the software of this project and it is your decision. As I explain in the wiki, this project originates from an experiment and fully stable operation is not guaranteed.
  • I'm not responsible for data loss.

This is a personal project with academic origins and is not intended to be a commercial or professional solution. If you want to use it, it is at your own risk.


Roadmap 🗓️

❗ Check the Project dashboard for more info!

Wiki 📕

❗ Check the Wiki for more info!

License 📌

This project is licensed under the License (GNU GPL-V3) - see the LICENSE.md file for details.


⌨️ with ❤️ by Alexvidalcor 😊