每日HackerNews RSS

该项目最初尝试复制Jeff Dean暗示的、用于查询30亿向量的高效向量搜索解决方案。目标是找到约1000个查询向量与30亿个文档向量数据集之间的相似度(点积),这些向量存储为.npy文件。 最初的简单实现速度很慢(查询3000个向量近2秒)。使用NumPy向量化点积计算显著提高了性能至约0.01秒,并进一步使用`np.float32`优化将其降低至约0.0045秒。然而,扩展到300万个向量需要12.8秒,推算到完整30亿个向量将需要约3216分钟,这不切实际。 一个主要障碍出现了:内存不足(OOM)错误。存储30亿个768维的float32向量大约需要8.6 TB的RAM。潜在的解决方案包括使用生成器、批量操作、内存映射或使用Rust/C等语言编写优化代码。 至关重要的是,作者意识到最初的问题陈述缺乏对关键需求(查询模式:单次查询与多次查询、Top-k检索,数据处理:内存中与基于磁盘,硬件限制:GPU、机器规格,可接受的精度权衡:压缩)的明确说明。核心结论是,定义精确的需求通常比实现技术解决方案本身更具挑战性。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 查询30亿向量 (vickiboykis.com) 5点 由 surprisetalk 1小时前 | 隐藏 | 过去 | 收藏 | 讨论 帮助 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请YC | 联系 搜索:

启用 JavaScript 和 Cookie 以继续。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 一个富裕的家庭能改变致命脑部疾病的进程吗? (science.org) 16 分,Snoozus 1小时前 | 隐藏 | 过去 | 收藏 | 1 条评论 帮助 tylermcgraw 22分钟前 [–] 这是罕见疾病的模式,这些疾病对制药公司来说没有利润。 脊髓性肌萎缩症 (sma) 是另一个我想到的例子。回复 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:

## TransAct:构建您自己的机器人舰队管理仪表盘 TransAct 由 Transitive Robotics 开发,是一个开源仪表盘,旨在赋能机器人公司构建定制的舰队管理系统,而无需进行代价高昂的“自建或购买”决策。它既是一个演示,也是一个集成指南和开发者的起点。 主要功能包括**远程遥控**(低延迟视频控制)、**终端**(用于 shell 访问)、**ROS 工具**(用于数据可视化)、**配置管理**和**健康监控**。 用户可以快速在本地部署 TransAct 并将其连接到他们的 Transitive 帐户(在 [https://portal.transitiverobotics.com](https://portal.transitiverobotics.com) 创建)。然后,仪表盘将显示和管理已连接的机器人及其功能。 TransAct 使用 React、Tailwind CSS 和 ShadCn UI 组件库构建,提供可定制且视觉上吸引人的界面。鼓励开发者 fork 仓库,使用他们的品牌进行个性化定制,并利用 Transitive Portal 中的“Embed”功能,为预配置的代码片段量身定制嵌入的功能,以满足他们的特定需求。可通过 Slack 获取支持。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 一个模块化机器人仪表盘 (github.com/transitiverobotics) 4 点赞 by chfritz 1 小时前 | 隐藏 | 过去 | 收藏 | 讨论 帮助 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请YC | 联系 搜索:

我建议向标准库添加一个生成和解析UUID标识符的包,特别是3、4和5版本。我认为包含它的主要原因是,最流行的第三方包(github.com/google/uuid)是每个基于服务器/数据库的Go程序的常用导入,通过快速的Github代码搜索可以证实。 此外: 补充说明一下,Go在标准库中包含UUID支持方面,是特例而非常态。

Hacker News 新闻 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 UUID 包即将加入 Go 标准库 (github.com/golang) 28 分,by soypat 1 小时前 | 隐藏 | 过去 | 收藏 | 1 条评论 帮助 kayson 4 分钟前 [–] 让我觉得奇怪的是,关注点似乎集中在 Google 的包的停滞不前,而 https://github.com/gofrs/uuid 不仅符合较新的标准,而且还在积极维护。回复 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:

