v0.3x.x Non-thinking / instruct model variants starts to think (Reopen)

用户在 Ollama 中使用 instruct 类型模型(例如 Qwen3.5 的 instruct 变体)进行推理时,模型本该直接生成回答,却输出了内部思考过程。该问题在 PR #16878 合并后重新出现,用户反馈在 v0.30.11 和 v0.31.1 中均能稳定复现。

v0.3x.x Non-thinking / instruct model variants starts to think (Reopen)

v0.3x.x Non-thinking / instruct model variants starts to think (Reopen)

快速结论:该问题属于 Ollama v0.30.11 及以上版本(包括 v0.31.1)的回归 bug,表现为 instruct 变体模型不再使用 Go 模板,导致应该直接回答问题的模型开始输出“思考”过程。优先排查是否通过 OLLAMA_GO_TEMPLATE 环境变量强制启用 Go 模板,或拉取已修复 Jinja 模板的模型版本。

问题场景

用户在 Ollama 中使用 instruct 类型模型(例如 Qwen3.5 的 instruct 变体)进行推理时,模型本该直接生成回答,却输出了内部思考过程。该问题在 PR #16878 合并后重新出现,用户反馈在 v0.30.11 和 v0.31.1 中均能稳定复现。

报错原文

#16878 fixed `/api/generate` to work like `/api/chat`, ie now neither endpoint uses the Go template for this model, so it always thinks.

注意:该问题并非传统错误日志,而是模型行为异常——instruct 模型输出思考内容。

原因分析

PR #16878 修复了 /api/generate 端点使其行为与 /api/chat 一致,但代价是这两个端点均不再使用模型的 Go 模板。对于依赖 Go 模板来控制 instruct 模型输出行为的用户而言,模型因此失去了抑制思考过程的模板逻辑,导致始终输出思考内容。

环境排查

  • Ollama 版本:确认版本为 v0.30.11 或 v0.31.x(包括 v0.31.1)。
  • 模型类型:是否为 instruct 变体(如 Qwen3.5-instruct 系列)。
  • 端点:是否使用 /api/generate/api/chat 接口。
  • 环境变量:检查是否设置了 OLLAMA_GO_TEMPLATE
  • 操作系统:Issue 中已验证 Linux + Nvidia GPU 环境。

解决步骤

  1. 设置环境变量(可优先尝试): 在启动 Ollama 服务前设置 OLLAMA_GO_TEMPLATE=1,强制启用 Go 模板(参考 Issue #16792 的评论建议)。
  2. 拉取修复版模型: 如果步骤 1 不适用或影响其他模型,可以拉取社区已修复 Jinja 模板的模型版本。例如:
    ollama pull frob/qwen3.5-instruct:4b

    该模型已更新 Jinja 模板,拉取后重新运行即恢复正常行为。

  3. 等待官方修复: 上述两个方案为临时绕过方案,根本解决依赖官方在后续版本中重新设计模板处理逻辑。Issue #17083 已重新打开并标记为 bug。

验证方法

运行被影响的 instruct 模型,发送简单对话请求(如 hi)。正常行为应直接返回回答,不应输出明显的中间思考过程。例如:

$ ollama run frob/qwen3.5-instruct:4b
>>> hi
Hello! How can I help you today?

参考来源

ollama/ollama #17083

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

celebrityanime
celebrityanime
文章: 13267

发表回复

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