ptb-gpt / app.py
dnth's picture
Update app.py
6e1fefe
raw history blame
No virus
1.43 kB
from telegram import Update
from telegram.ext import Updater, CommandHandler, CallbackContext, MessageHandler, Filters
import requests
from telegram import ChatAction
import os
def get_gpt_response(text):
r = requests.post(
url="https://hf.space/embed/dnth/gpt-j-6B/+/api/predict/",
json={"data": [text]},
)
response = r.json()
return response["data"][0]
def hello(update: Update, context: CallbackContext) -> None:
intro_text = """
🤖 Greetings human! \n
🤗 I'm a bot hosted on Hugging Face Spaces. \n
🦾 I can query the mighty GPT-J-6B model and send you a response here. Try me.\n
✉️ Send me a text to start and I shall generate a response to complete your text!\n\n
‼️ PS: Responses are not my own (everything's from GPT-J-6B). I'm not conscious (yet).\n
Blog post: https://dicksonneoh.com/portfolio/deploy_gpt_hf_models_on_telegram/
"""
update.message.reply_text(intro_text)
def respond_to_user(update: Update, context: CallbackContext):
update.message.chat.send_action(action="Querying GPT-J")
response_text = get_gpt_response(update.message.text)
update.message.reply_text(response_text)
updater = Updater(os.environ['telegram_api_key'])
updater.dispatcher.add_handler(CommandHandler("start", hello))
updater.dispatcher.add_handler(MessageHandler(Filters.text & ~Filters.command, respond_to_user))
updater.start_polling()
updater.idle()