Бот для игры в 'Слова' для telegram бота

Бот для игры в 'Слова' для telegram бота


Возможно ли сделать телеграм бота для игры в слова на языке программирования python (Пользователь пишет слово, а бот придумывает слово на последнюю букву предыдущего. Например: Пользователь: машинА Бот: АрбуЗ Пользователь: ЗебрА И так далее) если да, то подскажите библиотеку



import telebot
import openai

bot = telebot.TeleBot("{Ваш TELEGRAM TOKEN}") # Регистрируется через BOT FATHER в TELEGRAM


openai.api_key = "{Ваш OPEN AI API KEY}" # Нужно быть зарегистированым в OPEN AI и получить токен.

last_letter = None


@bot.message_handler(func=lambda message: True)
def game(message):
    global last_letter  # Объявляем, что будем использовать глобальную переменную

    # Если last_letter пустая, значит это первый ход игры, и нужно получить первое слово от пользователя
    if last_letter is None:
        last_letter = message.text[-1].lower()
        bot.send_message(message.chat.id, "Начнем игру! Введите слово, которое начинается с буквы " + last_letter)
    else:
        first_letter = message.text[0].lower()
        if first_letter != last_letter:
            bot.send_message(message.chat.id,
                             "К сожалению, вы ввели неверное слово. Введите слово, которое начинается с буквы " + last_letter)
        else:
            last_letter = message.text[-1].lower()
            prompt = f"Give me a word that starts with {last_letter}"
            response = openai.Completion.create(
                engine="text-davinci-002",
                prompt=prompt,
                max_tokens=60,
                n=1,
                stop=None,
                temperature=0.5,
            )
            generated_word = response.choices[0].text.strip()
            if generated_word and generated_word[0].lower() == last_letter:
                bot.send_message(message.chat.id, generated_word)
                last_letter = generated_word[-1].lower()
            else:
                bot.send_message(message.chat.id, "К сожалению, я не знаю слов на букву " + last_letter)

bot.polling()



Report Page