微信扫码
添加专属顾问
我要投稿
FeedMe:AI驱动的RSS阅读器,帮你从信息洪流中快速抓取精华,支持多源聚合与智能摘要,让阅读效率翻倍。 核心内容: 1. FeedMe的核心功能:多源RSS聚合与AI摘要生成 2. 灵活部署方案:支持GitHub Pages和Docker本地运行 3. 典型应用场景:个人信息聚合与内容监控
什么是 FeedMe ?
FeedMe
是一个基于AI
的RSS
阅读器,旨在通过聚合和自动生成摘要来重新定义用户的RSS
阅读体验。该项目可以轻松部署到GitHub Pages
或使用Docker
本地运行。
RSS
内容,便于用户集中获取信息。LLM
)为文章生成摘要,帮助用户快速了解内容要点。GitHub Actions
或 Cron
定期自动更新内容,确保信息新鲜。GitHub Pages
等静态托管服务上,简单易用。FeedMe
聚合自己感兴趣的新闻、博客和其他信息源,方便集中阅读。FeedMe
集成不同技术博客和开源项目的更新,保持知识更新。RSS
源,灵活定制信息获取方式。FeedMe
提供了一个轻量级、自由定制的解决方案,适合各种需要信息聚合和快速浏览的用户。
如果你不想自己构建,可以跳过,直接阅读下一章节
官方提供了 Dockerfile
,但需要我们自己编。构建镜像的基本命令如下👇
# 下载代码
git clone https://github.com/Seanium/FeedMe.git
# 通过代理
git clone https://gh-proxy.com/github.com/Seanium/FeedMe.git
# 进入目录
cd FeedMe
# 构建镜像
docker build -t wbsu2003/feedme:v1 .
# 运行容器
docker run -d \
--restart unless-stopped \
--name feedme \
-p 3220:3000 \
-v $(pwd)/env.txt:/app/.env \
-v $(pwd)/config:/app/config \
-v $(pwd)/data:/app/data \
wbsu2003/feedme:v1
在群晖上以 Docker 方式安装。
在注册表中搜索 wbsu2003
,下拉找到 wbsu2003/feedme
,版本选择 latest
。
在 docker
文件夹中,创建一个新文件夹 feedme
,并在其中建两个子文件夹 data
和 config
feedme
根目录中准备一个 env.txt
文件env.txt
是环境变量文件,用来配置 FeedMe
项目调用外部 AI
服务(如摘要等)的相关信息
LLM_API_KEY=your_api_key
LLM_API_BASE=https://api.siliconflow.cn/v1
LLM_NAME=THUDM/GLM-4-9B-0414
其中:
LLM_API_KEY
:你的大语言模型 API
密钥;LLM_API_BASE
:指定大语言模型 API
的基础地址;LLM_NAME
:指定所要使用的具体大语言模型名称;目前硅基流动(SiliconFlow
),注册就送 2000
万 Tokens
,虽然不是免费,但也够用一阵子的,更何况还有很多免费的模型,例如: THUDM/GLM-4-9B-0414
、Qwen/Qwen3-8B
等
注册地址
https://cloud.siliconflow.cn/i/NkUiXVhQ
config
中准备两个文件,分别是 crontab-docker
和 rss-config.js
crontab-docker
用于定时执行更新脚本,实现自动化更新。
下面👇的示例设置,表示每 3
小时运行一次
# Schedule the update and serve script to run every 3 hours
0 */3 * * * /app/scripts/update_and_serve.sh >> /proc/1/fd/1 2>&1
rss-config.js
用于定义和管理所有的 RSS
源及相关配置,是数据抓取和展示的基础配置文件
你可以根据下面👇的示例修改,但是一定要记得,保存时采用 UTF-8
编码格式
// RSS源接口
// name: 信息源名称
// url: RSS URL地址
// category: 分类名称
/**
* @typedef {object} RssSource
* @property {string} name - 信息源名称
* @property {string} url - RSS URL地址
* @property {string} category - 分类名称
*/
// 默认配置
exportconst config = {
sources: [
{
name: "Simon Willison's Weblog",
url: "https://simonwillison.net/atom/everything/",
category: "技术博客",
},
{
name: "老苏的博客",
url: "https://laosu.tech/atom.xml",
category: "技术博客",
},
{
name: "阮一峰的网络日志",
url: "https://feeds.feedburner.com/ruanyifeng",
category: "技术博客",
},
{
name: "少数派",
url: "https://sspai.com/feed",
category: "科技资讯",
},
{
name: "小众软件",
url: "https://feeds.appinn.com/appinns/",
category: "科技资讯",
},
],
maxItemsPerFeed: 30,
dataPath: "./data",
}
exportconst defaultSource = config.sources[0]
/**
* @param {string} url
* @returns {RssSource | undefined}
*/
exportfunction findSourceByUrl(url) {
return config.sources.find((source) => source.url === url)
}
exportfunction getSourcesByCategory() {
return config.sources.reduce((acc, source) => {
if (!acc[source.category]) {
acc[source.category] = []
}
acc[source.category].push(source)
return acc
}, {})
}
docker/feedme/env.txt | /app/.env | RSS 源 |
docker/feedme/data | /app/data | RSS 源的数据文件,保存了最新的 RSS 源爬取和解析后的数据(比如文章列表、源信息等) |
docker/feedme/config | /app/config | RSS 源 |
第一项 env.txt
是文件映射,后两项是文件夹映射
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用
netstat -tunlp | grep 端口号
3220 | 3000 |
如果你熟悉命令行,可能用 docker cli
更快捷
# 新建文件夹 feedme 和 子目录
mkdir -p /volume1/docker/feedme/{data,config}
# 进入 feedme 目录
cd /volume1/docker/feedme
# 将 env.txt 放入根目录
# 将 crontab-docker 和 rss-config.js 放入 config 目录
# 运行容器
docker run -d \
--restart unless-stopped \
--name feedme \
-p 3220:3000 \
-v $(pwd)/env.txt:/app/.env \
-v $(pwd)/config:/app/config \
-v $(pwd)/data:/app/data \
wbsu2003/feedme
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
version: '3'
services:
feedme:
image:wbsu2003/feedme
container_name:feedme
restart:unless-stopped
ports:
-3220:3000
volumes:
-./env.txt:/app/.env
-./config:/app/config
-./data:/app/data
然后执行下面的命令
# 新建文件夹 feedme 和 子目录
mkdir -p /volume1/docker/feedme/{data,config}
# 进入 feedme 目录
cd /volume1/docker/feedme
# 将 env.txt 放入根目录
# 将 crontab-docker 和 rss-config.js 放入 config 目录
# 一键启动
docker-compose up -d
容器启动后,FeedMe
会根据我们在 rss-config.js
中设定的源进行数据抓取,源越多,花费的时间也越长,当然也和网络有很大的关系
当你在 data
目录中,看到和源数量相同的 json
文件时,就可以开始访问了
在浏览器中输入 http://群晖IP:3220
就能看到主界面
可以切换源
对于中文来说,摘要的用途不大,顶多也就是概括总结
切换到原文,你会发现,对英文还是很有用的
当然这只是因为老苏的英文太菜了😋
按照 crontab-docker
的设定,数据是定时更新的,但如果需要强制更新,可以执行下面的命令
# 更新 RSS 数据
docker exec -it feedme /app/scripts/update_and_serve.sh
日志中会看到变化
Seanium/FeedMe:AI 驱动的 RSS 阅读器,可部署到 GitHub Pages 或使用 Docker --- Seanium/FeedMe: AI-powered RSS reader, deployable to GitHub Pages or with Docker | 用 AI 重新定义你的 RSS 阅读体验,轻松部署到 GitHub Pages / Docker
地址:https://github.com/Seanium/feedmeFeedMe
地址:https://feedme.icu/
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-06-24
DeepSeek写材料:《上半年工作总结》提示词
2025-06-23
江苏广电总台的AI Hub智能工具平台:开启媒体融合新时代
2025-06-23
做AI Agent 智能体要怎么选方向和题材
2025-06-23
Obsidian 完全入门:从下载安装到高效笔记组织(新手保姆级教程)
2025-06-23
AI时代不焦虑:成为AI沟通高手看这几份资料就够了(落地篇)
2025-06-23
如何让你的网站内容更好被AI收录和推荐?(技术篇)
2025-06-21
AI时代,从“数据可视化”到“数据可视听化”
2025-06-21
Automa-RPA实现京东商品自动搜索
2025-04-05
2025-04-05
2025-04-14
2025-04-13
2025-05-22
2025-03-30
2025-04-29
2025-05-24
2025-04-13
2025-04-21