Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

增加Feed翻译功能 #6696

Open
yefoenix opened this issue Jan 14, 2021 · 10 comments
Open

增加Feed翻译功能 #6696

yefoenix opened this issue Jan 14, 2021 · 10 comments
Labels
core enhancement 💵 Funded on Issuehunt This issue has been funded on Issuehunt

Comments

@yefoenix
Copy link
Contributor

yefoenix commented Jan 14, 2021

Issuehunt badges

这是一个什么样的功能?

将输出RSS Feed 的 Item title、content 翻译成指定语言

这个功能可以解决什么问题?

方便阅读更多非熟练语言Feed

额外描述

@8430177 使用两个 npm 包 rss-parser 和 translation-google 实现了该功能,详见其博客文章, 可考虑经原作者同意后将该方案整合进入,通过一个(或一组)通用参数来指定是否翻译、源语言与目标语言分别是什么。


IssueHunt Summary

Backers (Total: $3.00)

Become a backer now!

Or submit a pull request to get the deposits!

Tips

@github-actions
Copy link
Contributor

👍 感谢提交该 Issue,请确保仔细阅读 Issue 模板RSS 提案模板Feature 提案模板 以便于测试。不符合模板将导致 Issue 被直接关闭。

👍 Thanks for the issue, please follow the Issue template, RSS proposal template or Feature proposal template. Otherwise the issue will be closed.

@issuehunt-oss
Copy link

issuehunt-oss bot commented Jan 27, 2021

@yefoenix has funded $3.00 to this issue.


@issuehunt-oss issuehunt-oss bot added the 💵 Funded on Issuehunt This issue has been funded on Issuehunt label Jan 27, 2021
@prnake
Copy link
Contributor

prnake commented Nov 5, 2022

我目前测试发现引入翻译的成本太高,与翻译接口的通讯延迟一般大于10s,在现有缓存策略也会直接超时

@toyo2333
Copy link

支持且仅限于在自部署的rsshub上实现RSS标题翻译,方便高效阅读英文媒体新闻订阅源

支持用户填写自己的Openai或DeepL的apikey,最好是都支持。(两者翻译各有特色和擅长的领域)
仅翻译标题就可以快速进行信息筛选,达到最高的阅读效率,也能节省token,全文内容目前有很多插件可以支持不需要rsshub翻译
可以在docker的环境变量里填写apiKey,然后以通用参数的方式支持哪个feed翻译、用哪种api来进行翻译(这个也可以放在环境变量里)
openai的prompt可以参考“沉浸式翻译插件”里的写法直接套用。
可以参考这个产品:https://www.rsstranslator.com/

这个功能可以解决什么问题?
比如经济学人英文版、彭博社等新闻源很好,但feed提供量巨大,大量的英文标题里很难筛选出哪些是自己需要的。提供翻译功能后:

可以快速找到自己感兴趣的内容,从而进一步进行阅读(不感兴趣的,就直接“标记已读”)
需要进一步阅读的,用户可以自己再去使用其他成熟的bypass插件或者翻译插件进行全文翻译阅读
为什么不想使用第三方的https://www.rsstranslator.com/ 这种,因为和rsshub自部署的初衷一样,都希望自己完全掌控管理自己的信息和内容渠道,保护隐私。

@toyo2333
Copy link

经过我长时间测试对比,DeepL在英文新闻标题的直译方面,从准确性和逻辑性方面都好于OpenAI GTP3.5

希望两者都提供。一个用于主力,一个用于补充。

@toyo2333
Copy link

toyo2333 commented Oct 7, 2023

再次推荐DeepL,使用DeepL的free版本api,新闻的翻译效果已经非常非常好了。

@toyo2333
Copy link

来问问进度,大佬辛苦了!

@Colin-XKL
Copy link
Contributor