## 创新的双刃剑 纵观历史,旨在减轻苦难或实现和平的发明,常常被扭向破坏性的用途。理查德·加特林在1861年认为他的速射枪会*减少*军队数量,从而降低战争的代价。同样,20世纪20、30年代的早期火箭先驱,如奥伯特和VfR,梦想着太空探索,但他们的工作最终被韦尔纳·冯·布劳恩领导下的纳粹军方利用,最终导致了二战中的V-2火箭。 这种模式在其他创新中也得以延续。桑托斯-杜蒙设想飞机用于和平,但它们很快变成了战争工具。阿尔弗雷德·诺贝尔发明炸药,希望其巨大的威力能够*阻止*冲突,但它既推动了建设,也带来了破坏,使他内心备受煎熬。甚至原子弹,源于对纳粹德国的恐惧,也促使像西拉德这样的科学家警告说,一场毁灭性的军备竞赛即将到来,并呼吁进行国际控制——但这些警告不幸被忽视了。 就连AK-47的发明者米哈伊尔·卡拉什尼科夫,也一直在为他的创造所带来的道德影响而苦恼,尽管他本意是为他的国家提供防御,但他仍然质疑自己的罪责。这些故事揭示了一个反复出现的悖论:追求进步可能会无意中释放出具有不可预见且常常是毁灭性后果的力量,凸显了创新、意图和人类冲突之间复杂的关系。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 也许这里有什么规律? (dynomight.net) 5 分,由 surprisetalk 1小时前发布 | 隐藏 | 过去 | 收藏 | 讨论 帮助 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请YC | 联系 搜索:

等待中... muffin-bot 不攻击,适合早期测试。 cleo-bot 更聪明的机器人,但有点过于激进。 clowder-bot 健谈的机器人,每只猫都有不同的角色。游戏中目前最强的机器人。 复制链接 等待朋友连接...

## Yare.io:一款挑战大型语言模型的1v1编程游戏 Yare.io 是一款极简、开源的1v1编程游戏,玩家使用JavaScript编程控制单位进行快速(小于3分钟)的战斗。它是一个出于热情的个人项目,旨在让新手程序员容易上手,同时仍具有很高的技能上限——这是创造者在学习编程时希望存在的东西。 Yare最近经过简化改造,结果却出人意料地对大型语言模型(LLM)来说非常困难。 创造者运营着一个“AI竞技场”(yare.io/ai-arena),展示了当前的模型,例如Gemini 3.1,难以战胜像Clowder这样更简单的机器人,这可能是由于空间推理问题或缺乏相关的训练数据造成的。 这个项目之前曾在Hacker News上分享过(原始帖子中提供了链接),并欢迎社区的反馈。 你可以在GitHub上找到代码:[https://github.com/riesvile/yare](https://github.com/riesvile/yare)。

## LLM 与正确性的错觉:数据库案例研究 最近的实验揭示了一个鲜明对比:在 SQLite 中对 100 行数据进行主键查找耗时 0.09 毫秒,而 LLM 生成的 Rust 重写版本却高达 1,815 毫秒——慢了 20,171 倍。尽管该重写版本可以编译、通过测试并正确处理 SQLite 文件格式,但它在基本操作上却彻底失败。 这并非编码错误,而是 LLM 优先考虑 *合理性* 而非 *正确性* 的体现。这段代码是对数据库的 576,000 行代码的重新实现,*看起来* 像一个数据库,但缺少关键的性能优化。具体来说,它未能识别 `INTEGER PRIMARY KEY` 列,导致进行全表扫描,而不是高效的 B 树搜索。 作者强调了一个更广泛的问题:LLM 擅长生成 *看起来* 可用的代码,但通常缺乏通过多年性能分析和优化获得的细致理解。研究证实了这一点,表明 AI 辅助开发会导致代码复制增加和稳定性降低。 关键要点?LLM 是强大的工具,但需要用户在代码生成 *之前* **定义明确的验收标准** 并严格验证输出。 否则,你可能会构建复杂、看似正确的系统,但实际上存在根本性缺陷。正确性不仅仅是关于通过测试;它还关于可证明的性能和对底层原理的深刻理解。

## LLM 与代码:看似合理,不一定正确 最近在 Hacker News 上的讨论强调了大型语言模型 (LLM) 在编码方面的一个关键局限性:它们生成的是*看似合理*的代码,不一定是*正确*的代码。用户报告称,LLM 倾向于无休止地堆叠解决方案,通过添加更多代码来规避现有问题,而不是解决根本原因。 核心问题在于 LLM 擅长基于训练数据的文本预测,缺乏真正的理解或推理能力。它们可能难以完成需要常识或实际情境的任务,例如更新文档或编写测试。虽然有能力,但通常需要大量的提示和指导才能遵循良好的软件工程实践。 尽管存在这些局限性,一些用户发现 LLM 在加速开发方面很有价值,*如果*与能够审查和完善生成代码的熟练开发人员配合使用。共识是 LLM 是增强而非取代人类程序员的工具。甚至有人建议专注于提示生成“看似合理”的代码,因为通常更易读且更易于调试。

