Ollama models generate execute tool calls but Open Interpreter CLI does not execute them (0.4.3)

该报错通常发生在 Open Interpreter 0.4.3 连接本地 Ollama 模型时,模型能够生成 execute 工具调用,但 CLI 不会实际执行这些调用。优先排查是否使用了已停止维护的 Python 版本,并确认项目仓库迁移情况。

快速结论:该报错通常发生在 Open Interpreter 0.4.3 连接本地 Ollama 模型时,模型能够生成 execute 工具调用,但 CLI 不会实际执行这些调用。优先排查是否使用了已停止维护的 Python 版本,并确认项目仓库迁移情况。

适用环境:Open Interpreter 0.4.3(Python 产品)、Ollama 0.32.6、Linux(Fedora 44,内核 7.1.3-ogc5.1.fc44.x86_64)、Bash 终端、模型包括 qwen2.5-coder:7b、llama3.1:latest、llama3.2:3b。

最快修复方案:暂无确认的一步修复方案。官方将该 Issue 标记为针对已停止维护的 Python 产品,并建议转向 endolith/open-interpreter 仓库重新报告,因此可优先尝试迁移到维护中的版本或 fork 版本。

注意事项:该 Issue 未提供已验证的代码修复或配置调整方案;关闭原因是产品已退役而非 bug 被修复。在官方 Python 版本中可能无法解决此问题。

问题场景

用户在 Linux 系统上使用 Open Interpreter 0.4.3 CLI,通过 interpreter -y --model ollama/qwen2.5-coder:7b 连接本地 Ollama 服务,并尝试执行 print("hello") 等简单命令。模型正常加载且返回了格式正确的 execute 工具调用(JSON 片段),但 Open Interpreter 没有执行这些调用,也没有在终端输出结果。

报错原文

Ollama models generate execute tool calls but Open Interpreter CLI does not execute them (0.4.3)

The model returns:
{
  "name": "execute",
  "arguments": {
    "language": "shell",
    "code": "echo 'hello'"
  }
}

However, the command is not executed and the output is never returned.

The same happens with Python execution:
{
  "name": "execute",
  "arguments": {
    "language": "python",
    "code": "print(2 + 2)"
  }
}

原因分析

根据维护者在 Issue 关闭时的回复,这不是一个会被修复的 bug,而是因为该 Issue 涉及的是“已停止维护的 Python 产品”(the retired Python product)。可能原因包括:

1. Open Interpreter 0.4.3 作为 Python 版本的终期版本,其 Ollama 工具调用执行链路存在已知缺陷,但官方已不再修复。

2. 本地 Ollama 返回的工具调用格式(JSON 结构)与 0.4.3 内部解析逻辑不兼容,导致工具调用被生成但未被调度执行。

3. 0.4.3 版本对本地模型(无 API key)的工具调用执行路径可能存在未完善之处。

需要说明的是,Issue 中未提供日志或 doctor 报告(显示 not available),因此上述均为可能原因而非已证实的根因。

环境排查

  • 确认 Open Interpreter 的安装版本是否为 0.4.3(Python 产品线)
  • 确认 Ollama 版本是否为 0.32.6,并验证 ollama list 能正常显示本地模型
  • 确认终端中 ollama serve 是否正常运行,且 Open Interpreter 能成功加载模型(用户确认模型加载成功)
  • 检查 Linux 系统中 Python 版本及 Open Interpreter 依赖环境是否完整
  • 确认是否使用了 codex harness(Issue 中选中的 harness 为 codex)

解决步骤

  1. 访问 endolith/open-interpreter 仓库(GitHub),确认当前维护中的项目分支或替代版本。
  2. 可优先尝试在 endolith/open-interpreter 仓库中搜索类似“Ollama tool call not executed”的已解决 Issue,查看是否有对应修复。
  3. 如需要继续使用 0.4.3,尝试更换 harness(例如从 codex 切换为默认 harness),观察工具调用是否被执行——此为推测性尝试,原 Issue 未验证。
  4. 尝试不同 Ollama 模型(用户已测试 3 个模型均失败),可排除模型本身问题,不需要重复此测试。
  5. 如果项目允许,考虑升级到非 Python 产品线的 Open Interpreter 版本(如果有),或使用维护中的 fork 版本重新安装。

验证方法

重新运行 interpreter -y --model ollama/qwen2.5-coder:7b,输入 print("hello"),观察终端是否出现 hello 输出。如果工具调用被执行且结果回显,则说明问题已解决;如果仍然只返回 JSON 而不执行,说明该版本缺陷未修复,需要切换版本或仓库。

参考来源

OpenInterpreter/open-interpreter #1865

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 19015

发表回复

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