✅ 第一步:启动工作流 —— Trigger 节点
使用 When clicking 'Execute workflow' 触发器,也可以配置成定时任务(如每天早上 8:00 自动运行),适合个人或团队共享使用。
📡 第二步:抓取科技资讯 —— WiredRSS 节点
我订阅了《连线》杂志(Wired)的中文版 RSS 源,它覆盖全球前沿科技与人工智能动态。
xml
编辑
https://www.wired.com/feed/rss
获得到rss节点输入到URL中
⚠️ 注意:部分网站 RSS 可能需要代理或 API 接口支持。
在 n8n 中,直接添加 RSS 节点,输入 URL 即可拉取最新文章列表(通常返回 50 条以内)。
🔍 第三步:只保留今天的新闻 —— PubDateFilter 节点
我们不关心三天前的文章,只需要当天发布的。
使用 Filter 节点,判断每条新闻的 pubDate 是否在今天范围内:
js
编辑
const today = new Date();
const yesterday = new Date(today.getTime() - 24 * 60 * 60 * 1000);
return item.pubDate >= yesterday && item.pubDate <= today;
✅ 小技巧:JavaScript 的
Date类型非常强大:
new Date()获取当前时间getTime()返回毫秒数60*60*24*1000 = 86400000是一天的毫秒数 判断源中的pubDate is after 当前时间减去一天(注意是Expression是个变量而不是Fixed这样通用一点)
🛠️ 第四步:格式化内容 —— Edit Fields + ContentBlockAggregate
为了让 AI 更好理解输入,我们需要将标题和正文合并,并加上清晰的提示词结构。
修改字段(Edit Fields)
json
编辑
在 n8n 中添加`content_block`字段,主要目的是**对数据进行格式化整合**,
将多个字段的信息组合成一个结构化的文本块,便于后续步骤使用
{
"title": "{{ $json.title }}",
"content": "{{ $json.content }}"
}
合并为统一文本块(ContentBlockAggregate)
text
编辑
在 n8n 中,这一步 “Aggregate”(聚合)操作的主要目的是**对指定字段(这里是`content_block`)进行数据聚合处理**,
以便后续步骤能更高效地使用或整合这些数据。为了将该字段的信息进行汇总、整理,确保数据在流转到下一个节点
(比如发送通知、存储到系统等)时,以统一的聚合形式呈现,避免数据分散导致的处理复杂度提升。例如,
若后续需要把这条聚合后的`content_block`信息通过邮件批量发送,或存入数据库的一个统一字段中,
这一步就为其做好了数据格式的准备。
Title: {{ $json.title }}
Content: {{ $json.content }}
请根据以上内容撰写一篇简洁明了的科技速览摘要。
✅ 目标:构造对大模型友好的 Prompt 结构,提升输出质量。
🤖 第五步:AI 自动生成摘要 —— AI Agent 节点
这是最核心的部分!
我在 n8n 中接入了 DeepSeek Chat Model(也可替换为 GPT、Claude 等),作为 AI Agent 使用。
配置说明:
大模型的设置
AI Agent设置
选择 ### Define below
-
作用:需要手动通过表达式引用之前节点的输出数据或输入静态文本,灵活性更高。
-
场景:适用于需要对数据进行自定义处理(比如拼接多个字段、修改格式、引入外部数据)的情况。例如截图中如果选择 “Define below”,可以手动编写表达式来组合
title、content等字段,生成更定制化的内容。这一步的核心目的之一是将数据转换为字符串格式 content_block是数组直接使用可能会保留数组的结构
join("\n\n")方法会将数组中的每个元素拼接成一个连续的字符串,并通过\n\n(两个换行符)分隔,既完成了 “数组→字符串” 的转换,又让字符串的排版更清晰(段落间有空行) -
Model: DeepSeek Chat
-
Temperature: 设置为
0.1,因为这个是新闻所以要严谨,越靠近0越严谨,越靠近1越则越具创造性和随机性。 -
Prompt:他是一个提示词,大模型能够更好工作的一个关键
“请用中文撰写一段不超过 300 字的科技新闻摘要,语言通俗易懂,适合非专业人士阅读。” 这里是我的prompt: You are a professional tech news editor.Based on users input, write the popular post - daily tech.Write it in Markdown in chinese.You response should just contain the Markdown content.
🎯 温度参数控制生成随机性:
0: 最确定,结果一致1: 最随机,可能更创意但不稳定
💾 第六步:保存结果 —— Convert to File + Write to Disk
拖拽output
添加read
“Read” 节点可以作为最后一步,直接将处理完成的数据以可读形式输出(比如在 n8n 的运行日志中显示),让使用者直观看到流程的最终产物。
在集成终端打开
输入pwd会出现路径
把路径放进去并加上\tch.md,这样就会写入vscode里
这样就会写入vscode里
最后# 每日科技速览工作流 # 就生成了
🔄 整体工作流图示(可视化)
注:图片为示意,实际可上传你在 n8n 中导出的流程图
节点顺序如下:
- Trigger →
- WiredRSS →
- PubDateFilter →
- Edit Fields →
- ContentBlockAggregate →
- AI Agent (DeepSeek) →
- Convert to File →
- Write File to Disk