OpenClaw定时任务:千问3.5-9B每日早报自动推送

1. 为什么需要自动化早报推送

每天早上打开电脑第一件事,就是手动收集行业新闻、技术动态和日程提醒,再整理成早报发到团队群。这种重复劳动持续三个月后,我开始思考:能不能让AI帮我完成这个枯燥的工作?

经过多次尝试,最终选择用OpenClaw+千问3.5-9B搭建自动化方案。这个组合的优势在于:

  • 完全本地化:新闻抓取和内容生成都在本机完成,避免敏感信息外泄
  • 灵活定制:可以按个人偏好调整摘要来源、排版风格和发送时间
  • 异常自愈:当网络波动导致抓取失败时,系统会自动重试备用数据源

2. 环境准备与基础配置

2.1 安装OpenClaw核心组件

在macOS终端执行官方安装脚本(Windows用户需使用PowerShell):

curl -fsSL https://openclaw.ai/install.sh | bash
openclaw onboard --install-daemon

选择Advanced模式配置:

  • Provider选Qwen(国内网络友好)
  • 模型选择qwen3-32b(与千问3.5-9B兼容)
  • 跳过渠道配置(后续单独设置钉钉)

2.2 钉钉机器人接入

在钉钉开放平台创建自定义机器人后,修改OpenClaw配置文件:

// ~/.openclaw/openclaw.json
{
  "channels": {
    "dingtalk": {
      "enabled": true,
      "appKey": "your_app_key",
      "appSecret": "your_app_secret",
      "robotCode": "your_robot_code"
    }
  }
}

重启网关服务使配置生效:

openclaw gateway restart

3. 构建早报生成流水线

3.1 数据采集模块

创建news_collector.py脚本,定义三个层级的新闻源:

  1. 核心源(必选):技术博客、行业门户的RSS
  2. 备选源(主源失效时启用):社交媒体热点话题
  3. 应急源(前两级均失败时使用):本地知识库缓存
# 示例:多级新闻采集逻辑
def fetch_news():
    try:
        # 优先尝试核心源
        articles = scrape_rss('https://example.com/tech.rss')
        if not articles:
            # 主源失效时切换备选源
            articles = scrape_twitter('#TechTrend')
    except Exception as e:
        # 异常时使用上周缓存
        articles = load_local_cache('news_backup.json')
    return articles[:5]  # 取最新5条

3.2 内容生成策略

通过OpenClaw调用千问3.5-9B时,需要特别设计提示词:

你是一个专业的信息整理助手,请将以下新闻条目:
1. 按"标题-核心观点-相关链接"格式重组
2. 为每条添加emoji图标增加可读性
3. 在开头添加当日日期和天气预报(从系统API获取)
4. 末尾补充3条今日建议行动项

实际测试发现,模型对"建议行动项"的生成容易脱离上下文。通过添加示例后效果提升:

prompt = f"""
参考示例:
好的行动项:- 阅读《AI前沿》第3章 \n- 检查服务器日志 \n- 预约团队会议
差的行动项:- 保持好心情 \n- 多喝水

请基于今日新闻生成专业建议:
{news_titles}
"""

4. 定时任务与异常处理

4.1 Cron表达式配置

使用系统的crontab设置每日早8点触发:

# 编辑crontab
crontab -e

# 添加以下行(注意替换实际路径)
0 8 * * * /usr/local/bin/openclaw task run --file ~/morning_news_flow.json

morning_news_flow.json定义了完整工作流:

{
  "steps": [
    {
      "name": "fetch_news",
      "timeout": 300,
      "retry": 2
    },
    {
      "name": "generate_report",
      "model": "qwen3-32b",
      "temperature": 0.7
    },
    {
      "name": "send_to_dingtalk",
      "channel": "dingtalk"
    }
  ]
}

4.2 重试机制实践

当主新闻源不可达时,系统会按以下顺序处理:

  1. 立即重试当前源(最多2次)
  2. 自动切换备选源
  3. 最终失败时发送精简版早报(仅含日期和待办事项)

通过openclaw.log可以查看完整执行记录:

2024-03-15 08:00:01 [INFO] 开始执行早报任务
2024-03-15 08:00:23 [WARN] 主新闻源请求超时,首次重试...
2024-03-15 08:00:45 [SUCCESS] 从备选源获取3条新闻

5. 实际效果与优化建议

运行两周后,这个系统已经稳定生成12次早报。最惊喜的发现是:

  • 模型对技术新闻的摘要准确率比人工更高(特别是代码变更说明)
  • 定时任务在系统休眠后会自动补发(需开启openclaw resume服务)

但也遇到需要手动干预的情况:

  1. 当新闻包含复杂图表时,文本摘要会丢失关键数据
  2. 节假日仍需临时关闭推送(可通过openclaw task pause实现)

建议初次使用者先设置测试任务验证流程:

# 立即试运行一次(不实际发送)
openclaw task test --file ~/morning_news_flow.json

获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