给软件开发者准备的优质简报,每日阅读 10分钟。
We tasked Opus 4.6 using agent teams to build a C Compiler
🔼 676 | 💬 660
用并行Claude团队构建C编译器的实验与启示
- 实验设计与执行:研究员Nicholas Carlini采用“智能体团队”方法,让16个Claude实例在无人工干预下并行协作,耗费近2000次会话和约2万美元API成本,成功构建出能编译Linux 6.9内核的10万行Rust C编译器
- 技术实现机制:通过无限循环bash脚本持续运行Claude,每个智能体在独立Docker容器中工作,使用git文件锁机制声明任务,智能处理合并冲突,并自动推送代码变更
- 关键设计经验:为克服模型局限,测试框架需精简输出避免上下文污染,用grep友好格式记录日志,针对时间盲点设计快速采样模式;通过将Linux内核编译拆分为随机子集与GCC对照验证,实现并行缺陷修复;设置专职智能体分别负责代码去重、性能优化和文档维护
- 成果与局限性:编译器支持x86/ARM/RISC-V架构,能编译QEMU、FFmpeg等大型项目,通过99%的GCC torture测试,甚至可运行Doom;但缺乏16位x86编译器需调用GCC,自有汇编器和链接器存在缺陷,生成代码效率低于未优化GCC
- 风险与展望:完全自主开发可能因测试通过而产生错误安全感,部署未经验证的代码存在安全隐患;该实验展示了LLM实现复杂项目的潜力,但也预示着需要新的安全策略来应对自主代码生成时代的风险
LinkedIn checks for 2953 browser extensions
🔼 502 | 💬 231
LinkedIn Chrome扩展指纹识别项目分析
- LinkedIn在每次页面加载时静默检测2,953个Chrome扩展程序的存在
- 项目提供完整的扩展ID列表及对应名称、Chrome网上应用店链接等数据
- 78%的扩展可通过Chrome网上应用店直接查找,22%需通过Extpose服务获取(已下架或不可用扩展)
- 提供
fetch_extension_names.js脚本用于批量获取扩展名称及商店链接 - 原始数据提取自LinkedIn的指纹检测脚本(fingerprint.js)
- 项目获得97个star和4个fork
The Waymo World Model: A New Frontier for Autonomous Driving Simulation
🔼 364 | 💬 220
Waymo 世界模型:自动驾驶仿真的新前沿
- 技术基础与定位:基于 Google DeepMind 的 Genie 3 通用世界模型构建,针对驾驶领域进行专门适配,是 Waymo”可证明安全 AI”方法的三大关键支柱之一,已在现实世界积累近 2 亿英里完全自动驾驶里程
- 涌现式世界知识:继承 Genie 3 在海量多样化视频上的预训练知识,可生成现实中几乎无法大规模采集的极端场景,包括龙卷风、金门大桥小雪天气、洪水火灾等自然灾害,以及遇到大象、狮子、Texas 长角牛、T-rex 装扮行人、与汽车一样大的风滚草等罕见长尾事件
- 多模态高保真输出:同时生成摄像头图像和激光雷达点云数据,提供精确的深度信息和丰富的视觉细节,可精确重建从日常驾驶到极端情况的各类场景
- 三大控制机制:驾驶动作控制(模拟反事实场景,生成与原始路径完全不同的新路线)、场景布局控制(自定义道路布局、交通信号和交通参与者行为)、语言控制(最灵活,可通过自然语言调整时间、天气或生成全新场景)
- 视频转换能力:可将手机或行车记录仪拍摄的普通视频(如挪威风景、拱门国家公园、死亡谷等)转换为多模态模拟,展示 Waymo Driver 如何”感知”同一场景,最大化模拟的真实性和准确性
- 可扩展推理:通过高效模型变体大幅降低计算成本,支持长距离场景的大规模仿真,实现 4 倍速播放,在真实遇到极端情况前为 Waymo Driver 提供充分准备
Recreating Epstein PDFs from raw encoded attachments
🔼 490 | 💬 178
从原始编码附件重建未经审查的爱泼斯坦PDF文件
- 美国司法部在爱泼斯坦档案发布中出现严重失误:审查共谋者姓名、以误导性方式审查女性照片、遗漏允许Reddit用户登录爱泼斯坦账户的未 redact 凭证、以及因错误转换Quoted-Printable编码导致最新批次文件损坏,而作者在调查时意外发现部分二进制附件以76页长的
Content-Transfer-Encoding: base64格式被完整包含,未被审查者识别为需要处理的内容 - 作者发现的样本EFTA00400459是一封邮件中的附件,实际内容为”DBC12 One Page Invite with Reply.pdf”的base64编码,以
>字符开头,原可简单通过复制粘贴并base64解码恢复,但这些内容是DoJ对打印件的扫描件经过OCR处理后的版本 - 为恢复原始PDF,作者尝试了多种OCR方案:DoJ原版OCR产生额外非法字符(如逗号和方括号),Adobe Acrobat Pro更差(甚至在base64内容中插入空格),开源工具tesseract因Courier New字体问题表现不佳(行长度不一致、有时只识别行首字符),Amazon Textract经2x放大后是相对最佳选择但仍存在平均1-2字符的行长度偏差
- 核心技术难题在于:低质量JPEG扫描中无法可靠区分”1”和”l”——Courier New从IBM Selectric数字化时未考虑墨带重量导致字符纤细,这两个字符在扫描后几乎无法辨认;且PDF经过flate压缩无法用strings等工具直接提取,qpdf无法从损坏输入重建PDF结构
- 作者通过逐行试错解码的方法对纯文本部分进行1/l纠正获得100%准确率,但对压缩部分此方法失效;即使成功解码部分内容,qpdf也无法从中重建PDF结构
- 作者已将原始EFTA00400459.pdf、逐页无损WebP图像及Textract OCR结果上传至互联网档案馆,向技术社区发起挑战:看谁能成功重建原始PDF,或在其他爱泼斯坦档案中寻找并重建其他可恢复的base64编码附件
A new bill in New York would require disclaimers on AI-generated news content
🔼 450 | 💬 176
纽约州拟立法要求AI生成新闻内容标注免责声明
- 纽约州参议员Patricia Fahy和众议员Nily Rozic提出《纽约人工智能基本要求新闻法案》(简称NY FAIR News Act),要求新闻机构对任何“主要由生成式人工智能创作”的内容标注免责声明
- 法案要求所有AI生成的新闻内容(包括文字、音频和图像)在发布前必须经过具有编辑控制权的人工审核
- 新闻机构必须向员工披露AI使用细节,并建立保护机制防止AI技术获取机密信息来源
- 法案禁止因采用生成式AI而解雇记者或削减其薪酬福利,包含明确的劳工保护条款
- 立法者指出AI生成内容可能存在虚假误导问题,且76%的美国民众担忧AI未经授权复制新闻内容
- 法案获得WGA-East、SAG-AFTRA、DGA及纽约新闻工会等多家行业工会的广泛支持
Microsoft open-sources LiteBox, a security-focused library OS
🔼 207 | 💬 105
Microsoft LiteBox:安全优先的沙盒化库操作系统
- 核心定位:Microsoft开发的沙盒化库操作系统,通过大幅精简与主机的接口来减少攻击面,支持内核模式和用户模式两种执行场景
- 架构设计:采用创新的”北向”(North)接口层与”南向”(South)平台层分离架构,北向暴露类似Rust的nix/rustix风格接口,南向提供Platform接口抽象,实现任意组合的灵活扩展
- 安全机制:通过Syscall重写器拦截并精简系统调用接口,显著降低攻击面;利用AMD SEV SNP、LVBS等硬件安全隔离技术提供更强的内存保护;使用zerocopy库消除大量unsafe代码以提升内存安全性
- 多场景支持:支持在Windows上运行未经修改的Linux程序、在Linux上沙盒化Linux应用、在AMD SEV SNP安全飞地上运行程序、在OP-TEE安全监控程序/Linux上运行OP-TEE程序、在LVBS平台上运行
- 技术实现:95.7%使用Rust构建;提供lock tracing等开发调试工具;支持ringbuf代理层优化网络吞吐量至5.78 Gbits/sec
- 项目状态:MIT许可证开源,拥有597个GitHub星标、28个分支、527次提交和10位贡献者;明确标注为”正在积极演进”,正朝着稳定版本努力,API和接口可能随设计成熟而变化
Things Unix can do atomically (2010)
🔼 227 | 💬 88
UNIX/POSIX 原子操作技术指南
- UNIX/POSIX 系统提供多种原子操作,可作为构建线程安全和多进程安全程序的构建块,无需使用互斥锁或读写锁;核心理念是尽可能让内核处理锁定工作,因为内核开发者的可靠性高于自行实现,且使用 CPU 时间在已原子化的操作上加锁是愚蠢的
- 基于路径名的原子操作:
mv -T <oldsymlink> <newsymlink>原子替换符号链接目标(底层调用rename(2),不适用于 Mac OS X)、link()创建硬链接用于文件锁定(失败返回EEXIST,锁状态对ls可见)、symlink()创建符号链接用于目录锁定(失败返回EEXIST,注意 inode 是有限资源,示例机器有 1,245,184 个)、rename()原子重命名文件(要求同一文件系统,失败返回ENOENT)、open()配合O_EXCL原子创建文件(失败返回EEXIST)、mkdir()原子创建目录(失败返回EEXIST) - 基于文件描述符的原子操作:
fcntl()支持文件区域锁定(F_GETLK/F_SETLK/F_SETLKW,后者会阻塞直到获取锁)、租约机制(F_GETLEASE/F_SETLEASE)用于监听其他进程对文件的open或truncate操作、mmap()配合MAP_SHARED和msync()实现进程间内存映射文件共享 - 基于虚拟内存的原子操作:GCC 内置原子函数(如
__sync_fetch_and_add、__sync_val_compare_and_swap等)提供完整内存屏障,确保操作期间内存操作不会被重排序,是无锁算法的基础 - 注意事项:这些原子操作技术主要适用于本地文件系统,在 NFS 环境下因涉及多个内核而无法保证原子性;Linux 的强制文件锁定机制存在竞态条件问题,不可靠
Don't rent the cloud, own instead
🔼 1167 | 💬 487
拥有价值500万美元的数据中心:comma.ai的实践经验
- 自建而非租用的战略考量:comma.ai选择自建数据中心而非使用云服务,核心原因在于掌控自身计算命运。云服务入驻容易退出难,易陷入高成本困境;自建让工程师专注于Watts、bits、FLOPs等底层技术,带来显著成本优势——comma.ai估计其500万美元的投入,若使用云服务将超过2500万美元。此外,当计算资源受限时,工程师会被激励优化代码而非简单增加预算,从而催生更高效的解决方案。
- 电力与冷却系统:数据中心位于圣迭戈办公室,目前最大功耗约450kW,2025年电费支出约54万美元(当地电价超40美分/千瓦时,是全球平均的3倍)。冷却采用纯外部空气方案,配备双48英寸进风和排风风扇,配合循环风扇混合热废气与进气以将湿度控制在45%以下,通过PID控制环优化温度管理,整体仅消耗几十千瓦电力。
- 计算与存储架构:主力计算资源为600块GPU,分布于75台自主研发的TinyBox Pro机器中,每台配备2个CPU和8块GPU,既用于训练也用于通用计算。存储使用Dell R630/R730服务器,总容量约4PB SSD,支持每节点20Gbps随机读取,可直接以约1TB/s的速度读取原始数据进行训练而无需缓存。网络层面采用3台100Gbps以太网交换机和2台InfiniBand交换机支撑GPU集群训练时的all-reduce通信。
- 软件栈与分布式系统:通过Salt实现自动化部署,minikeyvalue(mkv)构建3PB主存储阵列、300TB缓存阵列及冗余模型存储阵列;Slurm管理计算节点,PyTorch FSDP执行跨GPU节点的分布式训练;自主研发的miniray任务调度器可将任意Python代码扩展至数百台机器并行执行,配备Triton推理服务器支持动态批处理模型推理,实现从模型权重存储到推理服务的无缝衔接。
- 端到端训练工作流与代码管理:最复杂的应用是端到端驾驶模型训练,需在训练过程中实时生成模拟驾驶数据。通过NFS单仓库管理所有代码(本地修改自动同步至共享存储),训练任务启动时自动同步代码及Python依赖,耗时仅约2秒。系统通过单一命令即可协调存储、网络、GPU集群和推理服务等所有基础设施,例如控制挑战纪录仅需约1小时数据中心使用时间便由miniray完成。
My AI Adoption Journey
🔼 861 | 💬 348
Mitchell Hashimoto 的 AI 采用之旅
- 采用工具的三个必经阶段:Hashimoto 将采用新工具的过程总结为低效期、勉强可用期、最终进入改变工作流程与生活的突破期。面对 AI 工具,他必须强迫自己度过前两个阶段,因为现有工作流程已让他满意舒适,而采用新工具本身就意味着额外的工作。
- 放弃聊天机器人,转向智能体:聊天界面(如 ChatGPT、网页版 Gemini)在编程中实用性有限,它们依赖训练数据输出结果,纠正错误需要人类反复告知。必须使用智能体(Agent)——能够读取文件、执行程序和发出 HTTP 请求的 AI 系统,通过循环调用外部行为来完成任务。
- 复现自己的工作以建立深刻理解:使用 Claude Code 初期不满意时,他采用”双重工作法”——先手动完成工作,再让智能体复现相同结果(不让它看到手动方案)。这个痛苦的过程带来了三点核心认知:将任务分解为清晰可执行的小单元、模糊请求需分离规划与执行、给智能体验证能力能减少错误并防止回归。
- 收工智能体的有效任务类型:每天最后 30 分钟启动智能体执行三类任务:深度研究(如调查特定领域库的特点与优劣势)、并行探索不同想法、以及 Issue 和 PR 的分类审查(只生成报告不自动回复)。智能体通常半小时内完成,让第二天有个”热启动”。
- 外包高置信度任务与关闭通知:对于有把握智能体能做好的”扣篮”任务,让它们在后台运行的同时,人类专注于深度思考工作。关键是关闭智能体的桌面通知,避免频繁上下文切换带来的效率损失。
- 构建”挽具”系统持续改进:通过 AGENTS.md 文件记录智能体常见错误行为,并开发自动化验证工具来防止重复犯错——即”挽具工程”(harness engineering)。Hashimoto 当前目标是始终有一个智能体在后台运行,但只为真正有帮助的任务才使用。