{"record":{"id":"57764433497bfe26","repo":"sipeed/picoclaw","slug":"the-active-model-does-not-support-image-input-con","errorCode":null,"errorMessage":"the active model does not support image input; configure agents.defaults.image_model with a multimodal model","messagePattern":"the active model does not support image input; configure agents\\.defaults\\.image_model with a multimodal model","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/agent/llm_media.go","lineNumber":93,"sourceCode":"\tmodelName = strings.TrimSpace(modelName)\n\tif imageModelConfigured {\n\t\tif modelName != \"\" {\n\t\t\treturn fmt.Errorf(\n\t\t\t\t\"selected vision model %q does not support image input; update agents.defaults.image_model to a multimodal model\",\n\t\t\t\tmodelName,\n\t\t\t)\n\t\t}\n\t\treturn fmt.Errorf(\n\t\t\t\"selected vision model does not support image input; update agents.defaults.image_model to a multimodal model\",\n\t\t)\n\t}\n\tif modelName != \"\" {\n\t\treturn fmt.Errorf(\n\t\t\t\"active model %q does not support image input; configure agents.defaults.image_model with a multimodal model\",\n\t\t\tmodelName,\n\t\t)\n\t}\n\treturn fmt.Errorf(\n\t\t\"the active model does not support image input; configure agents.defaults.image_model with a multimodal model\",\n\t)\n}\n\nfunc sameCandidateSet(a, b []providers.FallbackCandidate) bool {\n\tif len(a) != len(b) {\n\t\treturn false\n\t}\n\tfor i := range a {\n\t\tif a[i].StableKey() != b[i].StableKey() {\n\t\t\treturn false\n\t\t}\n\t}\n\treturn true\n}\n\nfunc messagesContainCurrentTurnMediaTurn(messages []providers.Message) bool {\n\tfor _, msg := range messages {","sourceCodeStart":75,"sourceCodeEnd":111,"githubUrl":"https://github.com/sipeed/picoclaw/blob/49183d7e8daed0dba89ddbb6fcb60089401d9680/pkg/agent/llm_media.go#L75-L111","documentation":"The anonymous variant of error 275: an image-bearing request hit a vision-unsupported provider error, no image_model is configured, and the active model's name could not be resolved. The advice is the same — set agents.defaults.image_model to a multimodal model — but no model can be named in the message.","triggerScenarios":"No image_model configured, the active model name resolves to empty at the failure site (unnamed/default provider resolution), and the message set contains media that the provider rejected with a recognized vision-unsupported error string.","commonSituations":"Default provider setup where the model id never got set explicitly; config layers (defaults + overrides) cancelling out to an empty model; early startup before model resolution completes when media is already queued.","solutions":["Set an explicit main model and an explicit multimodal agents.defaults.image_model in config","Log/inspect the effective model configuration to find why the active model name is empty","Avoid enqueueing images before the model configuration is fully resolved"],"exampleFix":"# before\nagents:\n  defaults: {}\n\n# after\nagents:\n  defaults:\n    model: gpt-4o-mini\n    image_model: gpt-4o","handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":"resp, err := stream(ctx, req)\nif err != nil {\n    if isVisionUnsupported(err) && messagesContainMedia(req.Messages) {\n        req.Messages = stripMessageMedia(req.Messages)\n        resp, err = stream(ctx, req)\n    }\n    if err != nil { return resp, err }\n}","preventionTips":["Pin both model and image_model explicitly in config instead of relying on defaults","Log the resolved model at request time so unnamed-model failures are traceable","Validate that model resolution yields a non-empty id before the first LLM call"],"tags":["vision","multimodal","config","providers","llm"],"backgroundTag":null,"analyzedSha":"49183d7e8daed0dba89ddbb6fcb60089401d9680","analyzedAt":"2026-08-15T21:55:41.315Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}