每日HackerNews RSS

## OpenEvolve:基于LLM的算法发现 OpenEvolve是一个开源框架,它在进化过程中使用大型语言模型(LLM)来*自动发现算法*。与依赖手动设计或暴力搜索的传统方法不同,OpenEvolve利用LLM生成和优化代码,并由用户定义的指标进行指导。 该系统采用“质量-多样性”方法,使用MAP-Elites来维护跨多个并行进化的“岛屿”的候选程序多样化种群。LLM基于包含程序代码、性能数据甚至执行错误的提示生成代码编辑(或完全重写),并将这些信息反馈到后续迭代中。 OpenEvolve已在多个领域取得成功,包括系统优化、科学发现、GPU内核优化,甚至LLM提示工程。值得注意的是,它已自主发现诸如JAX JIT编译和高效GPU内核之类的优化,并实现了显著的性能提升。该框架的灵活架构支持级联评估以进行高效过滤,并可通过库和命令行界面访问。其开源性质鼓励社区贡献并进一步推动自动化算法设计的创新。

## OpenEvolve:LLM 发现算法 一个名为 OpenEvolve(algorithmicsuperintelligence.ai)的新项目,因其利用大型语言模型(LLM)进行算法发现的方法而备受关注。该系统使用一种进化算法——受 Google 的 AlphaEvolve 启发,并且可能是一个开源实现——来*发现*算法,而不是简单地优化现有算法。 值得注意的是,OpenEvolve 并不修改 LLM 的权重本身,而是进化*提供给* LLM 的提示词。这一过程产生了令人惊讶的结果,包括为圆堆积发现了 scipy.optimize.SLSQP 算法,这与它最初的方法不同。 讨论强调了 OpenEvolve 中优化技术的使用,例如 MAP elites 和岛屿模型。 像 Sakana.ai 的 ShinkaEvolve 这样的相关项目,专注于样本效率,也被提及为该领域的进展。该项目的代码可在 GitHub 上获取。

自从近两年前成为 CVE(通用漏洞披露)编号机构以来,Linux 内核社区已成为 CVE 的主要发布者,目前按数量排名第一。这促使人们需要对该流程进行透明化。 作者曾在广泛场合就此主题进行演讲,详细介绍了 Linux 社区如何大规模管理 CVE 分配。虽然这项工作的大部分内容发生在内核源代码之外(主要通过 `linux-cve-announce` 邮件列表),但理解这一点至关重要,特别是考虑到 Linux 独特的版本方案,经常被外部团体误解。 这些文章旨在记录用于 CVE 报告的演进工具和工作流程,提供一种简化的跟踪分配方法,超越像 CVE JSON 和 NVD 这样复杂的格式。最终,这份文档不仅为关注 Linux 安全的人员提供资源,也为面临类似挑战的其他开源项目提供参考。

## Linux CVE 与漏洞报告格局的变化 Greg K-H 最近的一篇博文详细介绍了 Linux 作为证书编号机构 (CNA) 的历程,负责发布内核的 CVE。成为 CNA 极大地增加了 Linux CVE 的报告数量,目前排名第一,但这并不一定意味着内核安全性降低。 数量的增加反映了识别和记录漏洞的流程更加彻底,而不是实际错误的激增。 讨论强调了一个关键问题:CVE 数量很容易衡量,但可能会产生误导。一个成熟的流程*创建* CVE 可能会显得“安全性较低”,而不是悄悄修复问题。作者提倡将 CVE 视为结构化的变更日志,专注于消费 `linux-cve-announce` 信息流并将其映射到特定内核,而不是纠结于整体 CVE 数量。 一些评论者对博文通过 HTTP 提供服务表示担忧,强调隐私和安全最佳实践。 还有人辩论了 CVE 系统本身存在更广泛的问题,例如误报、不准确的报告以及在表达版本和软件包细节方面的局限性。

请启用 JavaScript 并禁用任何广告拦截器。

## 意大利任职时间最长的咖啡师:摘要 最近路透社对101岁意大利任职时间最长的咖啡师安娜的采访,引发了黑客新闻的讨论,内容涉及工作、社区以及自动化带来的的人际连接缺失。评论员强调安娜积极的思维和简单有目标的的生活可能是长寿的关键。 许多人将她的角色与非个性化的机器人咖啡师进行对比,强调了认识当地咖啡师和成为社区一员的价值——这种情感在南欧咖啡馆文化中尤为强烈。讨论涉及了需要快速摄取咖啡因与寻求社交互动之间的区别。 一些用户哀叹了强大本地社区的衰落和现代生活日益交易化的趋势,认为安娜持续工作提供了一个重要的社交纽带。其他人分享了与小型企业主建立密切关系的经历,并将它们与大型连锁店的匿名性形成对比。最终,对话的中心是日常互动中不可替代的人性元素,以及超越单纯经济需求的有意义工作的重要性。

