每日HackerNews RSS

## 使用 `uv` 和 `Dagger` 轻松构建 Python Monorepo Monorepo(单仓库包含多个项目)在谷歌和 Facebook 等大型公司很常见,但管理起来可能具有挑战性。本文详细介绍了一种使用工具 `uv` 和 `Dagger` 构建 Python Monorepo 的简化方法。 传统上,Python Monorepo 的设置很复杂,因为依赖管理和构建速度慢。然而,`uv` 简化了打包和依赖解析,而 `Dagger` 提供了一个强大的构建系统。这种组合能够实现具有端到端缓存的快速、模块化流水线。 核心思想是利用 `uv` 的 workspace 功能和 `Dagger` 以编程方式定义构建过程的能力。通过解析 `uv.lock` 文件,系统可以智能地仅复制必要源代码,避免因无关项目中的更改而触发完整重建。这是通过一个构建 Docker 镜像的 Dagger 模块实现的,利用现有的 Dockerfile 阶段并添加一层用于依赖管理。 这种方法具有维护成本低、本地和 CI 兼容性以及通过缓存实现显著速度提升等优点。虽然需要一些初始设置,但由此产生的流水线高效且可扩展,使 Python Monorepo 更易于管理和性能更高。作者鼓励查阅 `uv` 和 `Dagger` 文档以进行自定义和优化。

一个 Hacker News 的讨论围绕着一篇名为“破解 Python Monorepo”的博文展开。核心讨论围绕着 monorepo 的挑战和优势,特别是对于 Python 项目。 用户指出,Python monorepo 中最大的资源消耗不是打包,而是运行测试——高效的测试缓存至关重要。博文作者确认 Dagger 被用于促进这种缓存,通过正确组装容器并跳过未更改代码的测试。 几位评论者表示,比起 Git 子模块等替代方案,他们更喜欢 monorepo,理由是后者令人沮丧且容易出错。然而,一位用户批评该文章更像是一则 Dagger 广告,而另一位则建议解决静态类型问题可能比采用 monorepo 带来更快的好处。

## 硬木:高性能 Parquet 解析 硬木是一个新的系统,专为高性能 Parquet 文件处理而构建,借鉴了 1BRC 的经验。其主要重点是通过并行化最大化 CPU 利用率,即使在 Parquet 格式的复杂性下也能实现高吞吐量。 硬木采用了多种技术:**页面级并行**(使用多个线程解码数据页面)、**自适应页面预取**(优先处理解码速度较慢的列)和 **跨文件预取**(重叠文件解码)。这些,以及减少分配等优化措施,显著提升了性能。 在 MacBook Pro M3 Max 上,硬木可以在约 1.2 秒内对 ~9.2GB 纽约出租车数据集的三个列求和(列读取器 API),并在约 1.3 秒内解析 900MB 的嵌套 Overture Maps 数据文件。 该项目利用 JDK Flight Recorder 进行瓶颈识别,并包含自动化性能测试,并计划使用 Apache Otava 构建自动化回归检测流水线,以确保持续的性能改进。

## 硬木:一种新的Java Parquet解析器 一个名为**硬木 (Hardwood)** 的新Java库旨在为处理Parquet文件提供一个比广泛使用的 `parquet-java` 更简单、性能更高的替代方案。开发者长期以来一直苦于 `parquet-java` 复杂的依赖结构、笨拙的API和相对较慢的性能。 硬木通过提供**零强制依赖**来解决这些问题,允许用户仅添加他们需要的压缩和日志库。初步基准测试表明,在诸如对大型数据集(纽约出租车数据)中的列求和等任务中,硬木的性能明显优于 `parquet-java`,速度达到~1.2-2.7秒,而 `parquet-java` 则较慢。 目前,硬木在处理扁平、完全解析的数据集方面表现出色,但缺乏谓词下推优化——该功能计划在未来开发中实现。该项目提供了一个性能测试框架,允许用户在自己的机器上将其与 `parquet-java` 和 PyArrow 进行比较。

