惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
CERT Recently Published Vulnerability Notes
U
Unit 42
T
The Blog of Author Tim Ferriss
H
Hackread – Cybersecurity News, Data Breaches, AI and More
B
Blog RSS Feed
Microsoft Azure Blog
Microsoft Azure Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
S
Securelist
L
Lohrmann on Cybersecurity
Blog — PlanetScale
Blog — PlanetScale
Recorded Future
Recorded Future
D
DataBreaches.Net
Spread Privacy
Spread Privacy
T
Threat Research - Cisco Blogs
I
Intezer
P
Palo Alto Networks Blog
Simon Willison's Weblog
Simon Willison's Weblog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
I
InfoQ
宝玉的分享
宝玉的分享
Security Latest
Security Latest
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Threatpost
Cisco Talos Blog
Cisco Talos Blog
P
Proofpoint News Feed
博客园 - 司徒正美
H
Hacker News: Front Page
Y
Y Combinator Blog
爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
NISL@THU
NISL@THU
月光博客
月光博客
有赞技术团队
有赞技术团队
Cloudbric
Cloudbric
酷 壳 – CoolShell
酷 壳 – CoolShell
G
Google Developers Blog
A
Arctic Wolf
博客园 - 【当耐特】
W
WeLiveSecurity
V
Visual Studio Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
V
V2EX
C
Cyber Attacks, Cyber Crime and Cyber Security
S
SegmentFault 最新的问题
The GitHub Blog
The GitHub Blog
The Cloudflare Blog
Stack Overflow Blog
Stack Overflow Blog

WSH

凑数日子 2026年,大概将会是最后一个人口保持在14亿以上的年份 感谢之人 数字经济中的注意力交易 突然的噩耗 一株洋瓜藤 再见到姑妈 港澳掠影 Miniflux 中文搜索能力增强 慢慢吹~~~轻轻送~~~ 房子梦 探索云南-大理 证书过期导致的错误 过年被追问工资 在秋天开始 水里的鱼 斩断联系1 云南壮族婚恋 我有一颗乳牙 世界的底色是争,抢,偷 无题4 无题3 人来人往 AI见闻 无题2 滇池掠影 WebGIS 三维空间分析之参考超图实现的天际线分析 我原来是个同步单线程 往事如烟1 净月潭之行 一万次悲伤 开源丑闻的碎碎念 提高开发幸福感所做的举措之构建前端基础设施 浏览器标签页进程引发的性能问题 山的那边 想回到过去去去去去去去去去去去去~ WebGIS开发之glsl支持 WebGIS三维空间分析之坡度计算 WebGIS 三维分析之阴影率分析 幸福(或我的女儿叫波兰) 最后一课 Markdown解析高亮及Mermaid 上海掠影 Cesium/QGIS加载图新地球LRC自定义图层 端午粽子 如何清晰地写作 清明扫墓 自编写,自用的开源工具 饮食 AI在GIS领域的实践之QGIS-MCP 燕南飞 WebGIS 三维空间分析之剖面线分析 WebGIS三维开发中的面积量测 WebGIS空间分析之坡向分析的实现 收藏自由-新的书签工具 月夜杂谈 花海,指弹版 三维之Cesium分屏显示 请验证您是真人 GIS数据转换——从点到栅格 自定义「ONE · 一个」订阅源 西湖美人峰徒步 五一青山湖骑行 将chatGPT集成到微信机器人 动手更换旧手机——google pixel3的电池 Vue组件检测无效属性 ArcGIS复杂插件处理 两件关于博客网站变更的事情 Vue开发个人守则 账户注销后遗症 《纳瓦尔宝典 财富与幸福》前两章的一些摘录 听一首黄歌—Yellow 坏事总是成双 出差消小记 cesium-控高分析 当你孤单你会想起谁 穿越城市-青山湖 Harry Browne关于个人金融安全17条黄金守则—财富之道 批量裁剪矢量数据的几种途径 小而美的软件 想回到过去 热!热!热! 那么近,又那么远——遥望 为什么win笔记本触摸板没有mac好用呢 一只猫 二月份的检讨 自定义Cesium缩放控件 线段简化的几种算法 今天看球了吗? HDF转为GeoTIFF QGIS插件编写 乐高风格地图 基于Python的遥感可视化记录 使用Python提取遥感影像中的土壤线 接触pandas QQ音乐评论可视化 拆分-应用-联合 阳光打在我身上 淘宝商品信息可视化
给开源RSS服务应用Miniflux添加「标题翻译」
WSH · 2024-05-15 · via WSH

