OpenClaw定时任务实战:Qwen2.5-VL-7B每日新闻图文摘要

张开发
2026/4/10 12:02:13 15 分钟阅读

分享文章

OpenClaw定时任务实战:Qwen2.5-VL-7B每日新闻图文摘要
OpenClaw定时任务实战Qwen2.5-VL-7B每日新闻图文摘要1. 为什么需要自动化新闻摘要每天早上打开手机总会被各种新闻推送淹没。作为一个技术从业者我既想了解行业动态又不想被碎片化信息消耗太多时间。过去半年我尝试过各种RSS订阅工具和新闻聚合应用但始终找不到一个能同时满足图文并茂和重点突出的解决方案。直到上个月部署了Qwen2.5-VL-7B多模态模型后我突然意识到既然这个模型能理解图片和文字为什么不让它帮我做新闻摘要呢结合OpenClaw的自动化能力最终实现了现在这个每天7点准时推送的AI早报系统。整个过程从技术验证到稳定运行花了三周时间期间踩过不少坑今天就把这个实战经验完整分享出来。2. 系统架构与核心组件2.1 技术选型思路这个自动化系统的核心诉求很明确定时触发每天固定时间执行多源采集至少覆盖3个主流新闻网站图文理解不能只处理纯文本摘要生成保留关键信息结果推送邮件为主飞书备用经过多次迭代最终确定的组件搭配如下graph LR A[OpenClaw定时任务] -- B[新闻爬取模块] B -- C[Qwen2.5-VL-7B处理] C -- D[摘要生成] D -- E[邮件发送]2.2 关键组件说明OpenClaw作为任务调度中枢负责定时触发和流程管控。我选择直接使用macOS自带的crontab来调度而不是OpenClaw内置的定时器主要考虑到crontab的日志系统更成熟错误通知可以直接集成到系统邮件资源占用更低不需要常驻进程Qwen2.5-VL-7B部署在本地GPU服务器上的多模态模型。这里有个重要细节必须使用GPTQ量化版本否则我的RTX 3090显存根本撑不住7B参数的模型推理。通过vllm部署后API响应速度能控制在3-5秒/请求完全满足日常使用。爬虫模块自己用Python写的轻量级采集器。这里要特别注意每个网站的robots.txt规则图片下载的版权风险请求频率控制我设置为每10秒一个请求3. 具体实现步骤3.1 环境准备与模型部署首先确保OpenClaw已经正确安装并配置了模型访问权限。我的~/.openclaw/openclaw.json关键配置如下{ models: { providers: { local-qwen: { baseUrl: http://192.168.1.100:8000/v1, api: openai-completions, models: [ { id: qwen2.5-vl-7b, name: Local Qwen VL, contextWindow: 32768 } ] } } } }模型服务使用vllm部署启动命令示例python -m vllm.entrypoints.openai.api_server \ --model Qwen/Qwen2.5-VL-7B-Instruct-GPTQ \ --quantization gptq \ --max-model-len 8192 \ --dtype auto3.2 爬虫脚本开发新闻采集脚本的核心逻辑是通过requests获取网页HTML用BeautifulSoup提取正文和图片对图片进行压缩处理长边不超过1024px将图文内容保存为临时文件关键代码片段def process_news(url): try: response requests.get(url, headersHEADERS, timeout10) soup BeautifulSoup(response.text, html.parser) # 提取正文 content extract_main_text(soup) # 处理图片 images [] for img in soup.find_all(img): img_url img.get(src) if img_url and is_valid_image(img_url): local_path download_image(img_url) compressed_path compress_image(local_path) images.append(compressed_path) return { title: extract_title(soup), content: content, images: images, source: url } except Exception as e: logger.error(fError processing {url}: {str(e)}) return None3.3 OpenClaw任务集成创建OpenClaw技能目录结构~/openclaw_skills/news_digest/ ├── __init__.py ├── skill.json ├── main.py └── requirements.txt其中skill.json定义任务元数据{ name: news-digest, description: Daily news summary with Qwen2.5-VL, version: 0.1.0, commands: { run: { description: Execute daily digest, handler: main:run } } }任务主逻辑main.py的关键部分def run(): # 1. 采集新闻 news_items collect_news_from_sources() # 2. 调用Qwen处理 summaries [] for item in news_items: prompt build_multimodal_prompt(item) response openclaw.models.generate( modellocal-qwen/qwen2.5-vl-7b, messages[{role: user, content: prompt}] ) summaries.append(parse_response(response)) # 3. 生成邮件内容 email_html render_email_template(summaries) # 4. 发送邮件 send_email( subject每日AI新闻摘要, html_contentemail_html, attachmentsget_image_attachments() )3.4 定时任务配置使用crontab设置每日7点执行0 7 * * * /usr/local/bin/openclaw skills run news-digest ~/news_digest.log 21为了监控任务执行情况我添加了简单的健康检查脚本#!/bin/bash LOG_FILE~/news_digest.log LAST_RUN$(grep Completed $LOG_FILE | tail -1 | awk {print $1, $2}) if [[ -z $LAST_RUN ]]; then echo 任务可能未执行 | mail -s 新闻摘要监控警报 meexample.com elif [[ $(date -d $LAST_RUN %s) -lt $(date -d 24 hours ago %s) ]]; then echo 任务超过24小时未运行 | mail -s 新闻摘要监控警报 meexample.com fi4. 实际效果与优化经验4.1 生成示例对比原始新闻标题 特斯拉发布新一代自动驾驶系统FSD v12.3传统文本模型摘要 特斯拉推出了FSD v12.3版本自动驾驶系统改进了...Qwen2.5-VL-7B生成的图文摘要 【视觉亮点】系统界面截图显示新的3D可视化效果 【核心升级】1. 基于端到端神经网络的规划器 2. 复杂路口通过率提升37% 【注意事项】目前仅限北美地区beta测试用户4.2 遇到的典型问题图片处理问题 初期直接使用原图URL导致的问题某些网站禁用热链接大图加载超时版权风险解决方案下载图片到本地压缩时保留EXIF中的版权信息对敏感图片添加图片来源xxx标注模型理解偏差 Qwen有时会对图片内容过度解读比如把普通的产品配图识别为重大技术突破混淆不同新闻中的相似图片优化方法在prompt中明确限制仅描述图片中可见的客观内容对重要新闻添加人工校验步骤4.3 性能优化技巧通过两周的监控发现三个性能瓶颈新闻采集阶段串行请求导致总耗时过长模型推理阶段长文本处理速度不稳定邮件发送阶段大附件上传超时对应的优化措施# 改用异步采集 async def fetch_news(url): async with aiohttp.ClientSession() as session: async with session.get(url) as response: return await response.text() # 模型调用增加超时控制 response openclaw.models.generate( ..., timeout30, max_retries2 ) # 邮件附件使用CDN托管 upload_to_cdn(local_path)5. 扩展应用与个人建议这个框架其实可以灵活扩展到其他场景技术博客聚合我正尝试加入arXiv论文摘要竞品动态监控适合创业者行业报告自动生成调整下数据源即可对于想要复现的朋友我的实用建议是从小规模开始先处理1-2个新闻源稳定后再扩展注意法律风险特别是商业用途时要注意内容版权保留人工审核环节至少每周检查一次生成质量监控token消耗我的日报每天大约消耗8000-12000 token整个系统现在稳定运行了一个多月最大的感受是AI不是要完全替代人工而是帮我们过滤噪音。现在我每天花在新闻浏览上的时间从原来的40分钟缩短到10分钟而且信息获取效率反而提高了。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

更多文章