Agent Zero 使用 Ollama:Docker安装和 limites
是的,Agent Zero(agent0ai 项目)运行在 Docker 容器中,可通过 http://host.docker.internal:11434 调用本地 Ollama。这是项目预设的默认地址,用于从容器访问宿主机。智能体的计算机(即包含 Linux 桌面和浏览器的容器)与推理机器仍是两个独立的部分:仅仅将所有组件都部署在本地,并不能保证内置浏览器或扩展程序始终离线运行。
Agent Zero 是由 agent0ai 发布的开源智能体框架,为智能体提供 Docker 容器中的真正 Linux 桌面、可操控的浏览器以及文档协作工具。本指南介绍其安装方法、如何连接本地 Ollama、如何根据角色(对话模型或辅助模型)选择模型,以及小型本地模型面对这类任务时的实际局限。
#Agent Zero 是什么
Agent Zero(仓库 agent0ai/agent-zero)将自身定位为一个为智能体提供完整 Linux 计算机环境的框架:Docker 容器中的 XFCE 桌面、带 DOM 标注的浏览器、在 Markdown 文件、电子表格和演示文稿上进行实时协作,以及汇集了 100 多个社区插件的插件中心。截至 2026 年 9 月 28 日,该项目在 GitHub 上已获得超过 19,000 个星标,最新带版本标签的版本为 v2.13,发布于 2026 年 9 月 23 日。
它并不是 OpenCode 或 Cline 那样的专用编程智能体:Agent Zero 面向跨领域任务(研究、操控桌面应用、审查网页界面、分析),代价是需要比终端中的单个二进制程序更复杂的基础设施。
该项目还着重介绍了“智能体配置”(即时创建的专业智能体,例如用于审慎的财务分析,并交付电子表格)、按上下文隔离文件、机密信息、记忆和代码仓库的项目管理,以及多智能体协作:主智能体将研究、编程、分析或审查任务委派给专门的子智能体。每项功能都会占用上下文,并对模型的指令遵循能力提出要求,因此,一旦不再局限于简单聊天,这些功能就会直接影响模型的选择。
#安装 Docker 容器
在你的机器上执行操作的智能体:具备智能体能力的 Cline、MCP、n8n + Ollama、本地自动化。
- 在线空间,终身可用
- PDF + 文件
- 30 天内退款
在已安装 Docker 的前提下,最直接的方式是执行一条命令,将实例数据挂载到持久化卷中。该项目还提供了适用于服务器和无头模式的脚本安装程序(A0 Install),以及一个图形化启动器(A0 Launcher),代替用户管理 Docker、实例和端口。
容器启动后,可通过所选端口(默认为 80,或通过参数指定的端口)访问 Web 界面,在执行第一个任务前配置模型提供方。在没有图形界面的服务器上,脚本安装程序支持静默模式,可创建指定实例并设置指定端口,无需打开菜单,适用于自动化部署或只能通过 SSH 访问的远程机器。
#连接本地 Ollama 服务
官方安装文档详细说明了操作步骤:在对话模型、辅助模型或嵌入模型的设置中,选择 Ollama 作为提供商,输入 Ollama 要求的模型名称(例如 llama3.2 或 qwen2.5:7b),然后在 API 的 URL 与默认值不同时填写该 URL。
如果容器无法连接 Ollama,文档提醒您:必须确保容器能够访问端口 11434。提供的 Docker Compose 文件会在 Linux Docker 环境下将 host.docker.internal 映射到宿主机网关;如果两个服务使用同一个 Docker 网络,也可以使用 http://(nom du conteneur):11434 作为地址。
#选择哪个模型来承担哪种角色
Agent Zero 区分三种模型配置位置:聊天模型(主对话)、辅助模型(记忆整理、摘要)和嵌入模型(记忆检索)。模型名称的格式取决于提供商:使用 Ollama 时,只填写模型名称(gpt-oss:20b),不带提供商前缀,这一点与 OpenRouter 不同。
| 角色 | 文档中规定的要求 |
|---|---|
| 聊天(对话) | 需遵循智能体的通信格式(JSON,包含 tool_name/tool_args) |
| 辅助功能(记忆、摘要) | 很小的模型(4B)经常无法完成任务;70B 模型或优质的云端“flash/mini”模型表现更好 |
| Embedding | 对模型大小的敏感度较低,仅用于为记忆建立索引,以进行相似性检索 |
最常被忽视的一点是:一个对话表现尚可的模型,如果规模太小,也可能无法胜任辅助任务,从而在不易察觉的情况下降低记忆质量,让用户不明白为什么智能体会“忘记”,或在不同会话之间混淆事实。
#使用小型本地模型调用工具
Agent Zero 自身记录了轻量本地模型中一个普遍存在的问题:模型会解释命令,而不是调用能够执行该命令的工具。该项目提出了一种仅通过提示词进行修正的方案,无需修改代码:使用「Tiny Local」配置,该配置保留标准工具调用格式,但移除通信提示词中可见的推理字段,只要求输出包含 tool_name 和 tool_args 的可执行 JSON 对象。
另一种无需更换配置档的方案是添加一个专用提示词文件(扩展名为 .promptinclude.md),再次强调预期的输出规范:可见回复必须恰好是一个 JSON 对象,且仅包含 tool_name 和 tool_args 两个字段,不使用 Markdown 标记,前后也不添加任何文字。文档明确说明了这一补救措施的局限:这只是对提示词和配置档的调整,并未修改执行代码——如果某个特定模型在遵循这些规范后仍然失败,下一步应尝试更换模型,而不是进一步增加提示词的复杂度。
#Linux桌面环境真正带来了什么改变
与仅通过终端操作的智能体相比,Agent Zero 的特点是容器内带有完整的 XFCE 桌面:智能体可以打开真正的图形界面软件(用 Blender 为物体建模、打开文件管理器或可见的终端),用户与智能体共享同一套虚拟鼠标和键盘,可以观察每一步操作,并随时介入。
内置浏览器不止能简单地操控页面:Annotate 模式可将任意网页变成一个通过点击来下达指令的界面——修改某个元素、检查它、将其复用于另一个项目,或针对具体位置留下评论,随后由 AI 智能体将其作为任务处理。
#连接 MCP 服务器
除了内置工具(浏览器、终端、文件),Agent Zero 还可以连接外部 MCP 服务器,访问其他服务:官方文档将每个 MCP 连接比作一座桥梁——一个可以连接 Gmail,另一个可以连接数据库,还有一个可以连接自动化工具。MCP 服务器可以配置为本地启动的命令,也可以配置为远程 URL,两者需要考虑的网络问题不同:在容器内启动的本地命令受到与访问 Ollama 相同的网络限制(host.docker.internal、共享 Docker 网络),而远程 URL 则遵循容器的常规网络规则。
文档建议将每个连接限制在严格必要的范围内,而不是为了以防万一而增加连接:每接入一个 MCP 服务器,都会扩大模型能够访问的范围。即使使用本地模型也是如此,而本地模型调用工具时的行为比高端云端模型更难预测。
#连接模型与工具前的安全检查清单
在让 Agent Zero 不受持续监督地运行之前,有三个方面值得明确检查:容器隔离、机密信息和 API 密钥,以及已连接的 MCP 服务器。
| 攻击面 | 需检查的要点 |
|---|---|
| 沙箱/容器 | 建议保持在 Docker 环境中运行,而非直接在主机上执行;在未充分理解风险的情况下,不要将整个个人目录挂载到容器卷中 |
| 机密信息与API密钥 | 使用全局或项目级机密配置,而不要将密钥以明文粘贴到提示词、截图或缺陷报告中 |
| 机密信息的作用范围 | 全局机密信息适用于所有对话和项目,除非被覆盖;项目可以定义自己独立隔离的机密信息,并优先使用这些信息,而非全局机密信息 |
| 已连接的 MCP 服务器 | 仅添加真正有用的连接;每增加一个 MCP 桥接连接,都会扩大模型能够访问的范围,这与选择本地还是云端 Ollama 没有直接关系 |
#与其他本地智能体相比
| Framework | 其独特之处 |
|---|---|
| Agent Zero | Docker 容器内的完整 Linux 桌面(XFCE)和可操控浏览器;可处理编程之外的跨领域任务 |
| Hermes Agent | 面向终端和消息平台(Telegram、Discord 等)的智能体,以持久记忆为核心,不带图形桌面。 |
| OpenCode / Cline | 在终端或编辑器中运行的编程智能体,不配备专用容器或可操控的浏览器 |
#开始前需了解的限制
- 误导性的搜索量
- 在搜索引擎中,“Agent Zero”也对应一些娱乐内容;针对这个开发框架的实际需求范围,比该关键词的总搜索量所暗示的更窄。
- 磁盘和内存占用
- 容器除了包含智能体的运行时,还集成了完整的桌面环境:即使推理本身通过 Ollama 在其他地方运行,也要预留比精简 CLI 智能体更多的资源。
- 辅助模型规模过小
- 辅助模型过小会降低记忆质量,却不会出现明确的错误提示;如果智能体似乎在不同会话之间“接不上思路”,应首先检查这一点。
- 容器内部网络
- host.docker.internal 适用于 Docker Desktop 和提供的 Linux 配置,但自定义部署(自定义 Docker 网络、远程部署)需要手动重新输入 API URL。
- 使用 Docker Compose 在生产环境中部署 LLM
- 使用 Docker 安装 Ollama
- AI 智能体:定义与一般局限
- 来源:Agent Zero 官方 GitHub 仓库
- 来源:官方安装指南
- 来源:官方关于本地调用工具的指南
从 Docker 中的 Agent Zero 访问 Ollama 时,应使用哪个地址?+
Agent Zero 是否可以在没有专用 GPU 的情况下运行?+
为什么我的本地模型在 Agent Zero 中从未调用工具?+
Agent Zero 的 Linux 桌面环境能让智能体比仅使用终端的智能体更安全吗?+
Agent Zero 和 Hermes Agent 做的事情一样吗?+
如何在 Agent Zero 中保护机密信息和 API 密钥?+
是否需要将所有可用的MCP服务器添加到Agent Zero?+
有反馈、发现了错误,或想补充说明?请告诉我们,让这份指南对每个人都更有帮助。