Ollama MLX vision models (tested with Gemma 4 12B and Qwen3.5 4B) do not appear to receive image input

该报错发生在 macOS 上使用 Ollama 运行带 MLX 后缀的视觉模型(如 gemma4:12b-mlx、qwen3.5:4b-mlx)时,模型虽能接受图片请求,但实际并未收到图像张量,导致仅基于对话文本生成幻觉回答。优先排查你使用的模型标签是否为 MLX 版本,并对比同名 GGUF 版本确

快速结论:该报错发生在 macOS 上使用 Ollama 运行带 MLX 后缀的视觉模型(如 gemma4:12b-mlx、qwen3.5:4b-mlx)时,模型虽能接受图片请求,但实际并未收到图像张量,导致仅基于对话文本生成幻觉回答。优先排查你使用的模型标签是否为 MLX 版本,并对比同名 GGUF 版本确认差异。

适用环境:macOS(含 Apple Silicon M4 Pro / arm64 环境),Ollama 0.31.1 至 0.32.0,测试模型包括 gemma4:12b-mlx(digest 117d0d84cf2a)、qwen3.5:4b-mlx、gemma4:31b-mlx(digest 637cc0ff1570)。

最快修复方案:暂无确认的一步修复方案。截至 Issue 关闭时,底层 MLX runner 尚不能处理 vision tower 张量,需等待 Ollama 后续发布支持 MLX vision 的新版本。可优先尝试将模型重新拉取为 GGUF 格式标签(如 gemma4:12b)以满足当前视觉任务。

注意事项:模型卡片标注的“Text, Image”能力来源于模型元数据(vision_config),不等于当前运行环境真正支持视觉输入。即使 API 返回 HTTP 200 表示接受图片载荷,也不代表图像被真正处理。MLX 架构与 GGUF 架构在处理视觉时结果不一致属于已知现象。

问题场景

在 macOS 上使用 Ollama 0.31.1 运行带 -mlx 后缀的视觉语言模型(测试涉及 gemma4:12b-mlxqwen3.5:4b-mlx),通过命令行或官方 GUI 传入图片进行对话。模型思考过程显示仅有图片占位符(如 [img-0]),并声称“未提供图片”或“无法查看图片”,最终回答完全基于对话文本生成,出现幻觉。与同名 GGUF 版本(能正确描述图像内容)形成对比。

报错原文

Ollama MLX vision models (tested with Gemma 4 12B and Qwen3.5 4B) do not appear to receive image input

The thinking process indicates that only an image placeholder (e.g. `[img-0]`) is available, and the model states that it cannot see the image or that no image was provided.

- "The provided information does not contain an image."
- "I cannot see the image."

[ollama show gemma4:12b-mlx]
Capabilities
  completion
  tools
  thinking

(This model does not support images)

原因分析

可能原因:Ollama 的 MLX runner 尚不支持处理视觉模型的 vision tower 张量。虽然模型文件包含视觉张量(可用 ollama show -v 确认),且模型卡片的输入能力已更新为“Text, Image”(基于模型元数据 vision_config 的自动检测),但实际运行环境无法消费这些视觉张量。

当用户发送图片时,API 层面接受请求(HTTP 200),但图片内容未真正传入模型的视觉编码器,模型只能看到文本提示与一个空的图片占位符,从而产生“看不到图片”的幻觉回答。相关支持代码在 Issue 关闭时仍处于 PR 合并阶段。

环境排查

  • 确认操作系统版本:macOS(Issue 中已验证 14.8.7、15.7.7、26.5.2 均受影响)。
  • 确认 Ollama 版本:Issue 中涉及 0.31.1 与 0.32.0。
  • 确认硬件架构:Apple Silicon(arm64),如 M4 Pro 24GB 内存。
  • 运行 ollama show <模型标签> 检查输出的 Capabilities 列表:若只有 completion / tools / thinking,而无 vision,说明当前模型文件不支持图片输入。
  • 对比运行 ollama show -v <模型标签>,查看是否存在 vision_tower 相关张量(MLX 模型有张量但 runner 无法使用)。
  • 确认是否为 MLX 后缀标签(如 gemma4:12b-mlx),并与无后缀的 GGUF 版本(如 gemma4:12b)进行行为对比。

解决步骤

  1. 检查当前使用的模型标签是否带 -mlx 后缀。若需要纯视觉任务,改用无后缀的 GGUF 格式标签(已验证 gemma4:12b 能正常处理图片并描述图像内容)。
  2. 若必须使用 MLX 模型,先执行 ollama pull gemma4:12b-mlx 确保本地为最新版本(digest 应匹配 117d0d84cf2a),但需注意旧版本即使重拉也无法解决该问题。
  3. 运行 ollama show gemma4:12b-mlx 查看能力列表,若缺少 vision 项,确认该版本不支持图片输入,无需继续排查客户端配置。
  4. 跟进 Ollama 发布状态:MLX qwen 与 gemma4 的视觉支持 PR 已合并(相关 PR 编号可见于 Issue 讨论),需等待包含该功能的后续 Ollama 版本发布后再升级重试。
  5. 升级 Ollama 至包含 MLX vision 支持的新版本后,重新拉取模型并测试。若仍异常,需同时检查 MLX 模型是否也同步更新到支持视觉张量的版本(两个更新需配套完成)。

验证方法

使用同一张包含明确物体的图片(例如 macOS 蓝色文件夹图标或樱花树照片)和相同的提示词,分别请求 MLX 与 GGUF 版本(如 gemma4:12b-mlxgemma4:12b),对比模型回答是否能正确描述图片内容而非幻觉。同时查看模型思考过程是否存在“分析图片内容”的描述(GGUF 正常时以“识别樱花树、蓝天、草地”等开始)。若 MLX 回答与纯文本输入一致,则问题仍未解决。

参考来源

ollama/ollama #17065

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 21563

发表回复

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