Skip to main content

Lightweight library for working with Telegram Bot Api + Generate Images, Audio and Text

Project description

Ekogram

Ekogram — лёгкий Python-модуль для Telegram Bot API и работы с нейросетями.
Он объединяет простую работу с Telegram и мощные функции: генерация текста и изображений, перевод и озвучка.

Установка

pip install ekogram

или для macOS:

pip3 install ekogram

Возможности

  • Telegram Bot API: отправка сообщений, медиа, inline, reply клавиатуры и т.п.
  • Мощные AI-инструменты: ИИ, генерация картинок, перевод, озвучка.
  • Поддержка классов Telegram: Message, User, Chat, Audio, Photo, Voice и т.д.
  • Работа с callback_query, inline_query, handlers

🤖 Быстрый старт бота

from ekogram import Bot

bot = Bot("ВАШ_ТОКЕН")

@bot.message_handler(commands=["start"])
def start_handler(message):
    bot.reply_message(chat_id=message.chat.id, text="Привет! Я бот Ekogram!")

bot.polling()

🧠 Использование AI

OnlySQ — бесплатный набор ии; Deef - дополнительные функции

from ekogram import OnlySQ

gpt = OnlySQ()

messages = [
    {"role": "system", "content": "Отвечай кратко и по делу"},
    {"role": "user", "content": "Расскажи, кто такой Эйнштейн?"}
]

print(gpt.generate_answer("gemini-2.5-flash", messages))

OnlySQ — генерация картинок

from ekogram import OnlySQ

img = OnlySQ()
print(img.generate_image(prompt="cyberpunk robot with fire"))

Deef — перевод текста

from ekogram import Deef

tr = Deef()
print(tr.translate("Hello, how are you?", target="ru"))

ChatGPT — сессия с GPT

from ekogram import ChatGPT

chat = ChatGPT(url='https://chatgpt.com', headers={})
print(chat.generate_chat_completion(model="gpt-4o-mini", messages=[{"role": 'user', "content": "Hi"}]))

🎤 Озвучка текста

from ekogram import Deef

gpt = Deef()
gpt.speech(text="Привет, как дела?", filename="voice", voice="nova")    #filename -> voice.mp3

📎 Пример кнопок

from ekogram import Bot, Markup

bot = Bot("TOKEN")

@bot.message_handler(commands=["menu"])
def menu(message):
    buttons = [{"text": "Кнопка 1"}, {"text": "Кнопка 2"}]
    markup = Markup.create_reply_keyboard(buttons)
    bot.reply_message(chat_id=message.chat.id, text="Выберите вариант:", reply_markup=markup)

📌 Поддерживаемые классы

  • Telegram: User, Chat, Message, File, Photo, Voice, Video, Sticker, Document, Location, Dice и др.
  • InputMedia: InputMediaPhoto, InputMediaVideo, InputMediaAudio, InputMediaDocument, InputMediaAnimation
  • Inline: InlineQuery, InlineQueryResultArticle, InlineQueryResultPhoto, InlineQueryResultVideo
  • Markup: Markup.create_inline_keyboard(), Markup.create_reply_keyboard(), Markup.remove_reply_keyboard()
  • AI: OnlySQ, Deef, ChatGPT

🔒 Лицензия

MIT License

📫 Обратная связь

Email: siriteamrs@gmail.com

Если возникнут идеи, баги, предложения — пишите 🙌

Project details


Release history Release notifications | RSS feed

This version

2.4.5

Download files

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

Source Distribution

ekogram-2.4.5.tar.gz (33.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ekogram-2.4.5-py3-none-any.whl (31.6 kB view details)

Uploaded Python 3

File details

Details for the file ekogram-2.4.5.tar.gz.

File metadata

  • Download URL: ekogram-2.4.5.tar.gz
  • Upload date:
  • Size: 33.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for ekogram-2.4.5.tar.gz
Algorithm Hash digest
SHA256 c8f854964215683b497d452a1744ccf85e790162a5e3fae2ce384fd3e3605aab
MD5 edff3232ea97ff2d8a9f459924e5af5a
BLAKE2b-256 e86d7285f90c04f879eca875d1f2c64b4e171965480e20d181568409c99799bb

See more details on using hashes here.

File details

Details for the file ekogram-2.4.5-py3-none-any.whl.

File metadata

  • Download URL: ekogram-2.4.5-py3-none-any.whl
  • Upload date:
  • Size: 31.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for ekogram-2.4.5-py3-none-any.whl
Algorithm Hash digest
SHA256 1ea2d105992465276ee3ebcdecd9d626429a845a953d75f719dc9316adffe79b
MD5 3e16686035fa310db4331ae277ad78fb
BLAKE2b-256 941432bba36f4ae08e905a3c99d05745c910f1d6da8a69e94a9968db0de3a2c4

See more details on using hashes here.

Supported by

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