{"record":{"id":"0bbee26da0020ecd","repo":"FlowiseAI/Flowise","slug":"this-model-does-not-support-images","errorCode":null,"errorMessage":"This model does not support images","messagePattern":"This model does not support images","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/components/nodes/chatmodels/ChatGoogleGenerativeAI/FlowiseChatGoogleGenerativeAI.ts","lineNumber":133,"sourceCode":"\nfunction _getStandardContentBlockConverter(isMultimodalModel: boolean) {\n    const standardContentBlockConverter: StandardContentBlockConverter<{\n        text: TextPart\n        image: FileDataPart | InlineDataPart\n        audio: FileDataPart | InlineDataPart\n        file: FileDataPart | InlineDataPart | TextPart\n    }> = {\n        providerName: 'Google Gemini',\n\n        fromStandardTextBlock(block) {\n            return {\n                text: block.text\n            }\n        },\n\n        fromStandardImageBlock(block): FileDataPart | InlineDataPart {\n            if (!isMultimodalModel) {\n                throw new Error('This model does not support images')\n            }\n            if (block.source_type === 'url') {\n                const data = parseBase64DataUrl({ dataUrl: block.url })\n                if (data) {\n                    return {\n                        inlineData: {\n                            mimeType: data.mime_type,\n                            data: data.data\n                        }\n                    }\n                } else {\n                    return {\n                        fileData: {\n                            mimeType: block.mime_type ?? '',\n                            fileUri: block.url\n                        }\n                    }\n                }","sourceCodeStart":115,"sourceCodeEnd":151,"githubUrl":"https://github.com/FlowiseAI/Flowise/blob/abe4a8601a058047b350c260676826e21dd14101/packages/components/nodes/chatmodels/ChatGoogleGenerativeAI/FlowiseChatGoogleGenerativeAI.ts#L115-L151","documentation":"Thrown inside _getStandardContentBlockConverter().fromStandardImageBlock (line 133) when an image block is supplied to a non-multimodal Gemini model. isMultimodalModel is a boolean captured when the converter is built from the chat model's _isMultimodalModel flag; text-only Gemini variants (e.g., gemini-1.0 text models) set it false.","triggerScenarios":"A standard image content block (source_type url/base64) is converted to a provider block while isMultimodalModel is false.","commonSituations":"User selected a text-only Gemini model in the node but the chatflow passes image content, or a model was downgraded from a vision-capable variant.","solutions":["Switch the ChatGoogleGenerativeAI node to a multimodal model (e.g., gemini-1.5-pro, gemini-2.0-flash).","Remove image content from the messages feeding this node, or route images through a separate vision node.","Confirm the model identifier string actually resolves to a multimodal variant."],"exampleFix":"// before: model = 'gemini-1.0'  + image block -> throws\n// after:  model = 'gemini-2.0-flash' + image block -> supported","handlingStrategy":"validation","validationCode":"// Multimodal-capable Gemini model prefixes (extend as new models ship).\nconst MULTIMODAL_PREFIXES = ['gemini-1.5', 'gemini-2', 'gemini-3']\nfunction isMultimodalGemini(model: string): boolean {\n  return MULTIMODAL_PREFIXES.some((p) => model.startsWith(p))\n}\nif (hasImageBlock(messages) && !isMultimodalGemini(model)) {\n  throw new Error(`Model ${model} cannot accept images; use a multimodal variant`)\n}","typeGuard":"function hasImageBlock(messages: BaseMessage[]): boolean {\n  return messages.some((m) => Array.isArray(m.content) && m.content.some((c) => (c as any).type === 'image_url' || (c as any).type === 'image'))\n}","tryCatchPattern":"try {\n  await chatModel.invoke(messages)\n} catch (e) {\n  if (e instanceof Error && e.message === 'This model does not support images') {\n    // switch to a multimodal model or strip image parts\n  }\n  throw e\n}","preventionTips":["Default vision chatflows to a multimodal Gemini variant.","Gate image content behind a model-capability check before the call.","Keep a maintained list of multimodal model prefixes as new Gemini versions release."],"tags":["gemini","multimodal","model-selection","images"],"backgroundTag":null,"analyzedSha":"abe4a8601a058047b350c260676826e21dd14101","analyzedAt":"2026-08-12T16:04:40.823Z","schemaVersion":2},"datasetVersion":"2026-08-12T18:17:37.767Z"}