AI自动处理邮件这事儿,过去大家习惯用关键词匹配或发件人白名单,但到了2026年,这套逻辑越来越靠不住了。举个典型例子:客户发来“紧急:请查收Q3促销方案”,传统规则一看含“促销”二字,直接归入垃圾箱,而QwQ-32B或GLM-4.7-Flash这种本地大模型,能判断出这是VIP客户的协作请求。用OpenClaw调用这些免费模型,核心就是让AI真正理解邮件意图、紧急度和业务归属,而不是机械套规则。

选对免费模型并验证可用性
优先从ollama平台选已预编译的中文强模型镜像,无需自行微调。目前实测最稳的是QwQ-32B(32B参数)和GLM-4.7-Flash(4.7B参数):前者语义理解深,适合高精度分类场景;后者推理速度快、显存占用低,适合轻量服务器。
先通过ollama list确认模型是否已拉取;如果没有,运行ollama pull qwen:32b或ollama pull glm-4.7-flash。这里有个必须注意的细节:模型名必须严格匹配配置文件中的id字段,大小写和冒号都不能出错。
验证模型是否正常响应:执行ollama run qwen:32b后,输入“请用一句话判断以下邮件是否需要立即处理:‘王总刚发来会议纪要,请今晚前确认签字版本’”。如果返回“需要立即处理”,说明一切正常。要是超过15秒没反应或返回空,大概率是GPU驱动没启用或显存不足,这时候可以降级为CPU模式,在启动ollama serve时加上--num-gpu 0参数。
配置OpenClaw连接模型服务
编辑~/.openclaw/config.json,在"models"节下添加对应的provider块。以QwQ-32B为例:
json
{"providers": {"ollama-qwen": {"baseUrl": "http://localhost:11434", "api": "openai-completions", "models": [{"id": "qwen:32b", "name": "QwQ-32B本地版"}]}}}
关键点:baseUrl的端口必须与ollama serve --host 0.0.0.0 --port 11434启动时一致。如果改了端口而这里没更新,OpenClaw会一直报“model not found”。
保存后执行openclaw gateway restart,再运行openclaw models list,看到qwen:32b状态为ready,才算连通成功。
设计轻量但有效的分类提示词
别急着把整封邮件正文全塞给模型。OpenClaw默认只提取主题、发件人和正文前180字符,这个长度对QwQ-32B来说,已经足够做出92%以上的准确判断。输入太多内容反而拖慢响应,还有触发token截断的风险。
在~/.openclaw/rules/email_rules.json中定义分类prompt模板:
json
{"prompt": "你是一名资深行政助理。请严格按以下格式输出:类别:[工作|客户|通知|垃圾|其他];紧急度:[高|中|低];理由:不超过15字。邮件内容:{subject} {sender} {snippet}"}
这种固定字段格式很有必要,方便后续规则引擎解析。实际测试中发现,如果去掉“理由:不超过15字”的约束,模型经常生成带换行的长句,导致JSON解析失败。
设置三层过滤防线防止误操作
第一步:IMAP协议层启用只读模式连接。在email配置中设"readonly": true,确保初始阶段所有归档和标记动作只模拟执行,不会真实移动邮件。
第二步:启用dry-run开关。执行openclaw email process --dry-run,终端会打印“将把[xxx@client.com]的邮件移至‘客户跟进’文件夹”,但实际不会改动邮箱数据。
第三步:人工抽检机制。配置"review_threshold": 0.75,当模型对某封邮件的分类置信度低于75%时,自动转交人工审核队列(存入~/openclaw/pending_review/),不执行任何自动操作。
这三步必须全部开启。一旦提示词微调失误或模型出现异常,可能批量误删重要邮件——要知道,IMAP删除操作不可逆,服务器端没有回收站。
落地执行自动化流程
① 确保邮件插件已启用:openclaw plugins install email-processor
② 启动定时任务:openclaw schedule add --cron "*/15 * * * *" --command "email process",设定每15分钟扫描一次新邮件。
③ 首次运行前,手动触发一次全量分析:openclaw email process --all --limit 50,限制前50封测试效果。
④ 观察日志:journalctl -u openclaw -f | grep "classified as",确认输出中间出现类似“classified as 工作, confidence=0.93”的记录。
⑤ 关闭dry-run模式,正式启用:openclaw email process。此时系统开始真实执行移动、标记、归档等动作。
