0% read

3 步搭建本地 AI Agent:Gemma 4 + OpenClaw(零 API 费用)

2026/04/10

用云端 API 跑 AI Agent 要花钱、会泄露数据、断网就废。用 Gemma 4 + Ollama + OpenClaw,你可以搭一个完全在本地跑的 AI Agent——能调工具、能搜网页、能当 Telegram 机器人,全在自己机器上,免费。

这是我们在 X 上看到最多人问的教程。完整搭建流程如下。

为什么要跑本地 Agent

三个理由:

  • 零费用。 没有按 token 计费。想跑多少跑多少,7x24 小时开着也不用看账单。
  • 隐私。 你的提示词、文档、工具返回结果全都不出机器。不用担心服务条款里的数据使用条款。
  • 离线可用。 飞机上、山里、公司防火墙后面都能用。模型跑在本地,搜索用 SearXNG 也不需要调 Google。

以前本地模型的问题是质量不行,干不了真正的 Agent 工作。Gemma 4 改变了这个局面。26B 模型能稳定跑完 5 步工具调用链,对一个能塞进单张显卡的模型来说,这相当厉害。

3 步搭建

第 1 步:用 Ollama 拉取 Gemma 4

还没装 Ollama 的话,去 ollama.com 下载。然后拉推荐的模型:

ollama pull gemma4:26b-a4b

为什么选 26B-A4B?因为它是 MoE(混合专家)架构——任何时候只有 40 亿参数在活跃,但总共有 260 亿参数可用。这意味着同等活跃参数下,它的质量是 Gemma 4 系列里最好的。在 MacBook M1 上大概占 13GB 内存,跑 20-40 tok/s。

想了解完整的模型阵容和怎么根据硬件选型,看Gemma 4 模型选择指南

Ollama 的详细配置(自定义参数、GPU 设置、上下文窗口),看用 Ollama 跑 Gemma 4

第 2 步:安装 OpenClaw

OpenClaw 是一个专为本地大模型设计的开源 Agent 框架。它帮你搞定麻烦的部分:工具注册、多轮对话管理、Telegram 和 SearXNG 集成。

git clone https://github.com/AstraBert/OpenClaw.git
cd OpenClaw
pip install -r requirements.txt
cp .env.example .env

编辑 .env 文件,指向本地 Ollama:

LLM_BASE_URL=http://localhost:11434/v1
LLM_MODEL=gemma4:26b-a4b
LLM_API_KEY=ollama          # Ollama 不需要真正的 key,但这个字段必须填

第 3 步:连接工具,启动

OpenClaw 自带一些内置工具,在配置里启用:

tools:
  - name: searxng
    enabled: true
    base_url: http://localhost:8888  # 本地 SearXNG 实例
  - name: calculator
    enabled: true
  - name: web_scraper
    enabled: true
  - name: code_executor
    enabled: true

启动 Agent:

python main.py

搞定。你现在有了一个支持多工具调用的本地 AI Agent,由 Gemma 4 驱动。

OpenClaw 给你什么

OpenClaw 不只是 Ollama API 的封装。它解决了几个自己写很痛苦的问题:

Telegram 集成。 把 Agent 接到 Telegram 机器人上。你的朋友或团队可以用手机聊天,Agent 跑在你的机器上。

SearXNG 本地搜索。 不用调 Google API(要钱还被追踪),OpenClaw 连接本地 SearXNG 实例。搜索不需要任何外部 API 调用。

多工具调用。 Gemma 4 原生支持函数调用,Agent 可以在一个查询里串联多个工具。问「搜一下最新的 Gemma 4 跑分然后算个平均分」,它会先搜索、再计算、最后给你答案。

对话记忆。 OpenClaw 自动管理对话历史和工具调用-返回的循环。你不用自己手动拼 messages 再重新发请求。

实际性能

X 和 GitHub 上大家的真实反馈:

配置性能
MacBook M1 16GB26B 模型,13GB 内存,20-40 tok/s
RTX 3090 24GB26B 模型,完全 GPU 卸载,50+ tok/s
MacBook M2 Pro 32GB26B 模型 + 128K 上下文窗口,余量充足
RTX 4060 8GB建议用 12B 模型,26B 装不下

用户反馈 26B 模型能稳定跑完 5 步工具调用链——搜索、解析、计算、格式化、回复——不会丢失连贯性或崩溃。这比之前的本地模型强很多,那些模型调 2-3 次工具就开始幻觉工具调用格式了。

已知问题:KV Cache Bug

部分版本的 llama.cpp(Ollama 底层用的)在多轮对话时有一个已知 bug。KV cache 在多次工具调用后可能损坏,导致输出乱码或崩溃。

解决办法:

# 设置较小的上下文窗口,减轻 KV cache 压力
ollama run gemma4:26b-a4b --num-ctx 8192

# 或者在 Ollama Modelfile 里:
PARAMETER num_ctx 8192

如果你遇到这个问题,把上下文窗口控制在 8K-16K 而不是满的 256K,可以大幅降低 KV cache 损坏的概率。Ollama 团队已经在跟进,预计后续版本会修复。

对于长对话,你也可以定期重启对话,或者在 Agent 代码里实现滑动窗口,只保留最近 N 轮交互。

使用场景

本地 Telegram 机器人

最受欢迎的玩法。在家里的服务器上跑一个 Telegram 机器人,家人或团队都可以发消息。能搜网页、回答问题、做计算——全不要钱,数据不出你的网络。

TELEGRAM_BOT_TOKEN=your_bot_token_here
TELEGRAM_ALLOWED_USERS=user_id_1,user_id_2

用 Playwright 做网页自动化

把 OpenClaw 和 Playwright 结合,做浏览器自动化。Agent 可以打开网页、填表单、抓数据、截图——全由 Gemma 4 的工具调用来指挥。

tools = [
    {
        "type": "function",
        "function": {
            "name": "browse_url",
            "description": "在无头浏览器中打开 URL 并返回页面内容",
            "parameters": {
                "type": "object",
                "properties": {
                    "url": {"type": "string", "description": "要访问的 URL"},
                    "action": {"type": "string", "enum": ["read", "screenshot", "click"], "description": "在页面上执行的操作"}
                },
                "required": ["url"]
            }
        }
    }
]

本地代码助手

把 Agent 指向你的代码库,让它回答问题、找 bug、生成代码。Gemma 4 有 256K 上下文,能把整个中等规模项目放进上下文里。

# 把项目文件喂进去做上下文
find ./src -name "*.py" -exec cat {} \; | python openclaw_cli.py \
  "检查这段代码有没有潜在 bug,给出修复建议"

稳定 Agent 循环的技巧

技巧原因
Agent 工作用 26B-A4B,别用 12BMoE 架构处理工具调用更稳
多轮对话上下文控制在 16K 以内避开当前 llama.cpp 的 KV cache 问题
max_steps 设成 10防止无限工具调用循环
工具描述写详细Gemma 4 很依赖描述来选工具
先单独测试每个工具确保每个工具能用了再串起来

下一步

2026 年,本地 AI Agent 从新奇玩具变成了真正能用的工具。Gemma 4 可靠的函数调用能力加上 OpenClaw 的开箱即用,让你 10 分钟内就能在自己机器上跑起一个生产级 Agent。不用 API key,不用月账单,数据不出你的机器。

gemma4 — interact

Stop reading. Start building.

~/gemma4 $ Get hands-on with the models discussed in this guide. No deployment, no friction, 100% free playground.

Launch Playground />
Gemma 4 AI

Gemma 4 AI

相关教程

3 步搭建本地 AI Agent:Gemma 4 + OpenClaw(零 API 费用) | 博客