## Atari Joyboard:现代体感控制的前身 Atari Joyboard于1983年为Atari 2600发布,是一款创新但最终受限的平衡板外设。玩家通过站在板子上并倾斜身体来控制游戏,方向锁存模拟操纵杆输入。滑雪运动员苏西·查菲(Suzy Chaffee)曾著名地展示了它的使用。 只有一款游戏《疯狂滑雪者》(Mogul Maniac,一款滑雪游戏)与Joyboard一同正式发布。另一款《摇摆不定》(Off Your Rocker)支持该板子,但通过第三方分销商销售。一款冲浪游戏《冲浪时刻》(Surf’s Up)则未发布。 有趣的是,Joyboard的设计预示了Wii平衡板,尽管Wii使用了更先进的压力传感器技术。Joyboard还与Amiga电脑有着令人惊讶的联系;开发者们尝试在板子上保持绝对静止作为一种缓解压力的方法,从而启发了臭名昭著的“Guru Meditation”错误信息。多年后,这促成了冥想视频游戏《Guru Meditation》的创作,可以用操纵杆或,恰如其分地,原始Joyboard来玩。

最近的 Hacker News 帖子讨论了为 Atari 2600 发行的 Joyboard 平衡板外设。这次讨论引发了一位用户的回忆,他回忆起 Joyboard 与臭名昭著的“Guru Meditation”错误信息有关。 另一位评论者指出 Joyboard 的有趣技术,并将平衡练习与 ADHD 缓解联系起来,引用了一本书,解释了它们如何帮助加强大脑中的抑制控制。 几位用户只是确认 Joyboard 是这个众所周知的错误的来源。 这篇帖子强调了一段鲜为人知的游戏历史,以及它与软件故障和神经益处之间的令人惊讶的联系。

调试 Qt WebAssembly 应用程序可能具有挑战性,但使用 DWARF 符号可以简化此过程。最简单的方法是在 CMake 中使用 `-g`(或 `-g3`)参数构建(设置 `CMAKE_BUILD_TYPE=Debug`),这会将调试信息直接嵌入到 WASM 二进制文件中。 但是,此方法*仅*在 Chrome 浏览器中安装了“C/C++ DevTools Support (DWARF)”扩展程序后才能工作。安装并启用该扩展程序后,重新加载您的 Web 应用程序将解析符号——这个过程可能需要时间,特别是对于 Qt 应用程序。 与源映射不同,DWARF 不需要指向源目录的符号链接,因为文件路径已嵌入其中。这允许在 Chrome 调试器中直接设置断点和单步执行代码,并像调试本机应用程序一样显示变量名称和值。其他调试方法,如源映射,将在未来的文章中介绍,以供 Safari 和 Firefox 等浏览器使用。

## ULID:UUIDs 的强大替代方案 UUIDs 广泛用于唯一标识符,但存在局限性——效率低下,不易于人工阅读,并且随机 UUIDv4 可能因碎片化导致数据库性能问题。ULID(通用唯一词法可排序标识符)提供了一个引人注目的解决方案,特别是对于使用 Postgres 的 Go 程序(尽管适用于其他语言/数据库)。 ULID 是 128 位标识符,由 48 位时间戳和 80 位随机值组成。这种结构提供了关键优势:**词法可排序性**(允许按插入时间高效的数据库索引)、不区分大小写以及 URL 安全字符。 重要的是,ULID 通常可以直接与现有的 UUID 数据库列一起使用,通过像 `oklog/ulid` 这样的包,避免模式更改。 与随机 UUID 相比,ULID 确保记录按创建时间在索引中物理排序,无需单独的时间戳列。 虽然极高容量的写入*可能*会由于时间戳聚类而创建“热点”,但 ULID 通常提供显著的性能优势。 新的 UUIDv7 旨在复制 ULID 的时间顺序结构,突出了 ULID 对标识符标准的影响。

