【硬核实战】Mac mini M4 部署 OpenClaw + Ollama 本地大模型:从零到一打通飞书机器人

【硬核实战】Mac mini M4 部署 OpenClaw + Ollama 本地大模型:从零到一打通飞书机器人

文章目录

📅 前言随着 Mac mini M4 的发布,16GB 统一内存成为了本地跑 AI Agent 的绝佳土壤。本文将记录如何利用 OpenClaw 框架,配合 Ollama 运行的 Qwen 2.5 系列模型,通过 WebSocket 长连接 接入飞书,实现一个完全私有化、极速响应的个人助理。

一、 核心环境准备

硬件:Apple Mac mini M4 (16GB RAM)
系统:macOS Sequoia
模型后端:Ollama (运行 Qwen 2.5-7B)
Agent 框架:OpenClaw (v2026.3.2)
Node 版本:v24.14.0 (通过 nvm 管理)

二、 避坑指南:环境初始化在 Mac 终端部署时,首要解决的是权限与路径问题。

1. 终端常用快捷键* Control + C:强制停止当前运行的命令(如安装卡死时)。

  • sudo:以管理员身份运行。若遇到权限不足,在指令前加 sudo 即可。

2. Node.js 环境修复若遇到 zsh: command not found: openclaw,说明 NVM 路径未加载。

3. 临时加载环境

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

4. 永久写入配置

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 配置手术 (JSON 详解)

手动编辑 ~/.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&A:

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

如果你也拥有一台 M4 Mac,不妨按此指南尝试部署,开启你的本地 Agent 之旅!

Read more

开源又实用!CAM++系统为何值得你立刻尝试

开源又实用!CAM++系统为何值得你立刻尝试 1. 这不是另一个语音识别工具,而是一个真正能落地的说话人验证方案 你有没有遇到过这样的场景:需要确认一段录音是不是某位同事说的?想快速判断客服通话中两个声音是否来自同一人?或者在安防系统里,需要从一段监控音频中验证说话人身份?市面上很多语音识别工具只告诉你“说了什么”,但CAM++解决的是更关键的问题——“谁说的”。 CAM++不是语音转文字(ASR),也不是语音合成(TTS),它专注一个被长期低估却极其重要的能力:说话人验证(Speaker Verification)。简单说,它不关心内容,只认声音本身。就像指纹或虹膜识别一样,它把人的声纹变成一串可计算、可比对的数字特征。 更难得的是,这个系统完全开源、开箱即用、中文优化、部署极简。不需要GPU服务器,一台普通开发机就能跑;不需要写代码,点点鼠标就能完成专业级声纹分析;不需要调参经验,预设阈值开箱即准。它不像学术模型那样只停留在论文里,也不像商业API那样藏着高昂费用和隐私风险——它就安静地运行在你的本地机器上,数据不出门,结果自己掌控。 如果你正在寻找一个真正能放进工作流

By Ne0inhk
【工创赛2025-智能物流搬运塔吊方案开源(2分15秒)】西安理工大学工程训练中心

【工创赛2025-智能物流搬运塔吊方案开源(2分15秒)】西安理工大学工程训练中心

一、前言        时光荏苒,岁月如梭。三年的本科竞赛生涯随着工训赛的结束告一段落。竞赛路途中,受到了诸多大佬的帮助和鼓励。为了将这份开源精神传递下去,本团队全体成员一致决定无偿开源本项目机械设计图纸、PCB设计、电控代码、视觉代码及镜像文件、参赛文档以及其他有关设计资料。        请注意,本项目开源文件完全免费,内容遵循CC 4.0 BY-NC-SA版权协议,转载请给出适当的署名,不可用作商业用途,严禁倒卖,若广大网友发现以上行为,请第一时间与我取得联系。        在此,由衷感谢西安理工大学工程训练中心的各位老师对我们竞赛项目的悉心指导与鼎力支持。         这里放一张二代小车同堂的照片作为纪念 二、关于开源项目        运行视频:[开源]2025工训赛智能物流搬运,初赛第八,2分26秒_哔哩哔哩_bilibili        本项目参与了2025年中国大学生工程实践与创新能力大赛全国总决赛,初赛成绩仅1个二环,其余均为一环,总时间2分26秒。决赛由于准备不足以及现场不可预料的因素,成绩不算理想,最后总成绩为全国特等奖。

By Ne0inhk

Git 回退到某个 commit

Git 回退到某个 commit 文章目录 * Git 回退到某个 commit * **核心总结:如何选择?** * **方法一:`git reset` (重置)** * `git reset` 的三种模式: * **操作步骤示例 (使用 `--hard`)** * **方法二:`git revert` (撤销)** * **操作步骤示例** * **方法三:`git checkout` (检出)** * **操作步骤示例** * **离开 "detached HEAD" 状态** * **紧急救援:`git reflog`** 这里我会为你详细解释三种主要的方法: git reset、 git revert 和 git checkout。它们适用于不同的场景,理解它们的区别非常重要。 核心总结:如何选择?

By Ne0inhk