项目介绍:HN Summary
HN Summary 是一个开源机器人项目,旨在为 Hacker News 上的热门故事提供简洁明了的摘要,并在 Telegram 频道上发布这些摘要。这个机器人为喜欢 Hacker News 的用户提供了一种快捷的方式来获取最新最突出的新闻内容摘要。
功能概述
HN Summary 通过 Hacker News API 的 /topstories.json
端点,自动监测新发布的故事。一旦出现新故事,它会利用当前先进的语言模型 OpenAI GPT-3.5-turbo 对其进行摘要。然后,将故事的标题、简短的摘要以及其链接发送到 Telegram 的 hn_summary 频道中。
项目的初衷是展示当前大型语言模型的能力,同时提供一个平台来探索其他语言模型的潜力,比如语义搜索能力等。
使用方式
用户可以通过加入 Telegram 频道 来实时查看这个机器人的操作,享受快速获取新闻摘要的便利。此外,news.jiggy.ai 上也可以找到当前热门 Hacker News 文章的摘要。
如果发现不准确的摘要,用户可以在 Telegram 频道中通过👎符号反馈,从而帮助改进机器人性能。同时,项目也鼓励开发者通过提交 PR/issue 来参与代码的改进,对于任何反馈也可以通过 Telegram 或 Twitter 上的 @wskish 联系项目负责人。
项目局限性
尽管 HN Summary 使用了先进的语言模型,但这些模型有时可能会产生错误的内容或在权威语气下捏造事实。此外,项目中用于从 HTML 中提取文本的代码还很基础,容易出现错误。尤其是一些拥有付费墙的网站或复杂页面,这类问题更加明显。目前项目通过提示工程来优化这一点,但仍可能会有错误出现。
对于非 PDF 和 HTML 的链接,目前项目是忽略处理的。同时,对于像 Reddit 和 Twitter 这样的商业链接,文本提取功能不稳定,常会产生不准确的摘要。
因为 Telegram 消息有 4000 字节的限制,长响应会被截断以符合规格。
主要依赖
为了正常运行,该项目需要几个主要依赖的配置:
OpenAI
- 需要配置 OpenAI API 密钥,以便访问语言模型。
PostgresQL
- 用于跟踪已处理过的新闻故事及其信息。
HNSUM_POSTGRES_HOST
:数据库的 FQDNHNSUM_POSTGRES_USER
:数据库用户名HNSUM_POSTGRES_PASS
:数据库密码
Telegram
- 需要配置机器人的 Telegram API 令牌和频道 ID,以便将摘要发送到指定的 Telegram 聊天频道。
HNSUM_TELEGRAM_API_TOKEN
:Telegram API 令牌HNSUM_TELEGRAM_CHANNEL_ID
:Telegram 频道 ID
通过 HN Summary 项目,用户可以轻松获取 Hacker News 的精华内容,同时为进一步探索语言模型的潜力提供了一个开源的平台。