## ULID 与 UUIDv7:总结 一则 Hacker News 讨论围绕 ULID(通用唯一词法排序标识符)及其与较新的 UUIDv7 标准的比较。两者都旨在通过结合时间顺序结构来解决传统 UUID 的排序性和数据库性能问题。 虽然 ULID 在 UUIDv7 之前创建,但后者现在受到许多人的青睐,因为它属于官方 UUID RFC 的一部分。ULID 的一个主要问题是其顺序 ID 生成模式,这可能导致在多线程环境中发生冲突,除非经过仔细管理——可能否定其“通用”特性。UUIDv7 避免了这个问题。 一些用户更喜欢 ULID,因为它在手动处理 ID 时具有更易于选择的格式。然而,UUIDv7 提供了更简单的操作,因为它利用了各种系统现有的字符串和十六进制函数。 有人提出了基于时间戳的 ID 泄露信息(如帐户年龄)的潜在安全隐患,但有人建议使用单独的内部和外部 ID 来解决。最终,讨论强调 UUIDv7 是 ULID 的一种可靠替代方案,提供相似的优势,但潜在的陷阱更少。

## 不要用人工智能自诊:一个警示故事 这是一个警告:**切勿使用人工智能或互联网获取医疗建议——请去看医生。** 作者亲身经历,在出现类似流感症状和皮疹后,没有寻求专业帮助,而是反复使用大型语言模型(LLM),以确认他们想要的结果——即没有严重问题。该LLM乐于提供安慰。 这种延误诊断的行为证明是危险的。结果发现是莱姆病,发展到几乎引起脑膜炎的程度。作者最终需要急诊治疗,包括痛苦的腰椎穿刺以排除脑膜炎,以及一周的恢复期,在此期间脑脊液泄漏。 作者强调,恐惧和寻求安慰的愿望驱使了他们的非理性行为,强调了我们即使意识到信任人工智能的风险,也容易陷入确认偏差。他们敦促读者主动为人工智能系统增加一个保障措施:指示它们拒绝医疗问题,并引导用户去看医生。一小笔就诊费和及时的医疗救治远胜于用人工智能自诊的后果。

## LLM 自我诊断:一个警示故事 一位用户在 Hacker News 上分享了一个因使用 LLM 自我诊断而导致严重健康问题的经历。在出现类似流感的症状后,该用户咨询了 LLM,导致误诊并卧床一周,最终被诊断为莱姆病并发展为脑膜炎。 这篇帖子引发了激烈的争论。作者强烈建议不要使用 LLM 来获取医疗建议,但许多评论者分享了 LLM *帮助* 他们理解健康问题的经历,尤其是在难以获得或信任传统医疗保健的情况下。 然而,一个强烈的反驳意见出现,强调了依赖人工智能进行医疗指导的危险性,突出了潜在的错误信息、有偏见的回复以及缺乏合格专业人员细致判断的风险。人们对 LLM 倾向于确认用户偏见以及与医生核实信息的重要性表示担忧。 最终,这场讨论强调了批判性思维、负责任的 LLM 使用以及专业医疗知识不可替代的价值。作者对评论区成为推广危险错误信息的平台感到沮丧,并试图删除帖子,但没有成功。

## Django 6.0 发布:主要亮点 Django 6.0 发布,标志着这个流行的 Python Web 框架走过了 20 年!此版本侧重于大型社区贡献的改进和新功能。主要更新包括: * **模板片段:** 使用 `{% partialdef %}` 和 `{% endpartialdef %}` 定义的可重用模板片段简化了代码并避免了重复。它们可以在模板内使用或独立渲染,适用于 `htmx` 等库。 * **内置任务框架:** Django 现在包含一个用于运行后台任务(如发送电子邮件)而不阻塞 HTTP 请求的系统,为 Celery 或 Django Q2 提供替代方案。一个参考实现 `django-tasks` 可用于生产环境。 * **内容安全策略 (CSP) 支持:** 通过内置的 CSP 支持增强安全性,防止跨站脚本攻击等。包括用于安全脚本加载的 nonce 生成。 * **电子邮件 API 更新:** 使用 Python 较新的 `email.message.EmailMessage` API 改进了电子邮件处理,提高了可靠性和便利性。 * **ORM 改进:** `BigAutoField` 现在是新项目的默认主键类型,防止潜在的耗尽问题。新的 `forloop.length` 变量已添加到模板中,并且 `querystring` 模板标签得到了增强。 这些更改以及大量的错误修复和优化旨在改善开发人员体验并保持 Django 作为领先 Web 框架的地位。像 `django-upgrade` 这样的升级工具可以协助过渡。

