Coder Social home page Coder Social logo

petrutaraul / ema Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 3.43 MB

Ema is a Telegram bot that serves as a helpful female assistant named Ema. Ema is designed to answer all your questions or maintain a conversation. The bot is capable of processing text, voice messages, generating photos, and creating image variations. ๐Ÿ“ฑ๐Ÿ”Š๐Ÿ–ผ๏ธ

License: MIT License

Python 100.00%

ema's Introduction

Ema Telegram Bot ๐Ÿค–

alt text

Photo generated using https://firefly.adobe.com

Context:

  • Why I created Ema?
    • In this age of AI, I've crafted a bot that's designed to offer my non-technical loved ones a natural and effortless way to access information quickly. By integrating it right into their chat group, I hope that they'll be able to tap into the power of AI without feeling overwhelmed or intimidated.
  • Why open source?
    • Because I also like open-source projects, and also I hope to see better Ema versions created by people smarter than me
  • Why I created Ema from scratch instead of using an already existent bot project?
    • Because as a nice quote says: "Life is a DIY project"

Ema is a Telegram bot that serves as a helpful female assistant named Ema. Ema is designed to answer all your questions or maintain a conversation. The bot is capable of processing text, voice messages, generating photos, and creating image variations. ๐Ÿ“ฑ๐Ÿ”Š๐Ÿ–ผ๏ธ

Features ๐ŸŒŸ

  • Receive text messages from Ema ๐Ÿ’ฌ
  • Receive voice messages from Ema ๐ŸŽ™๏ธ
  • Receive generated photos from Ema ๐Ÿ“ท
  • Receive image variations from Ema ๐ŸŽจ
  • Transcribe voice messages into text ๐Ÿ“

Installation ๐Ÿ”ง

To use this bot, you need to have the following dependencies installed:

  • Python 3.10 ๐Ÿ
  • telebot
  • openai
  • subprocess
  • langdetect
  • edge-tts
  • openai-whisper (this will use your GPU to transcribe the audio)
  • ffmpeg-python
  • imgcat
  • Pillow (Python Imaging Library) ๐Ÿ“ธ

Usage ๐Ÿš€

Please use conda to run this project. Check https://docs.anaconda.com/free/anaconda/install/ to see how to install conda on your machine.

  1. Clone the repository.
  2. Go into the repository directory and run this 3 commands
    • conda env create --file ema.yaml
    • conda activate ema_environment
    • pip install -r requirements.txt
  3. Go into config.py file
    • Replace TELEGRAM_BOT_TOKEN with your TOKEN ๐Ÿ”‘. Get a token from here
    • Replace OPEN_API_KEY with your KEY. Get your ๐Ÿ”‘ from here
    • Optionally: Replace any other values. Make it your own.
  4. Run the ema.py file to start the bot. ๐Ÿƒ
  5. Open the Telegram app and start chatting with your new bot. ๐Ÿ”

Use the following commands to interact with Ema:

  • @ema - Receive a text message from Ema ๐Ÿ’ฌ
    • alt text
  • @vema - Receive a vocal message from Ema ๐ŸŽ™๏ธ
    • alt text
  • @pema - Receive a generated photo from Ema ๐Ÿ“ท
    • alt text
  • @iema - Receive an image variation from Ema ๐ŸŽจ
    • alt text
  • @tema - Receive a vocal transcribe text from Ema ๐Ÿ“
    • alt text

You can also reply to messages sent by Ema using the same commands:

  • Ask @ema or @vema to give you more information about a message
    • alt text
  • Ask @pema to generate a photo based on a reply
    • alt text
  • Ask @iema to generate a image variation based on a reply
    • alt text

License ๐Ÿ“„

This project is licensed under the MIT License.

ema's People

Contributors

petrutaraul avatar

Watchers

Kostas Georgiou avatar  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.