mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2026-03-06 09:47:35 +08:00
fix(api-nodes): force Gemini to return uncompressed images (#12516)
This commit is contained in:
parent
6d11cc7354
commit
2687652530
@ -116,9 +116,15 @@ class GeminiGenerationConfig(BaseModel):
|
|||||||
topP: float | None = Field(None, ge=0.0, le=1.0)
|
topP: float | None = Field(None, ge=0.0, le=1.0)
|
||||||
|
|
||||||
|
|
||||||
|
class GeminiImageOutputOptions(BaseModel):
|
||||||
|
mimeType: str = Field("image/png")
|
||||||
|
compressionQuality: int | None = Field(None)
|
||||||
|
|
||||||
|
|
||||||
class GeminiImageConfig(BaseModel):
|
class GeminiImageConfig(BaseModel):
|
||||||
aspectRatio: str | None = Field(None)
|
aspectRatio: str | None = Field(None)
|
||||||
imageSize: str | None = Field(None)
|
imageSize: str | None = Field(None)
|
||||||
|
imageOutputOptions: GeminiImageOutputOptions = Field(default_factory=GeminiImageOutputOptions)
|
||||||
|
|
||||||
|
|
||||||
class GeminiImageGenerationConfig(GeminiGenerationConfig):
|
class GeminiImageGenerationConfig(GeminiGenerationConfig):
|
||||||
|
|||||||
@ -634,7 +634,7 @@ class GeminiImage(IO.ComfyNode):
|
|||||||
|
|
||||||
if not aspect_ratio:
|
if not aspect_ratio:
|
||||||
aspect_ratio = "auto" # for backward compatability with old workflows; to-do remove this in December
|
aspect_ratio = "auto" # for backward compatability with old workflows; to-do remove this in December
|
||||||
image_config = GeminiImageConfig(aspectRatio=aspect_ratio)
|
image_config = GeminiImageConfig() if aspect_ratio == "auto" else GeminiImageConfig(aspectRatio=aspect_ratio)
|
||||||
|
|
||||||
if images is not None:
|
if images is not None:
|
||||||
parts.extend(await create_image_parts(cls, images))
|
parts.extend(await create_image_parts(cls, images))
|
||||||
@ -654,7 +654,7 @@ class GeminiImage(IO.ComfyNode):
|
|||||||
],
|
],
|
||||||
generationConfig=GeminiImageGenerationConfig(
|
generationConfig=GeminiImageGenerationConfig(
|
||||||
responseModalities=(["IMAGE"] if response_modalities == "IMAGE" else ["TEXT", "IMAGE"]),
|
responseModalities=(["IMAGE"] if response_modalities == "IMAGE" else ["TEXT", "IMAGE"]),
|
||||||
imageConfig=None if aspect_ratio == "auto" else image_config,
|
imageConfig=image_config,
|
||||||
),
|
),
|
||||||
systemInstruction=gemini_system_prompt,
|
systemInstruction=gemini_system_prompt,
|
||||||
),
|
),
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user