对 RSS 进行翻译主要麻烦的点我觉得在于 XML 结构的处理,feed 的内容基本都是通过 HTML提供的,对于复杂一些的结构,如果只提取叶子节点的文本翻译的话,没有上下文信息,翻译结果会很糟糕;如果是直接将 HTML进行整体翻译,问题在于不必要的信息会比较多(比如大量内嵌的 css,js 等),速度会比较慢,也会消耗大量翻译后端的 token,而且很多翻译后端不支持对 HTML 结构进行翻译。

关于这个功能我之前有进行过尝试,写了一个 demo对 feed 进行标题和全文翻译,有兴趣可以关注下,https://github.com/Colin-XKL/rss-feed-translator

目前对接了阿里云和 DeepL,支持自部署,自行选择翻译后端,可以试用下看是否满足你的使用场景

@toyo2333
Copy link

择翻译后端,可以试用下看是否满足你的

谢谢你的回复。我这几天通过自己的办法解决了。选用的是这个项目:https://github.com/rcy1314/Rss-Translation

这个项目的逻辑是:
1、配置要处理的feed地址,然后用python的库处理,并进行标题和描述的翻译,重装feed的xml文件
2、用github的action将其自动执行,并将文件自动同步发布到项目的github page下供外部使用

我自己修改了代码,支持了deepL翻译和仅标题翻译。使用了几天了,没有任何问题。简单好用。

另外,实际上,我自己这个需求的出发点是为了”提高信息筛选效率“,即,每天大几十条英文feed标题,我只需要粗略过滤下,就知道那些需要进一步阅读,这个时候再进行打开网页用翻译插件做双语全文翻译。所以,标题的翻译基于原始意思即可,不需要上下文,直译都满足需求了。

再这个基础上,我目前正在尝试用ai做一些自动分析筛选,比如列表只保留:和加密货币相关的新闻、或者得到一份只和China相关的新闻。

未来希望能实现,通过ai来分析新闻权重。比如某个新闻,在不同媒体都集中出现了。那么就是重大新闻(这种功能在feedly里是付费功能)

最后,提供rss相关工具本身不就是为了提高信息获取效率么?我认为这些能力应该是工具本身的愿景,而不要仅仅当作一个翻译功能来定位这件事。

@prnake
Copy link
Contributor

prnake commented Nov 25, 2023

择翻译后端,可以试用下看是否满足你的

谢谢你的回复。我这几天通过自己的办法解决了。选用的是这个项目:https://github.com/rcy1314/Rss-Translation

这个项目的逻辑是: 1、配置要处理的feed地址,然后用python的库处理,并进行标题和描述的翻译,重装feed的xml文件 2、用github的action将其自动执行,并将文件自动同步发布到项目的github page下供外部使用

我自己修改了代码,支持了deepL翻译和仅标题翻译。使用了几天了,没有任何问题。简单好用。

另外,实际上,我自己这个需求的出发点是为了”提高信息筛选效率“,即,每天大几十条英文feed标题,我只需要粗略过滤下,就知道那些需要进一步阅读,这个时候再进行打开网页用翻译插件做双语全文翻译。所以,标题的翻译基于原始意思即可,不需要上下文,直译都满足需求了。

再这个基础上,我目前正在尝试用ai做一些自动分析筛选,比如列表只保留:和加密货币相关的新闻、或者得到一份只和China相关的新闻。

未来希望能实现,通过ai来分析新闻权重。比如某个新闻,在不同媒体都集中出现了。那么就是重大新闻(这种功能在feedly里是付费功能)

最后,提供rss相关工具本身不就是为了提高信息获取效率么?我认为这些能力应该是工具本身的愿景,而不要仅仅当作一个翻译功能来定位这件事。

我也推荐用这个方案,rsshub 主要提供网页解析的能力,很多地方是无状态的,加入翻译功能太重了。

像翻译,AI总结这种对于每一条新闻只需要做一次的操作,由于 RSSHub 没有持久数据库记录历史,比较难通过 redis 避免重复解析。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core enhancement 💵 Funded on Issuehunt This issue has been funded on Issuehunt
Projects
None yet
Development

No branches or pull requests

5 participants