启用 JavaScript 和 Cookie 以继续。

## AI生成文本检测的演变挑战 最近的Hacker News讨论集中在可靠检测大型语言模型(LLM)生成的文本的难度上。一篇2024年的文章已被指出已过时,因为像Llama这样的开放权重模型产生的文本在统计上与人类写作无法区分。 评论者指出,较新的模型越来越复杂,模仿人类风格,甚至融入了怪癖,例如特定的词汇选择(“delve”),这可能受到训练者人口统计学特征的影响。虽然最初的检测依赖于识别统计异常或“公司用语”,但这些方法只需用户付出最小的努力——例如向LLM提供他们自己写作风格的示例——就可以轻易绕过。 水印技术提供了一种潜在的解决方案,但需要LLM提供商的普遍采用,这不太可能。更大的担忧不仅仅是直接的AI生成内容,而是对不准确或细微的LLM输出进行改写,以及外包批判性思维。多位用户指出,这些工具被广泛用于学术不端行为,以及学生在没有它们的情况下工作的能力下降。开源指纹识别工具存在,但军备竞赛仍在继续。

不要陷入过时的 SQL 与 NoSQL 争论——现代数据库通常足以应对大量负载。性能问题很少源于数据库*引擎*本身,而是源于糟糕的设计选择,例如低效的查询、缺少索引或规划不周的迁移。 关键在于理解你的*工作负载*。关系数据库擅长一致性读取(如金融交易),而 NoSQL 解决方案可能更适合高容量、最终一致性的写入。 选择数据库不是为了面向未来,而是承认故障模式及其影响。过于复杂、分布式系统会引入显著的开销并可能阻碍开发。通常,一个更简单、建模良好的关系数据库会为你提供更长时间的服务。 明智的扩展首先关注数据建模和优化。优先考虑清晰性并避免不必要的复杂性。资深工程师不会测试你对数据库类型的了解,而是测试你评估权衡、理解风险以及选择最符合业务需求和团队能力解决方案的能力。

Hacker News新 | 过去 | 评论 | 提问 | 展示 | 工作 | 提交登录[已标记]janandonly 2天前 | 隐藏 | 过去 | 收藏 wrqvrwvq 1天前 | 下一个 [–] 他们称之为有史以来人工智能生成的Hacker News帖子。 ChicagoDave 1天前 | 上一个 | 下一个 [–] 架构是由商业模式驱动的。这包括所选择的运营数据存储类型。如果业务或上下文建模良好,技术栈就会显现出来。即使这样,你也可以运行POC来验证模型及其性能要求。 你不会先选择技术栈。解决方案决定了技术栈。 DeathArrow 1天前 | 上一个 [–] 在选择数据结构和数据库之前,你必须查看数据。 它的形状如何?你将如何使用它? 回答这两个问题将帮助你做出决定。 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请YC | 联系 搜索:

## DISH:一种体积3D打印系统 - 摘要 本研究详细介绍了DISH(基于衍射成像的水凝胶成型)的开发,这是一种新型的体积3D打印系统,能够快速、高分辨率地在各种水凝胶材料中制造复杂的结构。DISH利用由数字微镜器件(DMD)调制并经由棱镜投影到旋转的比色杯中的405nm激光束。DMD投影与比色杯旋转之间的精确同步能够使3D图案在整个体积内固化。 该系统采用复杂的校准过程,包括自适应光学和全息优化,以确保准确的光线传递和剂量控制。这使得能够打印具有亚毫米分辨率的特征。研究人员通过成功地使用一系列材料进行打印——包括PEGDA、SilMA、GelMA和各种树脂——展示了DISH对不同化学性质和粘度的适应性。 通过严格的测试和表征,包括X射线计算机断层扫描,研究团队展示了DISH创建复杂几何形状、空心结构和复杂设计的能力,打印时间以秒为单位。该系统的性能通过优化的算法和材料配方得到进一步提升,为更快、更精确的体积3D打印铺平了道路。

