“几点关门”“拿铁多少钱”“能不能订位”是小店经常重复回答的问题。可以让本机大模型先根据店主确认的资料起草短回复,再由微信渠道把消息接到 OpenClaw。本文用虚构咖啡店资料,实测了 Ollama 上的 Gemma4 和 Qwen,并完成了 OpenClaw、微信插件安装与测试账号扫码登录。
本轮还用测试微信账号完成了真实消息往返:连续两次询问拿铁价格,机器人都回复“拿铁是 ¥26。”;连续两次询问能否送到公司,机器人都回复“关于配送服务,请稍等,我会请工作人员为您确认。”没有猜测未知的配送政策。聊天截图与 Gateway 会话状态相互印证。这是测试账号、虚构门店资料下的联调,不代表已经部署成可供顾客使用的正式客服。
准备好门店确认过的资料
| 顾客常问 | 演示门店资料 |
|---|---|
| 营业时间 | 每天 10:00–20:00 |
| 商品价格 | 美式 18 元,拿铁 26 元,巴斯克蛋糕 32 元 |
| 预约规则 | 1–5 人现场排队;6 人及以上至少提前 1 天提出,店员回复确认后才算成功 |
| 外送 | 没有确认资料,交店员核实 |
这些内容完全虚构。开始接入前,先让店主检查营业时间、价格、节假日安排、预约规则和服务范围。临时改价、库存、退款和档期等会变化的信息,不能只靠一份长期不更新的提示词。
先在本机比较回复模型
本次环境是 MacBook Pro M1 Max、64GB 内存、macOS 27;Ollama 0.35.1 已安装 Gemma4-26B Q4_K_M 和 Qwen3.8-27B Q4_K_M。把同一份虚构门店资料和四个问题交给两种模型:拿铁价格、打烊时间、6 人预约、外送服务。
| 模型 | 本轮生成时间 | 观察到的结果 |
|---|---|---|
| Qwen3.8-27B Q4_K_M | 16.8 秒 | 价格和打烊时间答对;预约回复较短,但没说清“至少提前 1 天” |
| Gemma4-26B Q4_K_M | 11.5 秒 | 四项均按资料回答,保留提前预约和店员确认条件 |
两种模型都没有编造外送政策。本轮选择 Gemma4 展示;每种模型只跑了一次,不能据此判断长期准确率。模型输出仍要抽查,尤其是节假日、退款、投诉、过敏和预约冲突。
接着通过 OpenClaw Gateway 调用同一台机器上的 Gemma4,问“拿铁多少钱?”,实际回答是“拿铁是 ¥26。”,用时约 5.7 秒。这证明 Gateway 能将问题交给本机 Ollama 并拿到文字回复;它不是微信消息往返的替代证据。
安装 OpenClaw 并接上本地模型
OpenClaw 当前要求 Node.js 24.16+ 或 26.1+;本轮在隔离测试目录使用 Node.js 24.21.0、OpenClaw 2026.9.9。版本要求可能调整,安装前先查看官方 Node.js 要求。
Mac / Linux 可以按官方安装说明安装 OpenClaw,再运行初始化向导:
curl -fsSL https://openclaw.ai/install.sh | bash
在引导界面选 Ollama 的本地模式,选择机器上已下载的 Gemma4 模型。OpenClaw 官方接入说明也提供 openclaw onboard、openclaw models list --provider ollama 等核对方法:本地 Ollama 配置文档。
检查模型是否可见:
ollama list
openclaw models list --provider ollama
本机模型请求由 Ollama 在电脑上处理;但微信消息经过微信渠道传输,微信登录凭证会保存在运行 OpenClaw 的本机。这里的“本地模型”不等于“消息从未经过网络”。
安装微信渠道插件并扫码
腾讯维护的 OpenClaw 微信插件通过扫码把 Gateway 连接到微信,并按长轮询接收消息。当前插件文档要求 Node.js >=22.13.0,OpenClaw 推荐版本 >=2026.5.12;本轮固定使用插件 2.4.9 和 OpenClaw 2026.9.9。查看插件安装说明
安装、启用插件并登录。下面把 Gateway 限定在本机,并关闭智能体工具权限;这样测试助手只能生成文字草稿,不能访问文件、终端或其他工具:
openclaw plugins install "@tencent-weixin/openclaw-weixin@2.4.9" --accept-capabilities --pin
openclaw config set plugins.entries.openclaw-weixin.enabled true
openclaw config set gateway.bind loopback
openclaw config set tools.profile minimal
openclaw config set tools.deny '["*"]'
openclaw config set session.dmScope per-account-channel-peer
openclaw channels login --channel openclaw-weixin
按终端提示用测试微信扫码并确认。成功后重启 Gateway,再查看渠道状态:
openclaw gateway restart
openclaw channels status --channel openclaw-weixin --probe
本轮测试账号完成扫码,状态命令显示渠道已配置并运行。Gateway 只绑定 127.0.0.1,测试中未将管理端口暴露到局域网;客服智能体也禁用了工具调用,只保留文字问答。正式给顾客使用前,要另外配置可用性监控、凭证保护、消息留存期限和人工接管方式。
先用虚构数据做安全检查
把店内确认资料放进 OpenClaw 的工作区说明文件,再加入边界:未知服务转店员、预约未确认不能说成功、不索取不必要的个人信息;退款、投诉、过敏、儿童安全等问题交给店员处理。工具包里的提示词可以直接复制,再替换为真实资料。
先做三类测试:
- 已知问题:问拿铁价格,检查是否与菜单一致。
- 资料里没有的问题:问能否外送,检查是否转店员而不是猜测。
- 涉及承诺的问题:提出 6 人预约,检查是否只收集必要信息,并明确由店员确认。
联调时不要放入顾客真实姓名、电话、地址、订单号或支付信息。姓名、联系方式等属于个人信息;健康等信息可能属于敏感个人信息,处理前应评估必要性并限制权限。查看《个人信息保护法》
本轮验证记录
| 检查项 | 当前结果 |
|---|---|
| Gemma4 / Qwen 本机生成 | 同一虚构资料完成各一轮;Gemma4 11.5 秒、Qwen 16.8 秒 |
| OpenClaw → Ollama | Gateway 本地问答成功,5.7 秒,返回拿铁价格 26 元 |
| 微信插件 | OpenClaw 2026.9.9、腾讯插件 2.4.9;安装后启用 |
| 微信账号登录 | 测试账号已扫码;渠道状态显示 configured、running |
| 实际微信消息收发 | 测试账号连续两轮各发“拿铁多少钱”“你们能送到公司吗”;四条都收到回复。价格两次都答 26 元,配送问题两次都转请工作人员确认 |
微信聊天实测:
| 顾客消息 | 测试账号收到的回复 | 核对 |
|---|---|---|
| 拿铁多少钱 | 拿铁是 ¥26。 | 与虚构菜单一致 |
| 你们能送到公司吗 | 关于配送服务,请稍等,我会请工作人员为您确认。 | 资料没有配送政策,未猜测 |
两组问答各重复一次,结果相同。渠道消息正文不一定出现在普通明文日志中,因此同时核对了微信端截图和 Gateway 会话状态。
工具和资料
| 工具 | 本文用途 | 官网 |
|---|---|---|
| Ollama / Gemma4 | 在本机运行客服回复草稿模型 | ollama.com |
| OpenClaw | 管理模型与消息渠道 | openclaw.ai |
| 腾讯微信渠道插件 | 连接微信与 OpenClaw Gateway | 插件说明 |
提示词与模型实测记录见小店客服提示词与实测记录。