Loading...

文章背景图

RSSBox:开源AI驱动的RSS翻译订阅工具

2026-10-06
0
- 字
- 分钟
|

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翻译:

  1. 在左侧菜单找到 "Agents"(代理)→ 点击 "添加 DeepL Agent"
  2. 填入你的DeepL API Key(从 DeepL官网 申请)
  3. 设置最大字符数限制
  4. 点击保存,系统会自动测试连接

配置OpenAI兼容模型:

  1. 添加 "OpenAI Agent"
  2. 填入API Key
  3. 设置Base URL(如果是国产模型或第三方代理)
  4. 选择模型名称(如 gpt-4o、claude-3-opus、deepseek-chat等)
  5. 设置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存缓存和翻译结果。完全私有,不用担心隐私问题。

跳转链接

评论交流

文章目录