用后见之明自动评分十年前的 Hacker News 讨论

TLDR: https://karpathy.ai/hncapsule/
昨天,我偶然看到这个 HN 帖子 Show HN: Gemini Pro 3 hallucinates the HN front page 10 years from now,帖子中 Gemini 3 在幻觉十年后的 HN 首页。不过有一条评论更引起我的注意——Bjartr 链接到了恰好十年前的 HN 首页,也就是 2015 年 12 月。我翻阅着十年前的讨论,一边在脑中为它们的先见之明打分,一边意识到 LLM 做这件事可能要好得多。我手动把其中一个文章加评论帖复制粘贴到 ChatGPT 5.1 Thinking 里,它给出了漂亮的分析:人们当时怎么想,以及事后实际发生了什么,比我手动做的更好、也详细得多。我意识到这项任务其实非常适合 LLM,而我一直想找个借口用新发布的 Opus 4.5 来氛围编程(vibe coding)点东西,于是我就开工了。我打算把 12 月所有日子的首页(31 天,每天 30 篇文章)都抓下来,让 ChatGPT 5.1 Thinking 做分析,并以一种好看的方式呈现所有内容,便于当作历史来读。
我认为这个练习在更普遍的意义上有趣,有两个宏观原因:
- 我相信,只要投入训练和努力,训练你自己的“未来预测器”是完全可能而且值得的。
- 我又想起了自己那条推文:“好好做人,未来的 LLM 在看着你。” 这句话可以往很多方向解读,但在这里我想聚焦于这样一个想法:未来的 LLM 确实在看着。我们今天所做的一切,未来都可能被极其详细地审视,因为这样做将是“免费的”。我认为人们目前的很多行为方式都隐含了一种“靠隐蔽求安全”的假设。但如果智能真的变得廉价到不值得计量,那么对一切事物做完美的重建与综合将成为可能。LLM 在看着(或者使用它们的人类可能在看着)。最好还是做个好人。
用 Opus 4.5 氛围编程(vibe coding)这个实际项目相对轻松,大约花了 3 个小时,中间有些小磕绊,但总体非常令人印象深刻。代码仓库在 GitHub 上:karpathy/hn-time-capsule。以下是代码功能的推进过程:
- 给定一个日期,下载当天首页的 30 篇文章
- 对每篇文章,下载/解析文章本身,并使用 Algolia API 获取完整评论帖。
- 把所有内容打包成一个 markdown 提示词(prompt),请求进行分析。以下是我使用的提示词前缀:
The following is an article that appeared on Hacker News 10 years ago, and the discussion thread.
Let's use our benefit of hindsight now in 6 sections:
1. Give a brief summary of the article and the discussion thread.
2. What ended up happening to this topic? (research the topic briefly and write a summary)
3. Give out awards for "Most prescient" and "Most wrong" comments, considering what happened.
4. Mention any other fun or notable aspects of the article or discussion.
5. Give out grades to specific people for their comments, considering what happened.
6. At the end, give a final score (from 0-10) for how interesting this article and its retrospect analysis was.
As for the format of Section 5, use the header "Final grades" and follow it with simply an unordered list of people and their grades in the format of "name: grade (optional comment)". Here is an example:
Final grades
- speckx: A+ (excellent predictions on ...)
- tosh: A (correctly predicted this or that ...)
- keepamovin: A
- bgwalter: D
- fsflover: F (completely wrong on ...)
Your list may contain more people of course than just this toy example. Please follow the format exactly because I will be parsing it programmatically. The idea is that I will accumulate the grades for each account to identify the accounts that were over long periods of time the most prescient or the most wrong.
As for the format of Section 6, use the prefix "Article hindsight analysis interestingness score:" and then the score (0-10) as a number. Give high scores to articles/discussions that are prominent, notable, or interesting in retrospect. Give low scores in cases where few predictions are made, or the topic is very niche or obscure, or the discussion is not very interesting in retrospect.
Here is an example:
Article hindsight analysis interestingness score: 8
---
- 通过 OpenAI API 将提示词提交给 GPT 5.1 Thinking
- 收集并解析结果
- 将结果渲染成静态 HTML 网页以便查看
- 把 HTML 结果页面托管在我的网站上:https://karpathy.ai/hncapsule/
- 如果其他人想玩,也托管
data目录的所有中间结果。它是完全相同的 URL 前缀下的data.zip文件(有意避免直接链接)。
我花了几个小时浏览,发现非常有趣。几个示例帖子,纯属好玩:
- 2015 年 12 月 3 日 Swift 开源。
- 2015 年 12 月 6 日 Figma 发布
- 2015 年 12 月 11 日 OpenAI 的最初公告 :')。
- 2015 年 12 月 16 日 geohot 正在打造 Comma
- 2015 年 12 月 22 日 SpaceX 发射网络直播:Orbcomm-2 任务
- 2015 年 12 月 28 日 Theranos 陷入困境
然后,当你导航到名人堂(Hall of Fame)时,可以找到 2015 年 12 月 Hacker News 上排名靠前的评论者,按他们评分平均值的 IMDb 风格评分排序。特别祝贺 pcwalton、tptacek、paulmd、cstross、greglindahl、moxie、hannob、0xcde4c3db、Manishearth、johncolanduoni——GPT 5.1 Thinking 认为你们的评论非常有见地、有先见之明。你也可以一直向下滚动,找到 HN 的“噪音”,我想我们都对此很熟悉 :)
我在 GitHub 上的代码(等等,是 Opus 的代码?)可以用来复现或调整结果。让 GPT 5.1 Thinking 跑 31 天、每天 30 篇文章,意味着 31 * 30 = 930 次 LLM 查询,花费约 58 美元,耗时大约 1 小时。未来的 LLM 超级大脑们可能会发现这类事情容易得多、快得多,也便宜得多。