目录

    • 1.前言
    • 2.实现效果
    • 3.如何使用
      • 3.1 添加配置
      • 3.2 管理翻译

[TOC]

1.前言

Miniflux是我目前在用的一个开源RSS服务应用,前几日我提了一个issue,询问是否可以添加翻译标题的功能,因为我订阅了很多英文feed,但是我的英文不太好,词汇量不够,无法做到随便瞟一眼就能准确获取标题所传达的信息,需要停下来细看,有时碰到陌生单词还要借助翻译软件才行,这不利于快速获取有效信息。

阅读本来就是需要时间,为什么不停下来细看呢?原因是这样的,我平时获取信息大概要经历如下步骤,Miniflux刚好位于第一,二步骤——查找和过滤,现在是信息爆炸的时代,面对每日涌来的浩如烟海的信息,为了能获取多足够多,有价值的信息,就需要一个简单的方法,将可能感兴趣的信息过滤出来,而将不感兴趣的信息拒之脑门外。RSS里每一个feed消息,一般包含标题(title)和简介(description),如何判断是否感兴趣,通过阅读上述两个字段,就能很粗暴的作出决定,但是存在一些feed,简介即是正文信息,内容很长,所以两个提供判断条件的字段就只剩下标题一个(该过滤的前提是没有标题党)。

flowchart TD
查找 --> b{过滤}
b --> c[归集]
c --> d[阅读]
d --> e{过滤}
e --> f[存档]
f --> g[消化吸收]
g --> h[总结/输出/应用]

另一个可选的过滤方法是,Miniflux对于每一个feed可以单独设置【阻止规则】,用来过滤,比如设置关键字“震惊”,如果该feed发布的消息的标题、网址、标签包含上述关键字就会被忽略,大部分RSS在线服务商,比如Feedly和Inoreader,过滤属于高级功能,需要付费且价格不菲,这也是我转向Miniflux的原因。这很有效,但是仅对已经被标注过的某一方面/类型的信息起作用,你总不能将所有不感兴趣的信息标注出来吧,所以呢再通过标题判断就很有必要了。

2.实现效果

可能「翻译标题」的需求太小众,issue没有引起足够多的关注,只有一位热心网友评论推荐了RSS翻译器,我阅读后发现确实满足需求,但需要部署外部独立的翻译服务,然后转发feed到Miniflux,觉得这个方法使得整个翻译流程复杂化了,最好是将其集成到Miniflux里,作为一个内建的功能。

于是我fork官方仓库,花了些时间将该功能实现,依然使用OpenAI公司的ChatGPT来完成翻译(类似实验性的功能,目前还没有合并到上游仓库)。

下面是功能截图。

image-20240516030056095

网页显示效果,左边原文 | 右边译文

IMG_2212

IOS Reeder效果

3.如何使用

3.1 添加配置

在启动配置文件里,增加如下几个配置项

CHATGPTAPI=  
CHATGPTKEY=  
CHATGPTMODEL=gpt-3.5-turbo  
TRANSLATEPROMPT=你是一个翻译助手,需要将我的话准确地翻译成中文

说明:

  • CHATGPTAPI:chatgpt的接口,可以使用第三方,但是必须兼容OpenAI

  • CHATGPTKEY:访问密钥

  • CHATGPTMODEL:模型,默认gpt-3.5-turbo

  • TRANSLATEPROMPT:翻译提示,需要成翻译哪门语言,就在这里定义文本描述

3.2 管理翻译

可在应用web页面管理开启和关闭翻译。

image-20240516030544555

新增feed页,勾选「翻译标题」将添加并翻译标题

image-20240516030347587

feed编辑页,可在此控制是否「翻译标题」

我已经将应用编译成可执行文件并发布,可以在这里找到,另外如果你有更好的解决方案,欢迎让我知道。

---更新---

Miniflux的开发真是太活跃,因为我增加翻译的修改没有合并到上游,导致每次合并上游新版本的时候都需要手动修改冲突,太烦人了,于是我便将翻译功能剥离出来,变成一个独立的服务。本来想直接使用之前提到的Rss-Translator,但是该项目是基于Python语言的Django框架,我不是很熟悉,而且Python开销有点大,我的小服务器吃不消,遂作罢。

现在这个小翻译服务也已经开源,感兴趣的可以先看看demo,用户名demo,密码:demo1234