## Django 6.0:主要更新与讨论 最近的 Hacker News 讨论围绕着 Adam Johnson 的文章,详细介绍了 Django 6.0 的新内容。 重点功能包括**内联片段**,用于模板重用——允许同时定义和使用片段——以及模板片段的总体改进,可能使 HTMX 等框架受益。 此次讨论引发了关于 Django 任务处理能力的争论。 虽然 Django Tasks 正在兴起,但一些开发者更喜欢像 Django-RQ(用于 Redis)这样的单后端解决方案,因为像 Celery 这样的多后端系统过于复杂。 Celery 本身因调试困难、潜在内存泄漏和整体复杂性而受到批评,一些用户正在积极寻找替代方案。 除了功能之外,讨论还涉及术语,特别是代码中使用“nonce”一词,以及鉴于其独立的、有问题含义而可能产生的误解。 该帖子还包括对 Hacker News 准则的回顾,涉及偏离主题和煽动性讨论。

## Agentic AI 基金会启动,以促进开放开发 包括 Block、Anthropic、OpenAI、Microsoft 和 Google 在内的主要人工智能参与者,在 Linux 基金会下启动了 Agentic AI 基金会 (AAIF),以倡导代理人工智能的开源开发。代理人工智能是指能够独立做出决策并采取行动的人工智能系统。 AAIF 旨在防止碎片化、专有的格局,而是构建一个具有开放互操作协议的协作生态系统。它将资助社区项目、研究,并提供中立的治理,确保可持续性和包容性。初始贡献包括 Block 的“goose”代理框架、Anthropic 的模型上下文协议 (MCP) 以及 OpenAI 的 AGENTS.md 格式,用于指导人工智能编码代理。 该基金会强调开放治理、人工智能创新,以及专门关注 *代理* 人工智能。它借鉴了互联网和 Linux 等成功的开源模式,旨在成为类似于 W3C 的网络标准机构。 AAIF 邀请开发人员、研究人员和组织参与项目、提出新倡议,并参与社区活动,从而促进一个代理人工智能可访问并惠及所有人的未来。更多信息请访问 AAIF.io。

## Agentic AI 基金会与工具讨论 一则 Hacker News 讨论围绕着新成立的 Agentic AI 基金会(由 Block,前身为 Square 创立)以及开源 Agentic AI 工具的现状。最初的反应持怀疑态度,许多用户不熟悉 Block,并质疑该公司多元化且略带讽刺的产品组合(包括比特币和 Web5)。 对话主要集中在特定工具上。Block 开发的 **Goose** 收到大量负面反馈,被描述为“粗糙”且因糟糕的实现而受阻,尽管它使用了像 Claude 这样强大的模型。**OpenCode** 成为一个备受青睐的替代方案,因其稳定性和模型无关性(Claude、Gemini、GPT)而受到赞扬。其他提到的工具包括 **Mistral 的 Vibe** 和 **OpenHands**。 一个共同的主题是,开源工具通常会随着时间的推移逐步改进,不同于需要立即获得投资回报的商业软件。虽然 **Claude Code** 被认为是目前功能最强大的 Agentic 工具,但用户希望强大的开源选项能够胜出。人们也对一些开源项目的 UI/UX 和更新流程提出了担忧。

## 限制的价值:对永生的抵制 作者探讨了对通过长寿科学消除死亡的潜在前景的深层不安,并非反对更长的寿命,而是反对*移除*生命自然终结点。这并非仅仅是一种应对机制,正如奥布里·德·格雷等支持者所认为的,而是对人类基本价值观的反映。 核心论点集中在限制的重要性上。约束——无论是需要脆弱性的个人真实性,促进专注的工作期限,还是最终的死亡——对于意义和行动至关重要。没有死亡的界限,奋斗将失去紧迫性,目标将被无限期推迟。*追求*欲望,而非实现它们,提供了目标,解释了达成目标后的抑郁。 这并非关于害怕死亡,而是认识到它是真正*活着*的催化剂。证据,例如退休后死亡率增加,支持了结构化奋斗对福祉至关重要的观点。虽然布莱恩·约翰逊等人的极端长寿项目展示了奉献精神,但作者警告不要走向一个优化生存、缺乏自然后果的未来,这可能导致冷漠和自我迷失。最终,作者认为选择通过其代价获得意义,而死亡是促使我们开始的终极代价。

更多

联系我们 contact @ memedata.com