Spaces:
Runtime error
Runtime error
| import openai | |
| from aiogram import Bot, types | |
| from aiogram.dispatcher import Dispatcher | |
| from aiogram.utils import executor | |
| from config import TELEGRAM_TOKEN, OPENAI_API_KEY, AUTHORIZED_USERS | |
| token = TELEGRAM_TOKEN | |
| openai.api_key = OPENAI_API_KEY | |
| bot = Bot(token) | |
| dp = Dispatcher(bot) | |
| async def is_authorized(user_id): | |
| if not AUTHORIZED_USERS or user_id in AUTHORIZED_USERS: | |
| return True | |
| return False | |
| async def generate_response(prompt): | |
| response = openai.Completion.create( | |
| model="text-davinci-003", | |
| prompt=prompt, | |
| temperature=0.7, | |
| max_tokens=500, | |
| top_p=0.9, | |
| frequency_penalty=0.5, | |
| presence_penalty=0.6, | |
| stop=["You:"] | |
| ) | |
| return response['choices'][0]['text'] | |
| async def send(message: types.Message): | |
| if not await is_authorized(message.from_user.id): | |
| await message.answer("Sorry, you don't have permission to use this bot.") | |
| return | |
| conversation_history = f"User: {message.text}\nAI:" | |
| response = await generate_response(conversation_history) | |
| await message.answer(response) | |
| if __name__ == '__main__': | |
| executor.start_polling(dp, skip_updates=True) | |