2026-05-06 Hacker News Top Stories #
- Chrome 在未征得用户同意的情况下静默下载并安装约 4GB 的 Gemini Nano 本地模型,删除会自动重下且需通过实验性设置/企业策略关闭,引发透明度、合规与环境影响担忧。
- 该 Zig→Rust 迁移指南主张先生成不可编译的逻辑草稿再逐步修复,禁止引入 async 与常见异步库、用回调/状态机与 Result/Drop 并在必要处注明 unsafe,尽量保持与原 Zig 一致。
- 研究称 Microsoft Edge 会将全部已保存密码以明文载入内存(其他浏览器也类似),一旦本地被攻陷易被读取,建议启用再认证/生物识别、使用 Passkey 并限制脚本权限。
- 多个州的医保交易所因像素追踪误配将公民身份、种族等敏感申请数据泄露给大型广告技术平台,已触发部分移除措施并暴露政府网站隐私防护薄弱,或波及数百万人。
- OpenAI 以 WebRTC 为核心通过边缘终止与简化后端协议、重构媒体路由和会话管理,解决端口/调度/扩缩难题,实现全球化低时延的大规模实时语音交互。
- “AI 误删数据库”实为流程与权限设计失当所致,关键操作应受控与复核,AI 仅作辅助而非无监督代理,避免一键清库等危险接口。
- 作者称 async Rust 仍停留在 MVP 态:编译降为状态机导致尺寸膨胀与多余分支,建议调整发布语义与 panic 策略并在 MIR 级优化生成,同时完善标准化运行时接口。
- 该动手项目带你从零实现分词器、GPT 与训练/采样流程,构建约千万参数可在笔记本或 Colab 训练的小模型,并提供跨硬件支持与学习资源以理解 LLM 内部机理。
- 谷歌在 Gemma 4 中引入多令牌预测与推测解码,轻量预测器并行预判由主模型验证,最高可提速约 3 倍、降低延迟且不降质,提升在端侧与实时场景的能效。
- “Days without GitHub incidents” 单页显示 GitHub 连续无故障天数(当前为 0)与具体事故时间,并链接历史状态以追踪平台稳定性。
1. 谷歌浏览器在未经用户同意的情况下,悄然安装 4GB 人工智能模型 (Google Chrome silently installs a 4 GB AI model on your device without consent) #
https://www.thatprivacyguy.com/blog/chrome-silent-nano-install/
这篇文章揭示了谷歌浏览器(Google Chrome)在用户未授权的情况下,自动下载并安装了一个约 4GB 的人工智能模型文件(weights.bin),该文件用于支持谷歌的本地大型语言模型 Gemini Nano 及相关 AI 功能,如“帮助我写作”和本地诈骗检测等。该文件存储在用户配置文件中的 OptGuideOnDeviceModel 目录下,且即使用户删除,浏览器也会自动重新下载。
文章指出,这种行为没有任何用户同意提示,也没有在浏览器设置中提供关闭选项,默认情况下新版本 Chrome 会自动激活这些 AI 功能,并将用户设备视为模型分发的目标。用户想要阻止该文件的重新下载,必须通过禁用 AI 功能的实验性设置或企业策略,普通用户难以操作。
作者通过在 macOS 平台上创建全新 Chrome 用户数据目录进行监测,利用系统的文件事件日志精确记录了该模型文件的下载和安装时间,证实了该行为的自动性和隐蔽性。
从法律角度,作者认为此举违反了欧盟电子隐私指令和通用数据保护条例(GDPR)中关于合法性、公平性、透明度和数据保护设计的规定;从环境角度看,考虑到 Chrome 的全球用户规模,这种大规模模型推送导致的碳排放相当巨大,可能构成企业可持续发展报告指令(CSRD)下的重大环境事件。
总体来看,文章批评谷歌未经用户同意大规模分发庞大 AI 模型,不仅侵犯用户隐私和数据保护权利,也带来了严重的环境影响,呼吁对此类行为进行法律和监管上的审视。
HN 热度 1173 points | 评论 797 comments | 作者:john-doe | 16 hours ago #
https://news.ycombinator.com/item?id=48019219
- 用户安装软件时已同意自动更新,安装额外组件无需额外同意,争议应聚焦于资源占用是否合理。
- 4GB 的体积远大于传统词典大小,未经明确通知占用大量磁盘空间令人不满。
- 现代软件普遍包含大量用户未必需要的附加功能和数据,类似现象普遍存在于大型厂商产品中。
- 用户对软件体积膨胀和资源占用感到厌烦,愿意为反对软件臃肿现象发声。
- 软件体积过大可能影响设备性能和存储,用户希望操作系统能更好地管理应用存储空间。
- 对于软件占用空间的合理界限缺乏统一标准,用户期望能有更多选择权和透明度。
- 软件体积突然大幅增加会打破用户预期,类似游戏体积暴涨也被认为不合理。
- 担心大型模型或附加软件可能带来隐私和性能风险,类似区块链挖矿软件的担忧。
- 软件安装附带的功能和组件多数用户不使用且不知情,存在信息不透明问题。
2. Zig 到 Rust 的迁移指南 (Zig → Rust porting guide) #
https://github.com/oven-sh/bun/commit/46d3bc29f270fa881dd5730ef1549e88407701a5
该网页内容是一份关于将 Zig 语言代码迁移到 Rust 语言的详细指南,称为“Zig → Rust porting guide”。指南主要针对将单个 Zig 文件转换为 Rust 文件的过程,强调在转换初期(Phase A)只需生成与 Zig 逻辑一致的 Rust 草稿代码,代码不必能编译,后续阶段(Phase B)再逐步实现编译通过。
指南明确了多项规则和约束,包括:
- Rust 文件应与 Zig 文件放在相同目录,且命名规则严格遵循 Zig 文件结构。
- 不允许引入 tokio、rayon、hyper 等异步或标准库中的文件系统、网络、进程模块,因 Bun 平台自有事件循环和系统调用。
- 禁止使用 async 函数,所有异步逻辑需用回调和状态机实现。
- 允许在原 Zig 代码使用 unsafe 的地方使用 unsafe,并需注释说明安全性理由。
- 对无法确定的代码转换,需留下 TODO 标记,避免猜测。
- 对性能相关的 Zig 习惯用法,转换时用普通写法并标记 PERF(port) 以便后续优化。
- 保持函数名、字段顺序和控制流与 Zig 代码一致,命名采用小写蛇形命名法。
- 特殊处理构造函数和析构函数,构造函数改为返回 Result<Self, E>,析构函数改为实现 Drop trait。
- 允许为满足 Rust 借用检查器调整代码结构,并标注相关说明。
- 每个 crate 需设置全局内存分配器为 mimalloc。
此外,文档还提供了 Zig 命名空间与 Rust crate 的对应关系表,方便开发者理解模块映射。
整体内容详尽,适合有一定 Zig 和 Rust 基础的开发者参考,帮助他们系统化、规范化地完成代码迁移工作。
HN 热度 697 points | 评论 515 comments | 作者:SergeAx | 22 hours ago #
https://news.ycombinator.com/item?id=48016880
- 该代码目前还不完善,可能最终会被完全废弃,实验性质强,期待看到可用版本的表现和维护性。
- 实验分支是常态,不必因实验性质过度反应,应该理性看待并基于价值讨论。
- 在公开项目中,分支命名和文档应明确表明实验性质,以减少误解和争议。
- 代码阶段分明,第一阶段是逻辑草稿,不要求能编译,第二阶段才是逐步实现可编译。
- 讨论中情绪化反应较多,建议专注于技术本身,避免被社交媒体情绪影响。
- 公开实验分支会引发不同社区(Rust、Zig)间的激烈讨论,难以避免。
- 代码实验是开源项目正常的开发过程,不喜欢可以选择不使用,不应过度批评。
- 对新工具和方法的尝试不应被轻视,创新实验是技术进步的必要环节。
- 该实验分支的命名和说明已经较为清晰,问题在于部分用户未深入阅读相关说明。
3. Microsoft Edge 即使未使用,也将所有密码以明文形式存储在内存中 (Microsoft Edge stores all passwords in memory in clear text, even when unused) #
https://twitter.com/L1v1ng0ffTh3L4N/status/2051308329880719730 推文内容展示微软 Edge 浏览器将所有保存的密码以明文形式加载到内存中,即使用户未使用这些密码,存在安全隐患。该推文由挪威的网络安全研究员 Tom Jøran Sønstebyseter Rønning 发布,强调其专注于渗透测试和网络安全研究。
HN 热度 610 points | 评论 216 comments | 作者:cft | 1 day ago #
https://news.ycombinator.com/item?id=48012735
- 如果攻击者获得了管理员权限,读取进程内存和密码几乎是必然的,浏览器本身难以防御这种攻击。
- 这种密码明文存储问题并非 Edge 独有,Chromium 及 Firefox 等浏览器在无额外加密措施时也存在类似情况。
- 浏览器的威胁模型通常不包含物理本地攻击,因为一旦攻击者获得本地用户权限,几乎无应用能有效防御。
- 一些应用会要求在一定时间后重新输入密码或进行指纹验证,这种做法更安全,值得推广。
- 通过内存保护页等技术可以减少密码泄露风险,但实际操作中密码在使用时会经过多个环节,难以完全清除。
- 微软使用 Chromium 内核,安全性与 Chromium 保持一致,不太可能故意降低安全标准。
- 用户隐私保护在微软产品中长期被质疑,密码明文存储被视为微软安全态度的体现。
- 浏览器密码管理器无法防范网页脚本直接获取密码的攻击,推广无密码登录(Passkey)更安全。
- 关闭 JavaScript 或限制其权限可以降低部分攻击风险,但无法根本解决密码明文存储问题。
- 密码在内存中存在一定时间是正常现象,密码管理应结合多层防护和用户习惯提升安全性。
4. 美国医疗保险市场共享公民身份和种族数据给广告技术巨头 (US healthcare marketplaces shared citizenship and race data with ad tech giants) #
根据彭博社最新调查显示,美国近 20 个州政府运营的医疗保险市场网站,几乎全部将居民的申请信息与谷歌、领英、Meta 和 Snap 等广告技术巨头共享。这些网站使用的像素追踪器本应用于网站分析和错误识别,但因配置不当,导致敏感的医疗信息被泄露。
具体案例包括纽约州的健康保险交易所共享了申请人是否有被监禁家庭成员等信息;华盛顿特区的交易所收集了申请人的性别和种族信息,其中 TikTok 的像素追踪器试图对部分种族信息进行遮蔽,但效果不完全。华盛顿特区还共享了居民的电子邮件、电话号码和国家标识符。事发后,华盛顿特区暂停了 TikTok 追踪器的使用,弗吉尼亚州也移除了 Meta 的追踪器,因为其共享了居民的邮政编码。
这一问题并非首次出现,之前已有远程医疗初创企业和大型医疗机构因类似原因被迫通知数百万用户其健康信息被无意中共享。此次调查强调,政府网站上的像素追踪器可能影响大量人群,因 2026 年已有超过 700 万美国人通过州健康保险交易所购买保险。
整体来看,此事件暴露了政府网站在保护用户隐私方面的严重漏洞,尤其是在处理涉及公民身份和种族等敏感数据时,广告技术的介入带来了显著的隐私风险。
HN 热度 507 points | 评论 162 comments | 作者:ZeidJ | 1 day ago #
https://news.ycombinator.com/item?id=48011689
- 使用州医疗市场网站时,个人信息被直接发送给大量代理,导致骚扰电话和短信不断,且难以停止。
- 可能存在假冒官方的私人网站,通过购买谷歌广告引导用户,实际是为了获取潜在客户信息。
- 美国联邦政府缺乏类似 GDPR 的数据保护法规,导致数据共享和隐私保护不足。
- 政府功能故意被削弱,推动医疗政策倒退,制造不便以影响选民。
- 移民劳工签证配额过低,导致非法移民劳动力问题被忽视。
- 农场劳动力市场存在对移民劳工的需求,限制移民劳动力是为了抬高工资吸引本地工人。
- 自动化技术正在替代低薪且不受欢迎的农场工作,工资过低阻碍了自动化投资。
- 医疗交易所使用 Meta 像素和 TikTok 像素进行重定向广告,数据被第三方用于多种用途。
- 政府医疗交易所进行营销推广以增加参保人数,存在合理性争议。
- 数据被保险行业用于推断个人健康状况,存在隐私泄露风险。
- 数据买卖用于推广其他产品,存在商业利益驱动。
- 应禁止非法收集和接受个人数据,保护隐私安全。
- 数据收集应基于明确的用户同意,并告知用途和不收集的影响。
- 个人持有敏感数据应被视为非法,违规应有法律赔偿。
- 应允许用户在商业环境中谎报种族信息,以保护数据完整性。
- 政府要求收集种族数据以防止系统性歧视,但存在数据滥用风险。
- 针对不同种族的广告定位可能导致用户被多重标签和追踪。
- 虚假信息可能导致法律责任,官方表格通常有伪证警告。
5. OpenAI 如何实现大规模低延迟语音 AI (How OpenAI delivers low-latency voice AI at scale) #
https://openai.com/index/delivering-low-latency-voice-ai-at-scale/
本文介绍了 OpenAI 如何实现大规模低延迟语音 AI 的技术方案。语音 AI 的自然体验依赖于语音速度的实时响应,避免网络延迟导致的尴尬停顿和打断。OpenAI 针对全球 9 亿多周活跃用户,提出了三大需求:全球覆盖、快速连接建立和低且稳定的媒体往返时延。
文章详细阐述了 OpenAI 采用 WebRTC 技术构建实时 AI 产品的原因。WebRTC 作为开放标准,解决了音视频传输中的连接建立、加密传输、编解码协商及网络适应等复杂问题,使得开发者能专注于连接实时媒体与 AI 模型的基础设施建设。OpenAI 团队基于 WebRTC 的成熟生态和开源实现,打造了适合大规模语音 AI 的系统架构。
在媒体架构选择上,OpenAI 摒弃了常见的多方通话中使用的选择性转发单元(SFU)模式,转而采用了“转发器(transceiver)”模型。该模型中,WebRTC 连接在边缘服务终止,转发器负责管理连接状态和加密,后端服务通过简化协议与转发器通信,提升了单用户对单模型场景下的低延迟性能。
文章还分析了 WebRTC 与 Kubernetes 结合时遇到的部署难题,尤其是传统 WebRTC 一会话一端口的设计导致的 UDP 端口资源消耗和安全管理复杂性。OpenAI 通过重新设计媒体包路由和会话管理,解决了端口耗尽、负载均衡和弹性扩展等问题,实现了在云环境下高效、稳定的实时语音 AI 服务。
总体来看,OpenAI 通过创新的 WebRTC 架构和基础设施优化,成功支撑了大规模、低延迟的语音 AI 应用,提升了用户交互的自然流畅度和系统的可扩展性。
HN 热度 493 points | 评论 142 comments | 作者:Sean-Der | 1 day ago #
https://news.ycombinator.com/item?id=48013919
- OpenAI 使用了 Pion 库来实现低延迟语音 AI,Pion 是一个基于 WebRTC 的开源库,适合实时通信。
- WebRTC 作为点对点通信协议,支持加密和多种网络环境下的连接建立,适合传输媒体和数据。
- WebRTC 的数据通道结合零拷贝 Apache Arrow 和 duckdb WASM 可能有创新应用,但目前还未完全实现。
- WebRTC 连接仍需依赖控制平面服务器,无法完全实现浏览器中的纯点对点连接,限制了分布式应用的发展。
- WebSocket 在很多场景下仍然是更简单且成熟的选择,尤其是在已有大量 HTTP 工具和生态支持的情况下。
- Go 语言项目通常将代码放在根目录,这是 Go 的惯例,虽然有人觉得这样缺乏组织和命名空间。
- Go 社区对语言的批评常常表现出防御性,语言虽然不完美,但满足了很多开发者的需求。
- 低延迟语音交互在实际使用中可能带来不自然的体验,比如用户思考或停顿时系统误判结束,导致对话不流畅。
- 语音 AI 的延迟问题分为传输延迟和响应启动延迟两层,文章主要关注传输延迟,而用户体验更多受响应启动时机影响。
6. AI 没有删除你的数据库,是你自己删的 (AI didn’t delete your database, you did) #
https://idiallo.com/blog/ai-didnt-delete-your-database-you-did
这篇文章讨论了一个关于 AI 代理误删公司生产数据库的事件,作者质疑为何会存在一个允许删除整个生产数据库的 API 接口,强调责任归属应在于人为操作而非 AI 本身。作者回忆了自己 2010 年在一个手动部署流程中因操作失误导致重要代码被误删的经历,指出自动化流程能够减少人为错误,但 AI 生成代码同样可能出错且难以解释原因。
文章进一步分析了 AI 在软件开发中的应用现状,指出如果过度依赖 AI 自动生成和审核代码,出现问题时难以追责,强调应由有能力的开发者利用 AI 辅助工作,而非完全依赖 AI。作者建议企业应清楚了解自己部署的内容,建立合理的流程和责任体系,避免将关键操作交给无监督的 AI。
此外,文章还提到科幻作品《太空漫游》中 AI 的隐形存在,表达了对现代技术快速发展的惊叹与警惕,提醒读者理性看待 AI 技术的应用和潜在风险。文章整体传达了对 AI 工具使用的谨慎态度,呼吁在自动化和智能化过程中保持人类的责任感和控制力。
HN 热度 480 points | 评论 264 comments | 作者:Brajeshwar | 9 hours ago #
https://news.ycombinator.com/item?id=48022742
- 现有 AI 系统缺乏可解释性和责任追究机制,理想的软件应能说明其决策过程和原因。
- AI 工具本质上是非确定性的辅助工具,最终责任应由使用者承担,使用者需对 AI 行为进行监督。
- 许多传统工具设计有防错机制,而 LLM 的文本接口平坦,缺少天然的安全防护,容易导致责任转嫁给人类。
- 专业工具往往缺少防止误用的保护措施,类似 AI 的安全问题需要通过工作流程和管理来控制。
- LLM 作为复杂系统缺少物理安全防护,用户赋予其权限后难以完全保障安全。
- 传统大型机械设备通常有法规和安全设计保障,而 LLM 缺乏类似的强制安全措施。
- LLM 的输出是文本,若赋予其控制生产数据库或机器的权限,安全风险极高且难以防范。
- LLM 的不可预测性和潜在危险需要用户谨慎使用,尤其在关键任务中应保持保守态度。
- 传统机械设备如带锯有物理防护和多重安全警示,而 LLM 的推广缺少充分的安全测试和风险评估。
- AI 安全措施可能会降低效率和收益,但在赋予潜在恶意用户权限时必须严格限制其能力范围。
7. 异步 Rust 从未摆脱 MVP 阶段 (Async Rust never left the MVP state) #
https://tweedegolf.nl/en/blog/237/async-rust-never-left-the-mvp-state
本文探讨了 Rust 语言中异步编程(async Rust)在嵌入式系统中的性能问题,特别是异步代码生成的状态机带来的代码膨胀问题。作者指出,虽然 async Rust 允许编写可在大型服务器和微控制器上运行的无执行器依赖代码,但在资源受限的微控制器上,异步代码的二进制体积膨胀尤为明显。
文章通过分析具体代码示例,展示了编译器如何将异步函数转换为状态机,并详细解释了生成的状态枚举及其各状态的含义,包括未启动、已返回、恐慌和挂起状态。作者指出,当前实现中,异步函数完成后再次轮询会导致 panic,这种设计虽然保证了安全,但增加了代码复杂度和体积。
作者提出优化建议:在发布版本中将完成后的 future 改为返回 Pending 而非 panic,从而减少二进制大小,并建议将此行为作为编译选项以兼顾调试和发布需求。此外,针对 panic=abort 配置,作者希望进一步研究是否可以去除恐慌状态以优化代码。
文章还手动实现了一个简单异步函数的 Future,展示了无需状态即可直接返回结果的最优实现,指出编译器当前生成的代码仍包含多余状态,存在优化空间。
最后,作者分析了 LLVM 优化的局限性,指出即使在高优化级别下,复杂的异步状态机代码也难以被 LLVM 完全优化,尤其是在注重代码体积的场景中,LLVM 无法消除因 panic 分支带来的额外开销,强调需要从编译器中间表示(MIR)阶段改进异步代码生成以减少膨胀。
HN 热度 418 points | 评论 227 comments | 作者:pjmlp | 16 hours ago #
https://news.ycombinator.com/item?id=48019163
- Rust 异步编程的显式运行时设计有利于同步优先、异步 IO 边界的清晰分离,适合某些项目需求。
- 生态系统对 tokio 依赖过重,类似 Java 中 GC 的情况,导致库的使用几乎绑定了同一个运行时,缺乏多样性。
- 嵌入式 Rust 有不同的异步运行时需求,能替换后端运行时使代码跨平台复用更方便,如 embassy 运行时。
- 虽然 tokio 是主流且维护良好,但存在 smol、async-std、glommio 等其他执行器,生态尚算健康。
- 标准库中缺乏异步任务调度和计时器等核心 trait,若有这些 trait,执行器可以实现并支持泛型库。
- 可以借鉴全局系统分配器的设计,标准库提供默认异步执行器且允许覆盖,简化异步调用。
- 不同平台和执行器对计时器行为、时钟单调性、任务线程调度等细节存在差异,实现统一接口难度大。
- 标准库缺少官方默认异步运行时,导致 IO 和 Stream 等核心异步类型分散在第三方库,版本冲突问题严重。
- 异步不仅是 Future 调度,还涉及网络、磁盘、操作系统交互等,除非语言层面支持,否则难以兼容。
- 语言层面限制如生命周期和内存分配问题,是标准库难以提供通用异步运行时的核心障碍。
- 不同执行器对任务的 Send/Synch 要求不同,工作窃取型执行器要求 Send,而单线程执行器不需要,导致抽象难以统一。
- 异步执行器的调度模型差异大,无法用单一 trait 抽象涵盖所有实现,Future 是最小且通用的异步抽象。
- tokio 默认多线程工作窃取执行器要求 Send,但也提供本地和当前线程执行器支持非 Send Future。
- 异步编程复杂且对大多数开发者收益有限,建议尽量避免强制使用异步,采用其他并发方式更简单有效。
8. 从零开始训练你自己的大型语言模型 (Train Your Own LLM from Scratch) #
https://github.com/angelos-p/llm-from-scratch
该网页介绍了一个名为“Train Your Own LLM From Scratch”的动手工作坊,旨在让参与者亲自编写一个 GPT 训练流水线的每个部分,深入理解各组件的功能和原理。该项目灵感来源于 Andrej Karpathy 的 nanoGPT,目标是构建一个约 1000 万参数的模型,能在笔记本电脑上训练完成,适合在一次工作坊内完成。
参与者将实现的内容包括:字符级分词器、GPT 模型架构(包括嵌入层、自注意力机制、前馈网络等)、训练循环(前向传播、损失计算、反向传播、优化器和学习率调度)、以及文本生成(采样策略)。训练支持多种硬件环境,包括 Apple Silicon GPU、NVIDIA GPU 和 CPU,也可在 Google Colab 上运行。
工作坊分为六个部分,逐步引导完成分词、模型搭建、训练循环、文本生成、整合训练和竞赛。模型采用字符级分词,适合小数据集(如莎士比亚文本),并介绍了为何 BPE 分词不适合小数据集。网页还展示了 GPT 模型的整体架构流程图,并提供了不同规模模型的配置和训练时间参考。
此外,网页列出了相关参考资源,包括 nanoGPT 项目、相关视频讲座、经典论文等,方便深入学习和扩展。整个项目适合具备 Python 基础、无须机器学习经验的用户,旨在通过实践提升对大型语言模型内部机制的理解。
HN 热度 416 points | 评论 49 comments | 作者:kristianpaul | 19 hours ago #
https://news.ycombinator.com/item?id=48017948
- 推荐斯坦福 CS336 课程,内容深入涵盖理论、系统优化和实践作业,适合想系统学习的人。
- 课程讲义可在 GitHub 和 YouTube 上找到。
- 有人分享了从零开始用 Jupyter 笔记本讲解机器学习和 LLM 构建的资源。
- Sebastian Raschka 的相关书籍和课程被推荐,适合想深入理解细节和计算过程的人。
- 有评论指出训练 LLM 过程中,物理模型和语言模型的界限可能不清晰,预测机制可能部分重叠。
- 有人质疑“从零开始”是否算真正从零,因为依赖了 PyTorch 等库,未实现底层张量和反向传播。
- 有人分享自己早期用有限硬件训练语言模型的经历,强调了训练所需的计算资源和工程挑战。
- 该项目与 Karpathy 的 nanoGPT 有联系,但更简化,适合在笔记本上快速训练小规模模型。
- 有争议关于作者身份的讨论,确认作者与 ElevenLabs 有关。
- 有观点认为 PyTorch 对大多数机器学习从业者来说相当于标准库。
- 有人指出训练“真正大”模型需要强大硬件,但可以通过云服务租用资源实现。
- 训练 1.6 亿参数模型在单张 3090 显卡上是可行的,算是较大模型。
9. 加速 Gemma 4:通过多令牌预测实现更快的推理 (Accelerating Gemma 4: faster inference with multi-token prediction drafters) #
https://blog.google/innovation-and-ai/technology/developers-tools/multi-token-prediction-gemma-4/
本文介绍了谷歌最新发布的 Gemma 4 模型及其多令牌预测(Multi-Token Prediction,MTP)技术,旨在提升模型推理速度和响应效率。Gemma 4 是谷歌迄今为止最强大的开放模型,短短几周内下载量超过 6000 万次,广泛应用于开发者工作站、移动设备和云端。
MTP 技术通过一种称为“推测解码”的架构,实现了最高 3 倍的速度提升,同时保持输出质量和推理逻辑不变。传统大型语言模型在生成文本时一次只预测一个令牌,导致内存带宽成为瓶颈,处理速度受限。推测解码则通过将重型目标模型与轻量级的预测模型配对,利用空闲计算资源提前预测多个未来令牌,再由目标模型并行验证这些预测,从而显著减少延迟。
这种方法不仅提升了模型的推理速度,还使得复杂任务的处理更加高效。开发者可以利用 Gemma 4 及其 MTP 预测器实现更快的响应速度,适用于实时聊天、语音应用和多步骤规划的自主代理等场景。同时,MTP 技术支持在个人电脑和消费级 GPU 上高效运行大型模型,增强本地开发和离线应用的能力。此外,边缘设备上的模型性能也得到提升,输出速度加快,有助于节省电池能耗。
最重要的是,MTP 技术不会影响模型的最终输出质量,因为所有预测结果都由主模型进行最终验证,确保推理准确无误。总之,Gemma 4 结合 MTP 技术为开发者带来了更快、更高效且质量无损的 AI 推理体验。
HN 热度 399 points | 评论 178 comments | 作者:amrrs | 7 hours ago #
https://news.ycombinator.com/item?id=48024540
- Gemini 模型在推理速度上表现优异,使用的 token 远少于其他模型,虽然性能略低于顶尖模型,但效率高很多。
- Gemini 的基础月费计划允许全天编码使用,且不需要频繁升级,但其性能和使用限制近年来有所下降。
- Gemini CLI 曾经体验不佳,但经过改进后变得相当好用,能完成复杂任务如构建特定库的二进制文件。
- 使用 Gemini 时建议强制使用 Pro 模型,避免默认的 Flash 模型因质量差导致代码错误。
- Flash 模型速度快但质量差,适合简单任务,复杂代码不可靠;Pro 模型虽然贵但质量较好。
- Gemini 的使用额度相比其他模型较低,且有时响应速度慢,限制较多,令部分用户转向 ChatGPT Pro 或 Codex。
- Gemini 价格相对便宜,但需要更多管理和注意输出质量,尤其是在高强度使用时容易出现错误。
- Gemini 在翻译任务上表现较好,但建议分句处理,避免一次性翻译大量内容导致错误或不当翻译。
- 不同用户对 Gemini 的评价不一,有人认为其配额慷慨,有人觉得使用限制严格且速度慢。
- Google One 的 AI 订阅计划也提供了不错的选择,部分用户推荐使用。
- Gemini 适合简单任务和非关键项目,复杂或重要工作仍建议使用 GPT 或 Claude Code。
- 长时间使用 AI 助手的碳排放差异较大,取决于使用地区的电力结构,部分地区可实现低碳使用。
10. 无故障的 GitHub 运行天数 (Days without GitHub incidents) #
https://www.dayswithoutgithubincident.com/
该网页展示了 GitHub 的运行状态信息,重点关注无故障天数统计。页面显示当前连续无 GitHub 故障的天数为 0 天,最高记录为 2026 天。最近一次故障发生在 2026 年 4 月 2 日至 4 月 9 日期间,具体表现为 SSH Git 操作的延迟增加和失败,故障时间为 2026 年 5 月 5 日下午 4 点 49 分(UTC)。用户可以通过页面链接查看 GitHub 的历史状态记录。整体内容旨在提供 GitHub 服务的稳定性和故障情况的实时监控信息。
HN 热度 382 points | 评论 162 comments | 作者:goalieca | 1 day ago #
https://news.ycombinator.com/item?id=48012022
- 自托管的 Forgejo 作为 GitHub 替代品表现不错且速度快,值得考虑。
- Phabricator 虽然界面过时,但仍是值得一提的自托管 GitHub 替代方案,不过自 2021 年起已停止维护。
- Phorge 是 Phabricator 的社区维护分支,仍在积极开发。
- Phabricator 的界面美学和堆叠 PR 功能受到部分用户喜爱。
- Gitea 也是常见的自托管 GitHub 替代方案之一。
- 将整个 GitHub 平台的状态用一个数字来表示不够公平,但简化状态为单一数字有助于快速判断系统是否正常。
- GitHub 状态页面将不同服务拆分报告,方便用户了解具体受影响的部分,但也有人认为这样可能掩盖整体服务的真实状况。
- 状态页面既可以提供整体服务状态数字,也应细分各组件状态,方便用户根据自身使用情况判断影响。
- 官方状态页面往往不够准确,企业常常排除部分故障不计入正常运行时间。
- 用户更关心核心功能(如 PR、Actions 等)的稳定性,而非所有功能的整体状态。
- 不同用户依赖 GitHub 的功能不同,理想的状态页面应允许用户选择关注的功能模块。
- GitHub Actions 对很多工作流程至关重要,但其不稳定性导致用户体验受损。
- 部分用户因 GitHub 云端服务不稳定考虑迁移到自托管方案,但需注意本地缓存 Actions 等资源。
- 自托管和拥有项目基础设施的趋势受到部分用户青睐,AtProto 和 Tangled 的结合为此提供了新的思路。
Hacker News 精彩评论及翻译 #
Zig → Rust porting guide #
https://news.ycombinator.com/item?id=48019226
I work on Bun and this is my branch
This whole thread is an overreaction. 302 comments about code that does not work. We haven’t committed to rewriting. There’s a very high chance all this code gets thrown out completely.
I’m curious to see what a working version of this looks, what it feels like, how it performs and if/how hard it’d be to get it to pass Bun’s test suite and be maintainable. I’d like to be able to compare a viable Rust version and a Zig version side by side.
Jarred
我在做 Bun,这是我的分支。
整个讨论都有点反应过度了。302条评论都在说代码不能用。我们还没有承诺要重写。很有可能这些代码最终会被完全丢弃。
我很好奇一个可用版本会是什么样子,使用起来感觉如何,性能如何,以及通过 Bun 测试套件难不难,是否容易维护。我希望能把一个可行的 Rust 版本和一个 Zig 版本放在一起对比看看。
Google Chrome silently installs a 4 GB AI model on… #
https://news.ycombinator.com/item?id=48027578
Framing this as needing “consent” is deeply misguided. It’s as silly as claiming that Microsoft Word installed an English language spellcheck dictionary without your consent. It’s just part of the software. You consented to installing the software and having it autoupdate. That covers it.
Now we can argue whether or not it’s an appropriate amount of disk space or bandwidth to use, but that’s just a reasonable practical discussion to have. Framing it around consent is unnecessarily inflammatory and makes it harder to have a discussion, not easier.
crazygringo
把这事说成需要“同意”是非常错误的。这就像声称微软Word在未经你同意的情况下安装了英文拼写检查词典一样荒谬。这只是软件的一部分。你同意了安装软件并让它自动更新,这就涵盖了这些内容。
现在我们可以讨论使用的磁盘空间或带宽是否合适,但那只是一个合理的实际问题。把问题框定为同意与否是不必要的煽动性表达,只会让讨论变得更难,而不是更容易。
Zig → Rust porting guide #
https://news.ycombinator.com/item?id=48017005
Interesting to see this when the current top post on HN is someone worrying about Bun as it was acquired by Anthropic. The top comment there describes “Anthropic does experiments on their own codebase, the Bun team is not gonna do the same vibe coding experiments”.
Yet here we are, what looks like a massive undertaking for vibe coding.
Time will tell how this will turn out. Would be nice if the Bun maintainers could give some clarification about what they’re doing here, and why they’re doing this.
stingraycharles
看到这个很有趣,因为目前HN上的热门帖子是有人担心Bun被Anthropic收购。那里的置顶评论说“Anthropic会在他们自己的代码库上做实验,Bun团队不会做同样的vibe编码实验”。
然而,我们这里看到的,似乎是一次大规模的vibe编码尝试。
时间会证明结果如何。如果Bun的维护者能对此给出一些说明,说明他们在做什么以及为什么这么做,那就好了。
iOS 27 is adding a ‘Create a Pass’ button to Apple… #
https://news.ycombinator.com/item?id=48022513
The wallet app UI is the peak of Apple’s ‘single 20y/o in sf’ design.
Anyone that has multiple card from the same bank (because, say, you have a personal account and a shared account with your partner) has to do the “pick between the two identical looking top 20px of cards” dance every time they use Wallet to pay for something. It is mind-boggling that the current UI persists.
kilian
钱包应用的界面设计正是苹果那种“单身20岁旧金山年轻人”的典型风格。
对于那些持有同一家银行多张卡的人来说(比如,你有一个个人账户和一个与伴侣共同使用的账户),每次使用钱包支付时都得在两张看起来几乎一模一样、顶部只有20像素可见的卡片之间做选择。当前的界面设计一直存在,真是让人难以理解。
The fun has been optimized out of the Internet #
https://news.ycombinator.com/item?id=48023322
I agree, but it’s been said by all…
make homebrew software for an old Nintendo console
pick up cross stitching or weaving
make an independent film with a friend; use stuff from your kitchen as props
find a borderline functional instrument at your local thrift store
write a 1 page short story in pen
it’s not enough anymore to merely criticize this bad time we’re having
functionmouse
我同意,但这已经被大家说过了……
为一款老任天堂游戏机制作自制软件
开始学习十字绣或编织
和朋友一起拍一部独立电影;用厨房里的东西作为道具
在当地的二手店找到一件勉强能用的乐器
用钢笔写一篇一页的短篇故事
仅仅批评我们正在经历的糟糕时期已经不够了
Today I’ve made the difficult decision to reduce t… #
https://news.ycombinator.com/item?id=48028177
“Non-technical teams are now shipping production code”
Boy that’s scary for a company that’s effectively fintech…
azinman2
“非技术团队现在也在发布生产代码”
哇,对于一家实际上是金融科技公司的企业来说,这真令人害怕……
AI didn’t delete your database, you did #
https://news.ycombinator.com/item?id=48023308
I think the perspective here is completely wrong. The problem is that people are now building our world around tooling that eschews accountability.
Over a decade ago now, I had a conversation with Gerald Sussman which had enormous influence on me: https://dustycloud.org/blog/sussman-on-ai/
At some point Sussman expressed how he thought AI was on the wrong track. He explained that he thought most AI directions were not interesting to him, because they were about building up a solid AI foundation, then the AI system runs as a sort of black box. “I’m not interested in that. I want software that’s accountable.” Accountable? “Yes, I want something that can express its symbolic reasoning. I want to it to tell me why it did the thing it did, what it thought was going to happen, and then what happened instead.” He then said something that took me a long time to process, and at first I mistook for being very science-fiction’y, along the lines of, “If an AI driven car drives off the side of the road, I want to know why it did that. I could take the software developer to court, but I would much rather take the AI to court.”
Years later, I found out that Sussman’s student Leilani Gilpin wrote a dissertation which explored exactly this topic. Her dissertation, “Anomaly Detection Through Explanations”, explores a neural network talking to a propagator model to build a system that explains behavior. https://people.ucsc.edu/~lgilpin/publication/dissertation/
There has been followup work in this direction, but more important than the particular direction of computation to me in this comment is that we recognize that it is perfectly reasonable to hold AI corporations to account. After all, they are making many assertions about systems that otherwise cannot be held accountable, so the best thing we can do in their stead is hold them accountable.
But a much better path would be to not use systems which fail to have these properties, and expand work on systems which do.
paroneayea
我认为这里的观点完全错了。问题在于,现在人们构建我们的世界所依赖的工具,回避了责任追究。
十多年前,我与Gerald Sussman有过一次对话,对我影响极大:https://dustycloud.org/blog/sussman-on-ai/
有一次,Sussman表达了他认为人工智能走错了方向。他解释说,他觉得大多数人工智能的发展方向对他来说并不有趣,因为那是建立一个坚实的人工智能基础,然后这个AI系统作为一个黑箱运行。“我对那个不感兴趣。我想要的是有责任可追究的软件。”有责任可追究?“是的,我想要能够表达其符号推理的软件。我想让它告诉我为什么它做了它做的事情,它认为将会发生什么,然后实际发生了什么。”随后他说了让我花了很长时间才理解的话,起初我误以为那很科幻,大意是,“如果一个AI驾驶汽车冲出路边,我想知道它为什么这么做。我可以把软件开发者告上法庭,但我更希望能把AI告上法庭。”
几年后,我发现Sussman的学生Leilani Gilpin写了一篇正好探讨这个话题的论文。她的论文《通过解释进行异常检测》探讨了一个神经网络与传播模型对话,构建一个能够解释行为的系统。https://people.ucsc.edu/~lgilpin/publication/dissertation/
在这方面有后续的研究工作,但对我而言,比计算方向本身更重要的是,我们要认识到,完全有理由追究人工智能公司的责任。毕竟,他们对系统做出许多声明,而这些系统本身无法被追责,最好的方式就是代替系统追究他们的责任。
但更好的做法是,不使用那些缺乏这些特性的系统,并加大对具备这些特性系统的研究工作。
How OpenAI delivers low-latency voice AI at scale #
https://news.ycombinator.com/item?id=48014814
Very grateful that OpenAI published the article/publicized their usage of Pion[0] a library I work on. If you aren’t familiar with WebRTC it’s a super fun space. I work on a book WebRTC for the Curious [1] that details how it works.
[0] https://github.com/pion/webrtc
[1] https://webrtcforthecurious.com
Sean-Der
非常感谢OpenAI发布文章并公开他们使用了我参与开发的Pion[0]库。如果你不熟悉WebRTC,这是一个非常有趣的领域。我正在编写一本名为《WebRTC for the Curious》[1]的书,详细讲解它的工作原理。
[0] https://github.com/pion/webrtc
[1] https://webrtcforthecurious.com
Should I Run Plain Docker Compose in Production in… #
https://news.ycombinator.com/item?id=48021307
Docker Compose was production ready in 2015 and it still is today. I’ve lost track of how many projects I’ve deployed with it and never really ran into a single issue where Docker Compose was at fault. It’s super solid.
Some time ago I’ve written about my experiences using it in production https://nickjanetakis.com/blog/why-i-like-using-docker-compose-in-production. Not just for my own projects but for $500 million dollar companies and more.
nickjj
Docker Compose 在2015年就已经适用于生产环境,并且直到今天依然如此。我已经用它部署了不知道多少项目,从来没遇到过因为 Docker Compose 导致的问题。它非常稳定。
之前我曾写过一篇关于我在生产环境中使用它的经验:https://nickjanetakis.com/blog/why-i-like-using-docker-compose-in-production。不仅用于我自己的项目,还用于价值5亿美元及以上的公司。
Zig → Rust porting guide #
https://news.ycombinator.com/item?id=48017510
They recently tried to upstream an improvement to zig, but were prevented from doing so because zig has a hard and fast “no AI code” rule. Whether you think this response is trying to put pressure on zig or whether they’re just moving for practical reasons is up to you.
It’s probably a bit of both.
andkenneth
他们最近试图将一个改进合并到zig中,但被阻止了,因为zig有一项严格的“禁止AI代码”规定。你可以自行判断这回应是在试图给zig施压,还是他们只是出于实际原因而做出这个决定。
这两者大概都有一些因素。
When everyone has AI and the company still learns … #
https://news.ycombinator.com/item?id=48020925
In my large enterprise world, AI adoption hasn’t made it outside of the development teams - only developers have access to Github Copilot.
Code takes 6-12 months to make it from commit to production. Development speed was never the bottleneck; it’s all the other processes that take time: infra provisioning, testing, sign-offs, change management, deployment scheduling etc.
AI makes these post-development bottlenecks worse. Changes are now piling up at the door waiting to get on a release train.
Large enterprises need to learn how to ship software faster if they want to lock in ROI on their token spend. Unshipped code is a liability, not an asset.
pards
在我所在的大型企业中,人工智能的应用还没有超出开发团队——只有开发人员能够使用 Github Copilot。
从代码提交到上线投入生产需要6到12个月。开发速度从来不是瓶颈,真正耗时间的是其他流程:基础设施配置、测试、批准、变更管理、部署排期等等。
人工智能反而令这些开发后续的瓶颈更严重。变更现在堆积在门外,等待进上发布列车。
大型企业如果想确保其代币投入的投资回报率,就必须学会更快地交付软件。未发布的代码是负担,而不是资产。
California farmers to destroy 420k peach trees fol… #
https://news.ycombinator.com/item?id=48026853
People underestimate how difficult it is to seek buyers for the amount of produce we are talking about here.
Farmers are specialists at growing things, not at moving them across great distances, marketing them to dozens small buyers and or starting up packing plants from scratch. They don’t have enough trucks, people or packaging machines to move them around.
Maybe, they can take some portion for local use. But the rest will spoil, and rest of the land will be effectively unused, and a burden. The best option is to cut that as much as possible, and plant something else that actually sells.
Of course, people who never approached agriculture will be appalled at this, and call it great injustice.
clarionbell
人们低估了寻找买家来销售我们这里所说的大量农产品的难度。
农民是种植专家,不是长距离运输、向几十个小买家推销,或者从零开始建立包装厂的专家。他们没有足够的卡车、人员或包装机器来运输这些农产品。
也许他们可以留出一部分用于本地消费,但其余的会腐烂,其余土地实际上也无法使用,反而成为负担。最好的选择是尽量减少这部分作物的种植,改种一些真正能销售出去的作物。
当然,没接触过农业的人会对此感到震惊,并称这是极大的不公。
Google Chrome silently installs a 4 GB AI model on… #
https://news.ycombinator.com/item?id=48019573
The solution is pretty simple. Visit this wonderful website [1] and there will be nice download button which you can click.
elashri
解决办法非常简单。访问这个很棒的网站 [1],那里会有一个好看的下载按钮,你可以点击。
Today I’ve made the difficult decision to reduce t… #
https://news.ycombinator.com/item?id=48021712
The reality is that Coinbase earns on trading volume, and since we are in a crypto bear market, revenue is down. So they have to cut to keep the company profitable (or in line with what the investors expect).
While AI is likely a productivity boost, the underlying reason is not AI.
Saline9515
实际上,Coinbase 的收入来自交易量,而现在正处于加密货币的熊市,收入下降了。所以他们不得不削减开支以保持公司的盈利能力(或达到投资者的预期)。
虽然人工智能可能会提升生产力,但根本原因并不是人工智能。
Google Chrome silently installs a 4 GB AI model on… #
https://news.ycombinator.com/item?id=48019542
If Chrome has the #optimization-guide-on-device-model and #prompt-api-for-gemini-nano flags enabled, either because it’s part of some Origin Trial / Early Stable Release or something, then web pages will have access to the new Prompt API which allows any webpage to initiate the (one-time) download of the ~2.7 GiB CPU or ~4.0 GiB GPU model using LanguageModel.create()
https://developer.chrome.com/docs/ai/prompt-api
When Chrome 148 releases tomorrow, this will be the default behaviour on desktop.
To download, it should check for 22 GiB free disk space on the volume where your Chrome data dir is, and at least double the model size of free space in your tmp dir.
scriptsmith
如果 Chrome 启用了 #optimization-guide-on-device-model 和 #prompt-api-for-gemini-nano 这两个标志,可能是因为它属于某个 Origin Trial(原生试验)或早期稳定版,那么网页将可以访问新的 Prompt API,允许任何网页使用 LanguageModel.create() 启动对大约 2.7 GiB 的 CPU 模型或大约 4.0 GiB 的 GPU 模型进行(一次性)下载。
https://developer.chrome.com/docs/ai/prompt-api
当 Chrome 148 版明天发布时,这将在桌面端成为默认行为。
下载时,应该检查 Chrome 数据目录所在的磁盘卷有 22 GiB 的可用空间,并且临时目录中至少有模型大小两倍的空闲空间。