Commit 8620d69

benny-dou <60535774+benny-dou@users.noreply.github.com>
2026-02-13 07:12:52
fix(gemini): force "IMAGE" only response_modalities
1 parent 6ae1c77
Changed files (1)
src
ai
images
src/ai/images/gemini.py
@@ -46,7 +46,7 @@ async def gemini_image_generation(
             params: dict[str, Any] = {
                 "model": model_id,
                 "contents": await get_gemini_contexts(client, message, model_name, max_reference_img=max_reference_img),
-                "config": {"response_modalities": ["TEXT", "IMAGE"]},
+                "config": {"response_modalities": ["IMAGE"]},
             }
             if conf := literal_eval(gemini_generate_content_config):
                 params["config"] |= conf
@@ -55,7 +55,7 @@ async def gemini_image_generation(
                 aspect_ratio, _ = extract_aspect_ratio(message.content)
                 image_config["aspect_ratio"] = aspect_ratio or "16:9"
                 params["config"]["image_config"] = image_config
-            logger.debug(f"genai.Client().models.generate_content_stream(**{params})")
+            logger.debug(f"genai.Client().models.generate_content(**{params})")
             response = await gemini.aio.models.generate_content(**params)
             parts = glom(response.model_dump(), "candidates.0.content.parts", default=[]) or []
             texts = "".join([p.get("text") or "" for p in parts if not p.get("thought")])
@@ -64,6 +64,7 @@ async def gemini_image_generation(
                 await send2tg(client, message, texts=f"๐ŸŒ**{model_name}**:\n{texts}", media=media, caption_above=True, **kwargs)
                 await delete_message(status_msg)
                 return True
+            await modify_progress(status_msg, text=f"โŒ{response.model_dump()}", force_update=True, **kwargs)
         except Exception as e:
             logger.error(f"Gemini API error: {e}")
             await modify_progress(status_msg, text=f"โŒ{e}", force_update=True, **kwargs)