Асинхронная программа Python заблокирована ⇐ Python

Программы на Python
Anonymous
Асинхронная программа Python заблокирована

Сообщение Anonymous »

Я решил написать телеграмм-бота на aiogram с реализацией математической нейронной сети qwen 2.5 через api gradioc_lient.
Проблема в том, что при наличии запроса к API асинхронная программа блокируется и бот перестает отвечать до тех пор, пока не выдаст результат.
Можно ли как-нибудь это исправить?
import uuid
from aiogram import Router, F
from aiogram.filters import CommandStart, Command
from aiogram.types import Message
from gradio_client import Client, handle_file

start_router = Router()

async def image_hueta(fileName):
client = Client("Qwen/Qwen2-Math-Demo")
result = client.predict(
image=handle_file(fileName),
sketchpad={"background": handle_file(
'https://raw.githubusercontent.com/gradi ... es/bus.png'), "layers": [],
"composite": None},
question="доказать равенсво",
api_name="/math_chat_bot"
)
return result

@start_router.message(CommandStart())
async def cmd_start(message: Message):
await message.answer("Хай!!!")

@start_router.message(F.photo)
async def send_photo(message: Message):
local_filename = f"{uuid.uuid4()}.png"
await message.bot.download(file = message.photo[-1].file_id, destination=local_filename)
await message.answer("Ваш запрос обрабатывается...")
result = await image_hueta(local_filename)
await message.answer(f"{result}")


.


Подробнее здесь: https://stackoverflow.com/questions/790 ... is-blocked

Вернуться в «Python»