快速结论:当你在 Ollama 中用 Gemma 4 视觉模型读取高分辨率截图(如 1920×1080)时,模型可能错误地声称“There is no discernible text in this image”,原因是 Ollama 在送图前把图像静默降采样,导致文字细节丢失。优先确认当前 Ollama 版本,并升级到已修复该行为的版本。
适用环境:已确认出现于 Windows 11 Pro(Build 26200);NVIDIA GeForce RTX 3080 Ti Laptop GPU(16GB VRAM);Intel 12th Gen Core i7-12800HX;Ollama 0.31.2;模型为 gemma4(Gemma 4 视觉模型)。也可通过 CLI 与 REST API 复现。
最快修复方案:升级 Ollama 至 0.34.1 或更高版本。该版本已修复此问题:对 GGUF 模型的 token 预算现在会根据图像分辨率和宽高比动态选择,不再硬编码为 max_soft_tokens=280。
注意事项:Issue 中提到,提高 token 预算(如 maxTokens=1120)可能在某些配置下导致 OOM(见 #15626);修复版本采用动态选择,但高分辨率图像在显存较小的机器上仍可能带来额外显存压力。若升级后仍无法识别文字,需要进一步确认图像预处理和显存占用情况。Issue 中未提供 0.34.1 在 Windows + RTX 3080 Ti 上的专门验证数据。
问题场景
用户在 Ollama 中拉取并运行 Gemma 4 视觉模型(gemma4),让模型读取一张 1920×1080 的高分辨率截图中的文字。图片中的文字清晰可读,但模型返回“There is no discernible text in this image”或类似内容,甚至产生幻觉。CLI 和 REST API 都能复现。同一模型、同一图片在 llama.cpp(–image-max-tokens 1120)和 HuggingFace Transformers(max_soft_tokens=1120)中可以正确识别文字。
报错原文
time=2026-07-12T20:19:46.418-07:00 level=INFO source=sched.go:1158 msg="disabling mmap for llama-server load by default"
load_tensors: offloaded 41/41 layers to GPU
llama_context: n_ctx = 4096
llama_context: n_ctx_seq (4096) < n_ctx_train (262144) -- the full capacity of the model will not be utilized
# Model response for a 1920x1080 screenshot with clear, readable text:
"There is no discernible text in the image. The image appears to be an abstract or textured background pattern, but it does not contain any readable letters, words, or numbers."
# Same image with llama.cpp --image-max-tokens 1120:
[correctly outputs all visible text]
原因分析
最可能的原因:Ollama 在 model/models/gemma4/process_image.go 中将 max_soft_tokens 硬编码为 280,导致图像在池化后被限制到约 645K 像素。1920×1080 截图会被静默降采样到约 1056×576(约为原始面积的 31%),4K 图像会被降到约 8%。同时降采样使用 Bilinear 插值(draw.BiLinear.Scale),相比参考实现使用的 Bicubic,会进一步柔化文字边缘。模型本身支持 70/140/280/560/1120 等可配置 token 预算,并能处理高分辨率输入;在 llama.cpp 和 HuggingFace Transformers 中设置更高 token 预算即可正确识别。Issue 指出这是 Ollama 的图像预处理行为,而非模型能力问题。
环境排查
- 确认 Ollama 版本:0.31.2 存在该问题,0.34.1 已修复。
- 确认操作系统:Windows 11 Pro(Build 26200)。
- 确认 GPU:NVIDIA GeForce RTX 3080 Ti Laptop GPU(16GB VRAM)。
- 确认 CPU:Intel 12th Gen Core i7-12800HX。
- 确认模型:gemma4(Gemma 4 视觉模型)。
- 确认调用方式:CLI 与 REST API 均可复现。
- 如果使用其他硬件或 Linux/macOS,Issue 未提供对应验证数据,需要自行确认是否同样触发降采样逻辑。
解决步骤
- 先确认当前 Ollama 版本是否为 0.31.2 或同样存在硬编码 max_soft_tokens=280 的版本。
- 将 Ollama 升级到 0.34.1 或更高版本。Issue 评论中明确说明该版本已修复:GGUF 模型的 token 预算现在根据分辨率和宽高比动态选择。
- 升级后重新执行相同复现命令:
ollama run gemma4 "Read all text in this image verbatim" C:\test\screenshot.png。 - 如果仍无法识别,可临时使用 Issue 中已验证可正常工作的替代路径:llama.cpp 设置
--image-max-tokens 1120,或 HuggingFace Transformers 设置max_soft_tokens=1120。 - 注意,强制提高 token 预算可能在某些配置下引发 OOM;若出现显存不足,需要结合自身 VRAM 大小调整,而不要依赖静默降低图像质量。
验证方法
升级到 Ollama 0.34.1 后,用同一张 1920×1080 截图重新运行相同命令,观察模型是否能够逐字读出图中可见文字,而不是回答“没有可识别文字”或产生幻觉。也可以对比同一图片在修复版本下的输出是否与 llama.cpp --image-max-tokens 1120 的结果一致。Issue 中未提供 0.34.1 的具体验证日志,因此建议以实际 OCR 结果为准。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。

![[Bug]: Knowledge base creators cannot access datasets created via upload or RAG Pipeline](https://www.chat-gpts.plus/wp-content/uploads/2026/09/42836-411fb8f3-768x403.jpg)
![[Bug]: Multi card issue and multi token prediction (mtp) issue with Intel/Qwen3.6-35B-A3B-int4-mixed-AutoRound](https://www.chat-gpts.plus/wp-content/uploads/2026/09/53119-9a400882-768x403.jpg)