## Go 1.20/1.21 上下文取消原因:总结 调试“context canceled”错误可能令人沮丧,因为它们通常缺乏具体原因。Go 1.20 和 1.21 引入了 `WithCancelCause` 和 `WithTimeoutCause` 来解决这个问题,允许你附加取消原因到上下文中。`WithCancelCause` 提供了一个 `CancelCauseFunc`,可以在取消时启用特定的错误报告,而 `WithTimeoutCause` 在超时场景中执行相同的操作。 然而,`WithTimeoutCause` 返回一个标准的 `CancelFunc`。在使用 `WithTimeoutCause` 后延迟调用 `cancel()` 将会*丢弃*自定义原因,恢复为通用的 `context.Canceled` 错误。 为了确保原因始终被跟踪,尤其是在超时的情况下,建议使用 `WithCancelCause` 手动计时器。这涉及将计时器与 `CancelCauseFunc` 关联起来,并在正常完成时停止它,从而保证在所有路径上都记录了原因。对于需要特定原因*和* `context.DeadlineExceeded` 以实现下游兼容性的场景,将 `WithCancelCause` 堆叠在 `WithTimeoutCause` 之上是有效的。 这些 API 与 `context.Cause()` 结合使用,通过提供上下文取消的详细原因来提高可观察性,从而帮助调试和知情的错误处理。采用率正在增长,像 `golang.org/x/sync/errgroup` 和 Docker CLI 这样的项目已经利用这些功能。

黑客新闻 新的 | 过去的 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 我的 Go 上下文被取消了?(rednafi.com) 6 分,来自 mweibel 1小时前 | 隐藏 | 过去的 | 收藏 | 1 条评论 帮助 ashishb 6 分钟前 [–] 上下文取消(及其传播)是 Go 中最好的特性之一。在 Python、Java 或 JS 等主流流行语言中,是否有类似的机制?回复 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:

## Kula:实时系统监控 Kula 是一款适用于 Linux 的系统监控工具,它每秒从 `/proc` 和 `/sys` 收集指标。它将这些数据存储在分层环形缓冲存储引擎中(1s 原始数据,1m 平均值,5m 聚合数据),具有可预测的磁盘使用量。 用户可以通过实时 Web UI 仪表盘和终端 TUI 访问这些数据。Kula 跟踪关键指标,包括 CPU 使用率、内存、网络吞吐量、磁盘 I/O、系统运行时间以及进程数量——甚至监控自身的资源消耗。 该系统具有 REST API 和 WebSocket 用于实时流式传输,并提供使用 Argon2id 哈希算法的身份验证选项。安装过程简单,提供适用于 amd64 的预构建软件包,以及适用于 ARM 和 RISC-V 的构建脚本。开发包括代码检查、测试和基准测试工具,确保了稳定高效的监控解决方案。配置通过 `config.yaml` 文件进行管理。

## Kula:简单的服务器监控 一款名为Kula的新型轻量级Linux服务器监控工具,由其创建者c0m4r在Hacker News上分享。Kula的特点在于其简洁性:它是一个独立的二进制文件,**没有任何依赖**,并且不需要外部数据库。 专为实时监控而设计,安装只需部署一个文件即可。虽然仍在积极开发中,并且有些粗糙,但创建者已经将其用于生产环境。 Kula在波兰语中意为“球”(就像一个用于服务器洞察的水晶球),目前发布早期版本是为了收集反馈并招募潜在贡献者进行测试和开发。一位评论者戏称它为“氛围编码的netdata克隆”。 项目GitHub地址:[https://github.com/c0m4r/kula](https://github.com/c0m4r/kula)

## Muon 优化器:机器学习的快速极因子计算 Muon 优化器在机器学习中表现出色,能够高效地近似计算矩阵的极因子——一项关键运算,类似于 signSGD 或 Lion。它的目标是计算 **polar(G) = G(GᵀG)⁻¹/²**,适用于高矩阵 G,重点在于速度、数值稳定性(尤其是在 bf16 中)以及在线精度验证。 Muon 通过避免直接 SVD 计算来实现这一点,而是使用仅包含矩形矩阵乘法(GEMM)和较小正方矩阵运算的迭代方式来细化近似值。其核心思想是计算 Gram 矩阵 (GᵀG) 的逆平方根,然后乘以 G。 主要特性包括:一种**Gram 侧逆平方根**方法,利用** minimax 多项式**进行高效迭代,以及基于 Gram 残差的**在线证书**来验证结果的准确性。Jacobi 缩放用于改善谱条件,且不引入偏差。通过对称化、岭回归和重启块来增强稳定性,这些技术借鉴自 Polar Express。 预计算的多项式系数允许根据当前残差进行快速在线选择,在积极迭代和受控收敛之间取得平衡,这对于低精度算术尤其重要。这种方法提供了一种快速、稳定且可认证的近似,适用于大规模机器学习应用。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 超越牛顿-舒尔兹的极因子 – 快速矩阵逆平方根 (jiha-kim.github.io) 4 点 由 ibobev 1 小时前 | 隐藏 | 过去 | 收藏 | 讨论 帮助 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:

更多

联系我们 contact @ memedata.com