## 次秒级3D打印与全息光场 一篇发表在《自然》杂志上的文章(链接)详细介绍了一种实现次秒级体积3D打印的新技术。研究人员使用“数字全息光场的不相干合成”——本质上是利用投影光来体积固化光敏树脂,在整个物体形状中*同时*创建物体,而不是逐层构建。 该过程利用旋转镜和数字微镜器件(DMD)从多个角度投影光线,有效地“绘制”树脂。虽然目前的打印尺寸较小(小于一厘米,通常在5-6毫米左右),但该方法展示了创建复杂形状的能力,如图中的鱿鱼和一个微型Benchy船。 评论员强调了令人印象深刻的分辨率(12微米特征)以及无需重新工具即可快速、大规模生产复杂零件的潜力,类似于芯片制造。它不是一个能够制造任何材料的“星际迷航复制器”,而是朝着更快、更高效的基于聚合物的3D打印迈出的重要一步。

启用 JavaScript 和 Cookie 以继续。

## 时空数据库 2.0 与 Three.js:实时 3D 的新方法 时空数据库 2.0 提供了一种构建实时和多人 Three.js 应用的新方法。它不再采用传统的 API 轮询,而是将游戏逻辑置于数据库*内部*,并通过 WebSocket 将状态变更流式传输到客户端。开发者使用表格定义世界状态(玩家、实体),使用带有 reducer 的 mutations 进行修改,并使用 views 获取派生数据。 这使得服务器能够充当权威的世界模拟器,让 Three.js 客户端专注于渲染和插值。常见的游戏事件,如移动或生成,可以直接转化为场景更新。虽然它本身不是游戏引擎,但时空数据库为低延迟、同步的 3D 体验提供了强大的基础——包括多人游戏、协作工具和虚拟世界。 它提供慷慨的免费层级和可负担的付费选项。其主要优势在于专注于实时状态复制,这是传统数据库中经常缺乏的功能。开发者仍然需要自行实现延迟掩码和网络代码。

## SpacetimeDB & ThreeJS 总结 SpacetimeDB 2.0 提供了一种游戏服务器架构的新方法,允许开发者在数据库*内部*运行游戏逻辑。世界状态被建模为数据库表,游戏动作(如移动或伤害)被处理为“reducers”。客户端,例如使用 ThreeJS 构建的客户端,通过 WebSockets 接收高效的实时更新,而不是传统的轮询,从而保持服务器的权威性。 该服务提供慷慨的免费套餐,付费计划从每月 25 美元起。虽然它因易于集成和简化开发(特别是对于用户生成内容 (UGC))而受到赞扬,但人们也对其供应商锁定表示担忧。 虽然该数据库是开源的,但 BUSL 许可证限制了自托管。讨论集中在平衡快速开发的好处与依赖第三方服务的风险,以及它是否能很好地扩展到大型、动态的游戏状态,例如体素环境。 许多用户表示有兴趣探索 SpacetimeDB 用于他们的项目。

## 在AMD Ryzen AI上运行大型语言模型 最近一篇在Hacker News上详细介绍的实验,探讨了使用AMD Ryzen AI Max+集群本地运行一万亿参数的LLM。虽然在技术上可行,但性能目前有限:首次生成token需要约1.5分钟,速度为8.3个token/秒,远低于ChatGPT的亚秒级响应和约50个token/秒的速度。 讨论的中心是瓶颈,许多人认为互连带宽(目前为5Gbps以太网)是主要限制因素,而非内存带宽。升级到更快的连接,如雷电(40Gbps)甚至通过PCIe的100GbE,可以提高性能。 达到ChatGPT级别性能的成本估计约为3万美元,用于一个24节点系统。用户也分享了类似设置的经验,指出稳定性问题(尤其是在Minisforum设备上)以及充足散热的重要性。Framework Desktop被提及为硬件选项,但因升级能力有限和网络速度慢而受到批评。总而言之,虽然正在取得进展,但当前的本地LLM性能仍然落后于云端解决方案。

