[bug]: Gemini model provider definitions not matching documentation

用户在 InvokeAI 6.12.0.post1 中配置了 Gemini 外部模型(使用 Google AI API Key),然后在画布模式下尝试执行 img2img 或 inpainting 操作时,系统报错“feature not supported”。同时,尝试在 WebUI 中更新该模型

[bug]: Gemini model provider definitions not matching documentation

[bug]: Gemini model provider definitions not matching documentation

快速结论:此问题发生在 InvokeAI 官方文档声称 Gemini 模型支持 img2img 和 inpainting,但实际代码中 Gemini provider 仅允许 txt2img 模式。优先检查 invokeai/app/invocations/params.py 或 Gemini 模型定义中的 modesmask_format 字段是否匹配文档说明。

问题场景

用户在 InvokeAI 6.12.0.post1 中配置了 Gemini 外部模型(使用 Google AI API Key),然后在画布模式下尝试执行 img2img 或 inpainting 操作时,系统报错“feature not supported”。同时,尝试在 WebUI 中更新该模型的默认设置时也出现验证错误。

报错原文

{"detail":[{"type":"extra_forbidden","loc":["body","default_settings","MainModelDefaultSettings","num_images"],"msg":"Extra inputs are not permitted","input":1}, ... 大量类似字段验证错误]}

此外,用户还指出 Gemini provider 的 modes 硬编码为 ["txt2img"],且 mask_format 设置为 "none",导致 img2img 和 inpainting 无法启用。

原因分析

可能原因:Gemini provider 定义(可能在 invokeai/backend/model_management/models/starter_models.py 或类似配置文件中)将支持的生成模式仅限制为 txt2img,而项目文档却列出了 img2img、text2img 和 inpainting,两者不一致。关于 WebUI 更新模型设置时的验证错误,很可能是模型定义中的 default_settings 字段结构与后端期望的 Pydantic 模式不严格匹配,尤其当 ControlAdapterDefaultSettings 缺少 preprocessor 等必填字段时被拒绝。

环境排查

  • 确认 InvokeAI 版本是否为 6.12.0.post1
  • 核对 Gemini 模型的类型:外部 API 模型,非 Stable Diffusion/FLUX 本地模型
  • 检查 invokeai/app/invocations/params.pyGeminiModelProvider 或对应类定义
  • 查看 invokeai/backend/model_management/models/starter_models.py 中 Gemini 模型条目的 modesmask_format

解决步骤

  1. 编辑 Gemini provider 定义文件:定位到 Gemini 模型对应的 Python 定义(如 starter_models.pyparams.py),搜索 "modes" 字段。
  2. 添加允许的模式:modes["txt2img"] 修改为 ["txt2img", "img2img", "inpainting"](或根据实际支持情况保留需要的)。
  3. 检查 mask_format若需要 inpainting,将 "mask_format": "none" 改为合适的格式(如 "alpha" 或移除该限制)。
  4. 更新默认设置(可选):如果在 WebUI 修改设置时仍遇到验证错误,检查 default_settings 中的 ControlAdapterDefaultSettings 是否缺少 preprocessor 字段,可尝试为其添加默认值 null 或删除该段。
  5. 重启 InvokeAI 服务:保存文件后重新加载模型以应用更改。

注意:以上步骤来自 Issue 讨论中的推测,如果编辑文件后仍无法工作,建议等待官方正式更新。

验证方法

重启 InvokeAI 后,在画布模式下加载 Gemini 模型,分别尝试 img2img 和 inpainting 功能;同时在 WebUI 中进入该模型设置页面,尝试修改并保存参数,确保不再弹出验证错误。

参考来源

invoke-ai/InvokeAI #9216

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

celebrityanime
celebrityanime
文章: 7737

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注