RSSBox:开源AI驱动的RSS翻译订阅工具安装与使用指南
每天想读英文科技博客、海外新闻、学术论文,但语言障碍让你望而却步?RSSBox(原RSS-Translator)是一款开源自部署的RSS翻译增强工具,支持DeepL和OpenAI兼容模型,自动翻译RSS标题和内容、AI总结文章、双语对照显示,让你用中文轻松阅读全世界的资讯。
| 项目名称 | RSSBox(原 RSS-Translator) |
|---|---|
| 仓库地址 | https://github.com/versun/RSS-Translator |
| 官方网站 | https://rssbox.app |
| 最新更新时间 | 2026-10-06 |
| 项目定位 | AI驱动的RSS聚合翻译平台,翻译/总结/过滤/聚合一站搞定 |
| 开源协议 | 开源免费(详见仓库LICENSE) |
项目背景
RSS订阅依然是很多深度信息消费者获取资讯的主要方式。通过RSS,你可以订阅几百个博客、新闻站点、播客,在一个阅读器里统一阅读。但问题是——很多优质内容都是英文的。虽然浏览器有网页翻译,但RSS阅读器里的内容还是原文,遇到长文章和专业术语,机翻质量堪忧,阅读体验很差。
RSSBox 就是为了解决这个问题而生。它在你和RSS源之间加了一层智能翻译中间件:先自动抓取原始RSS源,然后调用DeepL或OpenAI兼容的大模型进行翻译,再把翻译好的内容生成一个新的RSS订阅链接,你把这个翻译后的链接订阅到自己的阅读器里就行。整个过程全自动,支持双语对照显示,还能AI生成内容总结,让你快速浏览全文要点。
项目从最初的RSS-Translator发展到现在的RSSBox,功能已经非常完善:支持多种翻译引擎自由切换、关键词和AI智能过滤、标签分组聚合、每日/每周摘要生成、全文提取、Token用量统计。它采用Django + SQLite + Redis架构,通过Docker一键部署,默认管理员账号开箱即用,是个人搭建私人翻译RSS服务的最佳选择。
核心特性
- 🌐 多引擎翻译支持 — 支持DeepL、OpenAI兼容接口(GPT/Claude/国产大模型)、LibreTranslate等多种翻译引擎,每个RSS源可以指定不同的翻译引擎。
- 📝 双语对照显示 — 支持仅译文、译文在前原文在后、原文在前译文在后三种模式,对照阅读更准确。
- 🤖 AI内容总结 — 不仅翻译,还能用AI生成文章摘要,帮你快速判断文章是否值得深读。
- 🔍 智能过滤 — 支持关键词过滤和AI智能过滤,自动过滤掉不感兴趣的内容,提升信息获取效率。
- 🏷️ 标签聚合 — 可以给多个RSS源打标签,按标签合并成一个统一订阅源,还能应用过滤器。
- 📊 Token用量统计 — 实时查看每个源消耗了多少Token/字符,精准控制翻译成本。
- 💾 翻译缓存 — 所有翻译结果都缓存起来,重复内容不重复翻译,大幅节省API费用。
- 📰 全文提取 — 支持从链接中提取完整文章内容进行翻译,而不是只翻译RSS摘要。
环境要求
| 项目 | 要求 |
|---|---|
| Docker | Docker 20.10+ 和 Docker Compose(推荐Docker部署) |
| 内存 | 最低512MB,建议1GB以上 |
| 磁盘 | 至少2GB可用空间(含Redis和数据库) |
| 翻译API Key | DeepL API Key 或 OpenAI兼容API Key(至少一个) |
| 网络 | 服务器能访问RSS源和翻译API |
详细部署步骤
方式一:Docker Compose部署(推荐)
这是最简单的部署方式,一条命令启动全部服务。
第一步:安装Docker和Docker Compose
# Ubuntu/Debian 安装Docker
curl -fsSL https://get.docker.com | bash
sudo systemctl enable --now docker
# 验证
docker --version
docker compose version第二步:创建docker-compose.yml
mkdir -p ~/rssbox && cd ~/rssbox
# 创建 docker-compose.yml 文件
cat > docker-compose.yml << 'EOF'
version: '3.8'
services:
rssbox:
image: versun/rssbox:latest
container_name: rssbox
restart: unless-stopped
ports:
- "8000:8000"
volumes:
- ./data:/app/data
depends_on:
- redis
environment:
- DEBUG=0
- ALLOWED_HOSTS=*
redis:
image: redis:7-alpine
container_name: rssbox_redis
restart: unless-stopped
volumes:
- ./redis-data:/data
EOF第三步:启动服务
# 拉取镜像并启动
docker compose up -d
# 查看启动日志
docker compose logs -f rssbox
# 等待初始化完成(首次启动会自动迁移数据库、创建管理员)
# 看到 "Starting Gunicorn" 或 "Uvicorn running on..." 即表示启动成功第四步:访问管理后台
# 打开浏览器访问
http://你的服务器IP:8000/admin/
# 默认管理员账号:
# 用户名:admin
# 密码:rssbox
# ⚠️ 首次登录后请立即修改默认密码!方式二:源码部署(开发者)
第一步:克隆仓库
git clone https://github.com/versun/RSS-Translator.git
cd RSS-Translator第二步:安装uv包管理器(推荐)
# 安装uv(Astral出品的极速Python包管理器)
curl -LsSf https://astral.sh/uv/install.sh | source $HOME/.local/bin/env
# 安装依赖并启动开发服务器
uv run dev第三步:启动生产服务器
# 初始化数据库和管理员账号
uv run python scripts/init.py
# 启动生产服务器(自动选择Gunicorn/Uvicorn)
uv run python scripts/prod_server.py第五步:配置翻译引擎
登录管理后台后,首先需要配置翻译引擎:
配置DeepL翻译:
- 在左侧菜单找到 "Agents"(代理)→ 点击 "添加 DeepL Agent"
- 填入你的DeepL API Key(从 DeepL官网 申请)
- 设置最大字符数限制
- 点击保存,系统会自动测试连接
配置OpenAI兼容模型:
- 添加 "OpenAI Agent"
- 填入API Key
- 设置Base URL(如果是国产模型或第三方代理)
- 选择模型名称(如 gpt-4o、claude-3-opus、deepseek-chat等)
- 设置Rate Limit(每分钟请求数)
第六步:添加RSS源
# 1. 在左侧菜单点击 "Feeds" → "添加 Feed"
# 2. 填入原始RSS链接(如 https://example.com/feed.xml)
# 3. 选择翻译引擎(为这个源指定用哪个引擎)
# 4. 设置目标语言(中文 zh)
# 5. 选择翻译显示模式:
# - 仅译文
# - 译文 || 原文
# - 原文 || 译文
# 6. 设置更新频率(每小时/每6小时/每天等)
# 7. 保存添加完成后,系统会自动在后台抓取和翻译。你可以在Feed列表看到翻译状态和Token消耗。
第七步:订阅翻译后的RSS
每个Feed添加成功后,会生成一个翻译后的订阅链接,格式类似:
http://你的服务器IP:8000/rss/你的feed-slug/
# 把这个链接添加到你的RSS阅读器(如Feedly、Inoreader、NetNewsWire)
# 就能看到翻译后的内容了常见坑与解决办法
问题1:Docker启动后访问不了
检查端口是否被占用,或者防火墙是否开放8000端口:
# 检查端口
netstat -tlnp | grep 8000
# 如果用了防火墙,开放端口
sudo ufw allow 8000/tcp问题2:翻译报错API错误
检查API Key是否正确、额度是否充足、网络是否能访问API服务器。在后台的Agent页面可以手动测试连接。
问题3:翻译很慢
翻译速度取决于RSS源更新频率和文章数量。可以适当降低更新频率,或者关闭全文提取只翻译摘要。Redis缓存开启后,重复内容不会重复翻译。
问题4:默认密码安全风险
默认账号 admin/rssbox 仅用于首次登录测试。部署到公网后请第一时间在后台修改密码,或通过环境变量设置管理员密码。
使用方法示例
后台管理界面
# 登录管理后台
http://你的域名/admin/
# 主要功能菜单:
# - Feeds:管理RSS源
# - Entries:查看已翻译的文章
# - Agents:管理翻译引擎
# - Filters:内容过滤规则
# - Tags:标签聚合
# - Digests:每日/每周摘要设置双语对照模式
# 编辑某个Feed设置
# 找到 "Translation Display" 选项
# 选择:
# - only_translation(仅显示译文)
# - translation_original(译文在前,原文在后)
# - original_translation(原文在前,译文在后)
# 推荐选择 translation_original 双语模式,翻译质量更有保障AI智能过滤
# 1. 创建Filter,选择过滤方式
# - KEYWORD_ONLY:关键词过滤
# - AI_ONLY:AI智能判断是否感兴趣
# 2. 输入过滤提示词(如"只保留AI和编程相关的文章")
# 3. 将Filter关联到Feed
# 4. 不符合的文章会被自动过滤掉标签聚合多个源
# 1. 创建标签(如"技术博客")
# 2. 给相关的Feed都打上这个标签
# 3. 系统会生成一个聚合订阅源:
# http://你的域名/tag/你的标签slug/
# 4. 把这个链接订阅到阅读器,就是所有标签源的汇总常见问题FAQ
Q:RSSBox 完全免费吗?
A:软件本身开源免费自部署。但翻译需要消耗DeepL或OpenAI的API费用,你需要自己承担这部分成本。由于有缓存机制,实际翻译量比直接调用少很多。
Q:支持国产大模型吗?
A:支持。只要是兼容OpenAI接口的模型都可以用,包括DeepSeek、通义千问、智谱GLM、月之暗面等,只需修改Base URL和模型名称即可。
Q:翻译质量怎么样?
A:DeepL翻译质量非常高,适合专业内容。OpenAI类大模型翻译更灵活,还能结合上下文理解。建议使用双语对照模式,遇到关键内容可以对照原文。
Q:可以翻译微信公众号文章吗?
A:只要公众号有RSS输出(比如通过WeRSS等服务),就可以添加到RSSBox进行翻译。
Q:数据存在哪里?
A:所有数据都在你自己的服务器上——SQLite数据库存文章内容,Redis存缓存和翻译结果。完全私有,不用担心隐私问题。
跳转链接
- 🔥 GitHub仓库:https://github.com/versun/RSS-Translator
- 📖 官方文档:https://rssbox.app
- 🌐 在线Demo:在线演示
- 🐳 Docker镜像:versun/rssbox
- 💬 Telegram交流群:@rssboxapp
- ❤️ 赞助项目:爱发电