This commit is contained in:
xds
2026-02-03 10:24:07 +03:00
parent befd1a66f7
commit e8b91af804

View File

@@ -329,17 +329,27 @@ async def generate_image(
bot: Bot,
gemini: GoogleAdapter
) -> List[BufferedInputFile]:
data = await state.get_data()
char_id = data.get("char_id")
if not char_id:
raise ValueError("Character ID not found in state")
state_value = await state.get_state()
media_group_bytes = []
ar = AspectRatios.NINESIXTEEN
quality = Quality.TWOK
char: Character = await dao.chars.get_character(char_id)
if state_value is None:
data = await state.get_data()
ar = AspectRatios[data['aspect_ratio']]
quality = Quality[data['quality']]
char_id = data.get("char_id")
if not char_id:
raise ValueError("Character ID not found in state")
char: Character = await dao.chars.get_character(char_id)
# Начинаем список с фото персонажа
file_byes = await bot.download(char.character_image_doc_tg_id)
media_group_bytes.append(file_byes.read())
file_byes.close()
# Начинаем список с фото персонажа
file_byes = await bot.download(char.character_image_doc_tg_id)
media_group_bytes = [file_byes.read()]
file_byes.close()
if media:
# Скачиваем файлы
# tasks вернут список объектов BytesIO
@@ -362,8 +372,8 @@ async def generate_image(
gemini.generate_image,
prompt=prompt,
images_list=media_group_bytes,
aspect_ratio=AspectRatios[data['aspect_ratio']],
quality=Quality[data['quality']],
aspect_ratio=ar,
quality=quality,
)
images = []
@@ -378,7 +388,7 @@ async def generate_image(
images.append(
BufferedInputFile(
content,
filename=f"img_{random.randint(1000, 9999)}.png"
filename=f"img_{random.randint(1000, 99999)}.png"
)
)