from openai import AsyncOpenAI
from aiogram import types
from create_bot import dp, bot
import logging
from global_conf import CONFIG

admins = CONFIG['telegram_admins_ids']



ban_comands    = ['/dick','/topdick']

# Image_promt =['тупица сгенерируй','тупица сгенерируй картинку',\
#                                          'тупица отправь картинку', 'тупица отправь картинку']
client = AsyncOpenAI(api_key="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")

# @dp.message_handler(commands=['image'])
# async def send_image(message: types.Message):
#     if message.from_user.id in admins and message.chat.type == 'private':
#         try:
#             description = message.text.replace('/image', '').strip()
            
#             if not description:
#                 await message.reply('Ты даун, описание запроса напиши после пробела')
#                 return
#         except Exception as e:
#             logging.error(f'Error in send_image: {e}')
#         try:

#             response = openai.Image.create(
#             prompt=message.text,
#             n=1,
#             size="1024x1024",
#             response_format="url",
            
#         )
#             image_url = response['data'][0]['url']
#             await message.answer('Генерирую изображение...')
#             await message.reply_photo(image_url)
#         except Exception as e:
#             await message.reply('у меня не получилось')


async def gpt_text(req):
    completion = await client.chat.completions.create(
        messages=[
            {
                "role": "user",
                "content": req,
            }
        ],
        model="gpt-4",
    )
    return completion

@dp.message_handler()
async def send(message: types.Message):
    if message.from_user.id in admins and message.chat.type == 'private':
        response = await gpt_text(message.text)
        await message.answer(response.choices[0].message.content)