跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
JavaScriptNode.jsAI

Mac mini M4 部署 OpenClaw + Ollama 本地大模型对接飞书机器人

Mac mini M4 凭借统一内存优势适合本地运行 AI Agent。演示基于 OpenClaw 框架结合 Ollama 的 Qwen 2.5-7B 模型,通过 WebSocket 协议接入飞书机器人的完整流程。涵盖环境配置、模型选型、JSON 参数调优及权限设置,实现私有化、低延迟的智能助理部署。

PentesterX发布于 2026/3/20更新于 2026/6/1129 浏览
Mac mini M4 部署 OpenClaw + Ollama 本地大模型对接飞书机器人

Mac mini M4 凭借统一内存优势,成为本地运行 AI Agent 的理想硬件。本文记录如何利用 OpenClaw 框架配合 Ollama 运行的 Qwen 2.5 系列模型,通过 WebSocket 长连接接入飞书,实现一个完全私有化、极速响应的个人助理。

核心环境准备

硬件:Apple Mac mini M4 (16GB RAM)
系统:macOS Sequoia
模型后端:Ollama (运行 Qwen 2.5-7B)
Agent 框架:OpenClaw (最新稳定版)
Node 版本:v20 LTS (通过 nvm 管理)

环境初始化与避坑

在 Mac 终端部署时,首要解决的是权限与路径问题。这里整理了一些常用操作和修复方案。

终端基础操作

  • Control + C:强制停止当前运行的命令(如安装卡死时)。
  • sudo:以管理员身份运行。若遇到权限不足,在指令前加 sudo 即可。

Node.js 环境修复

若遇到 zsh: command not found: openclaw,通常说明 NVM 路径未加载到当前 Shell 会话中。

临时加载环境:

source ~/.nvm/nvm.sh && nvm use 20

永久写入配置:

echo 'export NVM_DIR="$HOME/.nvm"\n[ -s "$NVM_DIR/nvm.sh" ] && \.[ "$NVM_DIR/nvm.sh"' >> ~/.zshrc && source ~/.zshrc

模型选择:M4 性能调优

针对 16GB 内存,我测试了不同参数量的模型表现:

  1. Qwen 2.5-14B:逻辑极强,但占用约 9GB 显存,响应稍慢。
  2. DeepSeek-R1-8B:推理能力卓越,但对 OpenClaw 的 Tools (函数调用) 兼容性一般。
  3. Qwen 2.5-7B (推荐):秒回速度,完美支持自动化工具协议,是 M4 下的最佳平衡点。

安装命令:

ollama run qwen2.5:7b

OpenClaw 配置详解

手动编辑 ~/.openclaw/openclaw.json 是解决配置报错的最快方式。关键配置项说明如下:

  • baseUrl: 必须指向 http://127.0.0.1。
  • appSecret: 飞书后台的真实密钥(非 cli_ 开头)。
  • tools.profile: 设置为 minimal 或 none 以减少小模型工具调用的报错。

最终稳定版配置参考:

{
  "models": {
    "providers": {
      "custom-127-0-0-1-11434": {
        "baseUrl": "http://127.0.0.1",
        "apiKey": "ollama",
        "api": "openai-completions",
        "models": [
          {
            "id": "qwen2.5:7b",
            "reasoning": false
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "custom-127-0-0-1-11434/qwen2.5:7b"
      }
    }
  },
  "channels": {
    "feishu": {
      "enabled": true,
      "appId": "cli_xxxxxxxx",
      "appSecret": "xxxxxxxxxxxx",
      "connectionMode": "websocket"
    }
  },
  "gateway": {
    "port": 18789,
    "mode": "local"
  }
}

配置界面示例

飞书机器人接入

很多同学卡在'机器人已上线但不回复',请务必检查飞书后台设置:

  1. 启用机器人:在'应用功能'中确认开启。
  2. 事件订阅:必须添加 接收消息 (im.message.receive_v1) 事件。
  3. WebSocket 模式:在'事件订阅'中开启 WebSocket 模式。

版本发布:改了权限或事件后,必须创建新版本并点击'申请上线',否则改动不生效!

飞书事件订阅

运行与调试

启动网关并观察日志:

启动 Gateway

openclaw gateway --allow-unconfigured

第一次发消息需授权 (Pairing)

openclaw pairing approve feishu [验证码]

配对验证

当日志出现 [ws] ws client ready 时,你的 M4 机器人就已经正式'活'过来了。

运行成功日志

常见问题排查

通过 OpenClaw 与本地模型的结合,我们成功让 Mac mini M4 变成了一个 7x24 小时在线的智能助理。目前本地部署的 7B 模型还是远远不够的,后续可以使用付费 token 提升模型智力。

Q: 为什么报错 400: deepseek does not support tools?
A: 推理模型暂时无法处理 OpenClaw 的 JSON 函数调用格式,建议将 tools.profile 改为 minimal 或换用 Qwen 模型。

目录

  1. 核心环境准备
  2. 环境初始化与避坑
  3. 终端基础操作
  4. Node.js 环境修复
  5. 模型选择:M4 性能调优
  6. OpenClaw 配置详解
  7. 飞书机器人接入
  8. 运行与调试
  9. 启动 Gateway
  10. 第一次发消息需授权 (Pairing)
  11. 常见问题排查
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 本地部署 LLaMA-Factory 实现大模型微调与推理
  • C++未声明标识符问题详解
  • 设计模式:策略模式详解与实战
  • Manual2Skill:利用 VLM 阅读说明书指导机器人家具组装
  • 自然语言处理技术与应用实践
  • Xilinx FPGA Bit 文件加密方法
  • Ollama 性能优化:Mac M2 上利用 llama.cpp 加速 Qwen-7B 推理
  • 大模型应用开发框架:LangChain 核心解析与实战
  • 前端 JS 资源加载失败怎么办?重试与多源容灾方案实战
  • C++ STL 容器 set 与 map 使用详解
  • LangChain 进阶实战:利用 LLM 与 Agents 构建自主决策智能体
  • 链表核心算法实战:从基础操作到复杂变换
  • SketchUp STL 插件使用指南:从设计到 3D 打印
  • EasyOCR Python 开源 OCR 工具使用指南
  • 工程项目管理系统技术架构与核心功能梳理
  • OpenClaw 多 Agent 与多飞书机器人配置
  • MongoDB 数据备份与恢复实战指南
  • MySQL 覆盖索引:原理、优势与适用场景
  • Oracle 数据库基础命令实战指南
  • Spring Boot 2.7.x 升级 Logback 至 1.3.x 及以上版本的解决方案

相关免费在线工具

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Keycode 信息

    查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online

  • Escape 与 Native 编解码

    JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online

  • JavaScript / HTML 格式化

    使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online