三星在其最新的One UI 8.5更新中移除了Android恢复菜单中的关键工具,引发了用户困惑。诸如“通过ADB/SD卡应用更新”、“清除缓存分区”和诊断测试等选项正在被移除,仅留下重启、恢复出厂设置和关机等基本功能。 GalaxyClub首先注意到这一变化,它伴随着2026年2月的安全更新,并包含关于降级软件的警告。虽然原因尚不清楚,但推测指向加强的安全措施,可能为了遏制软件泄露——三星目前正在对泄密者采取法律行动。 目前,Galaxy S26 Ultra在其1月份的更新中仍然保留了完整的恢复工具,但这可能会改变。此举大大限制了用户手动 sideload 更新和执行高级故障排除的能力。

## 三星 Galaxy 更新移除关键定制工具 三星 Galaxy 近期更新移除了 Android 恢复菜单中的工具,包括旁加载更新和清除缓存分区的能力。虽然标准的应用程序“旁加载”仍然可行,但此更改影响了从文件安装操作系统更新——即使在解锁设备上,也需要更新由三星签名。 讨论的中心在于三星日益收紧设备控制,模仿苹果的做法。用户指出,在之前支持 CyanogenMod 等开源项目后,三星正在逐渐放弃对“折腾者”的迎合。人们对谷歌通过 Play Integrity 加强控制以及对 F-Droid 等自由开源软件的影响表示担忧。 一些用户已经找到了使用解锁的引导加载程序和自定义 ROM 的解决方法,但这些选项正变得越来越有限。此举引发了关于用户控制权、安全与商业利益以及 Android 在开放性和定制方面是否正在失去相对于 iOS 的优势的争论。 许多评论者建议如果 Android 继续朝着这个方向发展,可以考虑切换到 GrapheneOS 或甚至 iOS 等替代方案。

## 燕麦与胆固醇:一项令人惊喜的益处 最近,波恩大学的一项发表在《自然通讯》上的研究表明,短期的、高强度的燕麦饮食可以显著降低胆固醇水平,甚至在六周后仍然有效。研究人员发现,患有代谢综合征(糖尿病和心脏病的风险因素)的参与者,在连续两天每天食用300克燕麦,并限制卡路里的同时,有害的低密度脂蛋白胆固醇(LDL)降低了10%。 这种改善比单纯限制卡路里而不采用燕麦饮食的人更明显。 这些益处似乎与肠道细菌的变化有关。 燕麦的摄入增加了产生类绿原酸等化合物的有益细菌,而类绿原酸已知可以改善胆固醇代谢,并有助于消除与胰岛素抵抗相关的化合物。 有趣的是,较长时间、适量的每日80克燕麦摄入只显示出适度的效果。 该研究表明,周期性的、短期的燕麦强化饮食可能是维持健康胆固醇并潜在预防糖尿病的一种良好策略。 进一步的研究计划用于确认这些长期的预防效果。

## 燕麦与胆固醇:Hacker News 摘要 一篇ScienceDaily文章引发了Hacker News的讨论,强调了燕麦快速降低胆固醇的好处。文章称,仅食用两天燕麦就能使坏胆固醇降低10%。 用户迅速指出纤维——特别是燕麦中的β-葡聚糖——是关键成分,并引用研究表明纤维可降低26%的心血管死亡率和22%的癌症风险。讨论涵盖了不同类型的燕麦(钢切燕麦 vs. 燕麦片,隔夜燕麦)和烹饪方法,大多数人认为尽量减少加工最好。 许多评论者分享了燕麦对他们的胆固醇水平产生积极影响的个人经历,而另一些人则提醒说,个体结果各不相同,遗传因素和整体饮食等因素起作用。一些人指出该研究中热量限制饮食的重要性,以及将燕麦与其他健康食物结合的潜在益处。 对话还涉及更广泛的营养趋势、胆固醇管理的复杂性以及过度限制饮食的潜在缺点。最终,共识倾向于燕麦是有益于健康生活方式的补充,但并非万能的解决方案。

更多

联系我们 contact @ memedata.com