# n8n 增量更新 Workflow ## 概述 此 workflow 每周一自动运行,收集最近 7 天的新 AI 事件。 ## Workflow 结构 ### Node 1: Cron 触发器 - 节点类型: `Cron` - 表达式: `0 9 * * 1` (每周一早上 9:00) - 时区: Asia/Shanghai ### Node 2: Web Search - Agent 1 - 节点类型: `HTTP Request` - URL: `http://localhost:3000/api/web-search` (或 MCP 端点) - Body: ```json { "search_query": "AI news LLM release model launch this week", "search_recency_filter": "oneWeek" } ``` ### Node 3: 筛选 Agent - Agent 2 - 节点类型: `Code` - 用途: 筛选 + 去重(查询数据库避免重复) ```javascript const trustedDomains = [ 'arxiv.org', 'openai.com', 'anthropic.com', 'google.ai', 'meta.ai', 'deepmind.com', ]; // 过滤权威来源 const items = $input.all(); const filtered = items.filter(item => { const url = item.json.url || ''; return trustedDomains.some(domain => url.includes(domain)); }); // TODO: 添加数据库查询去重 // 这里可以调用 GET /api/events 检查 sourceUrl 是否已存在 return filtered; ``` ### Node 4: 格式化 Agent - Agent 3 - 节点类型: `Code` - 代码: 同历史 workflow ### Node 5: 提交到 API - 节点类型: `HTTP Request` - 配置: 同历史 workflow ### Node 6: 发送通知邮件 - 节点类型: `Send Email` - 条件: 仅在创建新事件时发送 - 内容: ``` 主题: AI Timeline - 新事件已添加 本次更新添加了 {{ $json.created }} 个新事件。 查看: https://your-domain.com/timeline ``` ### Node 7: 错误处理 - 节点类型: `Error Trigger` - 动作: 发送错误邮件到管理员 ## 测试 1. 修改 Cron 为手动触发进行测试 2. 验证只有新事件被添加 3. 检查邮件通知是否正常发送 4. 确认错误处理工作正常 ## 数据质量保证 ### 自动筛选规则 1. **来源可信**: 仅来自权威域名 2. **时效性**: 仅最近 7 天的内容 3. **去重**: 基于 sourceUrl 自动去重 ### 人工审核流程 建议在自动导入后进行人工审核: 1. 检查标题是否准确 2. 验证描述是否客观 3. 确认图片是否合适 4. 测试链接是否可访问 ## 邮件通知配置 ### 成功通知 当有新事件添加时发送: - 收件人: 内容团队 - 主题: "AI Timeline - {{ count }} 个新事件已添加" - 内容: 包含事件列表和链接 ### 错误通知 当 workflow 失败时发送: - 收件人: 技术团队 - 主题: "⚠️ AI Timeline Workflow 失败" - 内容: 错误详情和日志 ## 监控指标 建议监控以下指标: - 每周添加的事件数量 - workflow 执行时间 - 失败率和错误类型 - 去重率 ## 优化建议 1. **AI 辅助筛选**: 使用 AI 模型评估新闻相关性 2. **多源聚合**: 整合多个搜索 API 3. **智能去重**: 基于标题相似度去重 4. **自动翻译**: 自动生成英文翻译(titleEn, descriptionEn)