2024-02-14
28 篇热帖
2. Stable Cascade (github.com)
Stable Cascade 摘要
核心创新与优势
Stable Cascade 是基于 Würstchen 架构的文本生成图像模型,其核心创新在于极高的潜空间压缩比(42倍),远超 Stable Diffusion 的8倍。这使得模型在推理速度和训练成本上显著优化,同时能保持高质量的图像重建。与同类模型(如 SDXL、Playground v2)相比,Stable Cascade 在提示词对齐和美学质量评估中表现突出。
模型架构
模型采用级联结构,由三个阶段组成:
- Stage A:作为 VAE(变分自编码器),负责基础图像压缩。
- Stage B:扩散模型,进一步处理压缩数据,支持细节重建。
- Stage C:文本条件扩散模型,在高度压缩的 24×24 潜空间中生成图像。
模型发布版本
- Stage C:提供 1B 和 3.6B 参数版本(推荐使用后者)。
- Stage B:提供 700M 和 1.5B 参数版本(1.5B 版本细节还原更优)。
- Stage A:固定 20M 参数模型。
主要应用场景
通过官方代码库和 Notebooks 支持多种任务:
- 文本生成图像:基础文本到图像、图像变体、图像到图像转换。
- ControlNet 集成:支持修复/扩图、人脸一致性、边缘检测、超分辨率等控制功能。
- LoRA 微调:可针对特定概念(如自定义主题)训练并融入生成。
- 图像重建:利用 Stage A&B 作为高效扩散自编码器,实现高压缩比图像编码与解码。
技术生态兼容性
支持主流扩散模型扩展技术,包括微调、ControlNet、LoRA、IP-Adapter 等,并与 Diffusers 库集成。
资源与许可
- 代码采用 MIT 许可。
- 模型权重需遵守 Stability AI 非商业研究许可。
- 提供 Gradio 应用入口,支持交互式使用。
性能与效率
尽管最大模型参数量比 Stable Diffusion XL 多 14 亿,但凭借高压缩架构,推理速度更快,训练成本更低,适合对效率敏感的应用场景。
3. Hi everyone yes, I left OpenAI yesterday (twitter.com)
摘要
该文章标题明确表示作者已于昨天离开OpenAI。然而,正文内容并未提供关于离职的任何具体细节、原因或背景信息。相反,文中只显示了一条与网站技术问题相关的错误提示,指出某些隐私扩展可能导致在x.com(原Twitter)上出现问题,并建议用户禁用这些扩展后重试。
核心要点:
- 作者公开宣布了离开OpenAI的事实。
- 文章正文内容缺失,仅包含一个通用的技术错误信息。
- 未能提供关于离职的进一步说明。
4. Bob Moore, who founded Bob's Red Mill, has died (www.nytimes.com)
5. Memory and new controls for ChatGPT (openai.com)
ChatGPT 记忆功能与控制更新总结
核心功能演进
ChatGPT 的记忆功能旨在通过参考用户过往对话,提供更相关、个性化的回答,避免用户重复提供信息。
关键时间点更新
2024年9月(早期测试)
- 面向用户:开始向免费和Plus用户小范围推出。
- 核心功能:可跨对话记忆用户提及的事项。
- 用户控制:
- 可通过对话明确指令其记忆或遗忘特定信息。
- 可询问它记住了什么。
- 可在设置中完全关闭记忆功能。
- 当记忆更新时,用户会收到提示,并可方便地管理所有记忆内容。
2025年4月(功能增强)
- 面向用户:为Plus和Pro用户提供(团队、企业、教育版计划几周后推出)。
- 核心升级:记忆变得更全面。除了用户主动要求保存的记忆,它现在会参考所有过往对话来生成回答。
- 记忆构成:
- 保存的记忆:用户要求记住的特定信息。
- 聊天记录:ChatGPT从过往对话中自行收集的、用于优化未来对话的见解。
- 用户控制:
- 在设置中可分别关闭对“保存的记忆”或“聊天记录”的引用。
- 可在对话中直接要求其修改对你的认知。
- 可使用临时对话模式,该模式下的对话既不使用也不更新记忆。
2025年6月(广泛推出与优化)
- 面向用户:记忆改进功能开始向免费用户推出。
- 核心区别:
- 免费用户:获得记忆功能的轻量版本,提供跨对话的短期连续性。
- Plus和Pro用户:记忆功能提供对用户的长期理解。
用户控制权总结
贯穿所有更新的核心原则是 “你掌控ChatGPT的记忆”。用户始终拥有以下控制选项:
- 完全关闭:在设置中关闭整个记忆功能。
- 精细管理:可选择关闭对“保存的记忆”或“聊天历史”(过往对话)的引用。
- 主动编辑:通过对话要求ChatGPT记忆、遗忘或修改它记住的信息。
- 临时会话:使用“临时聊天”进行不留存记忆的对话。
- 查看记忆:可通过询问或在设置中查看ChatGPT记录的内容。
6. How to center a div in CSS (www.joshwcomeau.com)
CSS居中元素的多种方法总结
介绍
在CSS中居中元素是一个常见但历史上较复杂的问题。随着CSS的发展,现在有多种方法可以实现居中效果。本文总结了不同场景下的居中策略及其权衡。
主要居中方法
1. 使用自动外边距(auto margins)
- 适用场景:水平居中单个元素,不影响兄弟元素
- 关键属性:
- 设置
max-width: fit-content让元素根据内容收缩 - 使用
margin-inline: auto(推荐)或margin-left: auto; margin-right: auto
- 设置
- 原理:auto margin 会吸收可用空间,两侧均等分配时实现居中
2. 使用弹性盒布局(Flexbox)
- 适用场景:最通用的居中方案,可水平/垂直居中单个或多个元素
- 关键属性:
.container { display: flex; justify-content: center; /* 水平居中 */ align-items: center; /* 垂直居中 */ } - 特点:即使子元素溢出容器也能保持居中,支持通过
flex-direction控制排列方向
3. 使用定位布局(Positioned layout)
- 适用场景:居中浮动UI元素(如对话框、提示框、横幅)
- 关键属性:
.element { position: fixed; /* 或 absolute */ inset: 0; width: [尺寸]; height: [尺寸]; margin: auto; } - 原理:通过
inset: 0将元素锚定到四边,margin: auto解决不可能的条件(元素尺寸小于容器时自动居中)
4. 使用网格布局(CSS Grid)
- 适用场景:需要简洁居中方案或将多个元素堆叠在同一单元格
- 关键属性:
.container { display: grid; place-content: center; /* 水平和垂直居中 */ } - 注意事项:与Flexbox不同,网格布局中百分比尺寸相对于网格单元格计算,可能导致意外缩小
5. 文本居中
- 适用场景:居中文本内容
- 关键属性:
text-align: center - 说明:文本居中需要单独处理,可与上述布局方法结合使用
特殊场景处理
未知尺寸元素居中
使用 fit-content 值:
.element {
position: fixed;
inset: 0;
width: fit-content;
height: fit-content;
margin: auto;
}
偏移居中
通过调整定位属性或使用 transform:
/* 方法1:调整底部偏移 */
.element {
position: fixed;
inset: 0;
bottom: 48px; /* 向上偏移 */
margin: auto;
}
/* 方法2:使用transform */
.element {
transform: translateY(-48px);
}
未来发展趋势
CSS正在扩展 align-content 属性在流式布局中的支持,未来可能实现更简单的居中方式。
方法选择指南
- 水平居中单个元素:使用自动外边距
- 浮动UI元素居中:使用定位布局 + 自动外边距
- 元素堆叠居中:使用CSS Grid
- 文本居中:使用
text-align - 其他大多数情况:使用Flexbox(最通用)
总结
掌握这些居中方法的关键在于理解每种布局模式的工作原理,而不仅仅是记忆代码片段。根据不同场景选择合适的方法,可以高效实现各种居中效果。
7. Handwriting but not typewriting leads to widespread brain connectivity (www.frontiersin.org)
根据《Frontiers in Psychology》发表的研究,手写(而非打字)能引发更广泛的大脑连接性,这对学习和记忆具有重要意义。
该研究比较了36名大学生在使用数字笔手写单词与使用键盘打字单词时的大脑活动。通过256通道高密度脑电图记录和连接性分析发现:
- 大脑连接模式差异显著:手写时,大脑在顶叶和中央区域的theta(3.5-7.5 Hz)和alpha(8-12.5 Hz)频段,表现出比打字时更广泛、更复杂的连接性模式。这些模式涉及多个脑网络枢纽和节点。
- 对学习与记忆的益处:研究表明,上述脑区及频率的连接模式与记忆形成和新信息编码密切相关,有益于学习。手写通过精确控制手部运动,整合了视觉、运动指令和本体感觉反馈,从而促进了这些有益的学习连接。
- 教育启示:研究者建议,应让儿童从小在学校接触手写活动,以建立为学习提供最佳条件的神经连接基础。同时,鉴于技术发展,教育者应根据具体情境(如课堂笔记或撰写文章)引导学生选择最有效的书写方式。
研究方法:研究使用E-prime软件呈现单词,参与者分别用数字笔在屏幕和键盘进行书写/打字。通过高密度EEG(500 Hz采样)记录脑电数据,并利用BESA软件进行连贯性分析和统计检验(包括置换检验和集群分析)。
结论:手写所涉及的精细、复杂的运动模式,比打字的重复性按键动作,更能刺激大脑形成广泛的神经网络连接,从而为学习创造更优的神经条件。
8. Satya Nadella uses an IBM AS/400 in 1993 (thechipletter.substack.com)
文章摘要:Satya Nadella 1993年使用IBM AS/400演示
本文展示了一段1993年的历史视频,记录了时年26岁的微软现任CEO萨提亚·纳德拉进行技术演示的场景。
核心事件:
- 纳德拉现场演示了将数据从IBM AS/400计算机系统传输到Microsoft Excel中的过程。
- 演示中强调了数据迁移到Excel后“表现更佳”的优势。
- 演示结束后,整个团队进行了略显局促的现场问答,众人挤在镜头前合影。
历史意义与变迁:
- 该视频被视为技术权力转移的象征——从IBM主导的大型机时代,转向以微软Excel为代表的个人电脑软件时代。
- 三十年后,IBM AS/400已基本退出主流(部分被包括微软Azure在内的云服务取代),而Excel几乎无处不在。
- 文章通过纳德拉近期的自嘲(“我女儿看到这张照片问这是谁”)拉近与读者的距离,暗示每个人都可能有职业生涯早期的青涩时刻。
9. 100 Years Ago, IBM Was Born (spectrum.ieee.org)
10. Wi-Fi jamming to knock out cameras suspected in nine Minnesota burglaries (www.tomshardware.com)
Wi-Fi干扰器用于入室盗窃案分析
案件概况
- 地点:美国明尼苏达州伊迪纳市(Edina, Minnesota)
- 事件:过去六个月内发生九起入室盗窃案,嫌疑人疑似使用Wi-Fi干扰器瘫痪智能家居安防设备
- 作案模式:
- 针对富裕社区住宅
- 提前观察,选择住户外出时作案
- 使用Wi-Fi干扰器使无线安防摄像头失效
- 主要盗取保险箱、珠宝、高端设计师商品等贵重物品
技术原理
- Wi-Fi干扰器并非完全阻断信号,而是通过使无线设备通信混乱来达到目的
- 工作原理:通过制造大量无线流量,使正常通信数据无法传输
- 影响范围:所有依赖无线连接的安防设备均可能受影响,包括视频门铃、无线摄像头等
技术普及趋势
- 历史案例:该技术用于辅助盗窃的报道可追溯至数年前
- 2020年:Ring门铃因Wi-Fi反认证攻击未能记录窃贼
- 2021-2023年:类似报道逐年增加
- 影响品牌:Ring(亚马逊旗下)、Blink(亚马逊)、Nest(谷歌)等品牌的无线安防产品均存在漏洞
- 设备获取:干扰器在2024年极易购买
- 价格区间:40-1000美元
- 购买渠道:网络平台便捷购买
- 法律状态:在美国使用Wi-Fi干扰器属违法行为,但购买渠道仍广泛存在
安防建议
- 有线连接:对支持有线连接的设备优先使用物理线缆连接
- 本地存储:选择具备本地视频存储功能的设备
- 模拟有人在家:利用智能家居技术模拟家中有人状态(如自动开关灯光)
- 信号监控:启用设备的中断报警功能,在信号丢失时发送提醒
该案例显示,随着智能家居安防设备的普及,犯罪手法也在技术化升级。传统依赖无线连接的安防系统面临新型技术威胁,用户需采取多层次安防策略以增强防护能力。
11. Show HN: Play the game I'm developing directly on its website (athenacrisis.com)
Athena Crisis 是一款现代复古风格的回合制策略游戏。开发者正在其官方网站上开放试玩,玩家可以直接在线体验这款游戏。
12. Only real people can patent inventions – not AI, US Government says (www.cnn.com)
美国政府关于AI发明专利的最新指导方针
核心原则
美国专利商标局(USPTO)明确规定,只有自然人(real person)才能被列为专利的发明人,人工智能(AI)本身不能作为发明人或共同发明人。要获得专利,人类必须对发明做出“显著贡献”(significant contribution)。
指导方针的背景与目的
- 该方针是拜登政府应对AI问题的系列行动之一,依据2023年秋季的行政命令,在2024年2月底前发布。
- 旨在鼓励创新,确保涉及AI的发明可以申请专利,同时维护人类创造力的核心地位,为专利申请中AI的使用设定基本预期。
- 指引与现有判例法一致,尤其是2023年联邦上诉法院在“Thaler v. Vidal”案中的裁决,该裁决已认定AI不能被列为美国专利的发明人。
“显著贡献”的界定
“显著贡献”的具体标准是模糊且依具体案例而定的,其解释将在实际应用及可能的司法辩论中逐步明确。
- 不构成显著贡献的情况:仅向AI聊天机器人提出问题(例如“设计一个遥控车的关键部件”),而未对发明过程做出足够贡献。
- 可能构成显著贡献的情况:人类设计特定的提示,针对特定问题引导AI生成特定解决方案,并能证明其在构思或实施中的具体工作。
潜在挑战与影响
- 实施挑战:专利审查员将面临复杂判断,例如评估提示的复杂程度、对AI系统训练的规划程度等。
- 商业与法律影响:
- 为涉及AI的发明提供专利保护确定性,可能影响数十亿美元投资和AI的市场应用。
- 与美国版权局在AI相关版权保护上的原则保持一致,均强调“人类主导”。
- 潜在问题:
- 指引不要求披露AI的使用,这可能被利用,鼓励“专利流氓”申请宽泛但无实际产品的专利,从而助长低质量专利和无谓诉讼。
结论
USPTO的新指导方针确立了“人类中心”的专利制度框架,延续了现行法律原则,为AI辅助的发明创新提供了法律路径,但在具体执行和潜在滥用方面仍有待观察。
13. Not all TLDs are Created Equal (www.hezmatt.org)
并非所有顶级域名都平等
随着近期塔利班取消 queer.af 域名的注册,国家代码顶级域名(ccTLDs)的脆弱性再次暴露。本文旨在解释ccTLDs与通用顶级域名(gTLDs)的核心区别,以及使用ccTLDs所伴随的多重风险。
顶级域名分类与管理差异
顶级域名(TLD)是域名中最后一段,如 example.com 中的 “com” 或 queer.af 中的 “af”。主要分为两类:
- 通用顶级域名:如
.com、.net、.org以及新出现的.tech、.social等。它们由 ICANN(互联网名称与数字地址分配机构)统一监管,存在一套旨在防止价格滥用和解决纠纷的规则。 - 国家代码顶级域名:均为两个字母,如
.af(阿富汗)、.eu(欧盟)、.ly(利比亚)。它们被分配给特定国家或地区,ICANN对其管理无直接控制权。每个ccTLD的注册政策、定价和存废完全由所属国家自行决定。
使用国家代码顶级域名的主要风险
1. 政治与政权更迭风险
域名的命运与所在国的政治状况紧密相连。例如:
queer.af事件:域名在2018年注册时阿富汗政治环境不同,但政权更迭后被新管理者以意识形态为由取消。.eu与英国脱欧:英国离开欧盟后,其居民不再符合注册.eu域名的资格,导致大量域名面临失效。- 地缘政治冲突:俄乌战争后,虽然ICANN未直接制裁,但部分注册商停止了俄罗斯ccTLDs的业务,一些网站也屏蔽了相关链接。这表明国际关系事件也可能直接影响域名的可用性。
2. 价格与政策不可预测风险
ccTLDs的管理机构在定价和政策上拥有不受约束的权力。例如,2008年塞舌尔政府毫无预警地将 .sc 域名年费从25美元提高到75美元。注册者仅是“租用”而非“拥有”域名,频繁的涨价或政策变动会给长期维护品牌带来巨大成本与麻烦。
3. 资金流向与道德争议风险
部分ccTLD的注册费用可能流向存在争议的政权或与不光彩历史相关的政府。
- 例如,在利比亚卡扎菲执政时期注册
.ly域名,部分费用可能间接支持了其政权。 - 英属印度洋领地的
.io域名,其收入归英国政府,而非被驱逐的原住民查戈斯人。
结论与建议
尽管某些ccTLD因其明确的地理关联性(如 .de 对应德国)在局部使用上可能相对安全,且本地居民可能对政策变化更知情,但总体风险依然很高。注册ccTLD常出于“创意组合”(如单词、文件扩展名)的“虚荣”目的,这往往得不偿失。
相比之下,通用顶级域名受ICANN框架的约束,提供了更可预测的管理、价格控制和争议解决机制。虽然gTLD也非完美无瑕,但风险通常远低于ccTLD。因此,对于绝大多数用户和组织而言,建议优先选择通用顶级域名,以保障网络资产的长期稳定与安全。
14. Fly.io Has GPUs Now (fly.io)
Fly.io 宣布现已提供 GPU 服务,支持在边缘(靠近用户)运行 AI 工作负载。主要要点如下:
服务概述:
- Fly.io 是一家公有云平台,核心优势是将计算资源部署在靠近用户的位置。
- 新增的 GPU 服务旨在支持用户在边缘执行 AI/ML 任务,如语音识别、文本处理、图像生成等。
GPU 规格与配置:
- 提供 Nvidia A100 GPU,配备大容量显存(40GB 或 80GB),支持 CUDA。
- 部署在 GPU 上的应用默认配备 8 个 AMD EPYC CPU 核心,并可附加最多 500GB 的存储卷。
- 即将提供(现已可用)Lovelace L40s GPU。
部署与易用性:
- 部署简便,用户只需在
fly.toml配置文件中指定 GPU 类型(如vm.size = "a100-40gb")并选择基础镜像(例如 Ollama),然后执行部署命令即可。 - 文章以一个生成三明治食谱的 Ollama 应用为例进行了演示。
全球边缘推理与扩展:
- 核心优势在于全球边缘推理。Fly.io 在全球多个数据中心部署了 GPU。
- 用户可以通过单一命令(如
fly scale count 2 --region ams)轻松将应用扩展到新区域(例如阿姆斯特丹),实现全球用户低延迟访问,且使用相同的 IP 和 TLS 证书。
按需使用与成本优化:
- 支持真正的按需计费。通过在服务配置中设置
auto_stop_machines = true和auto_start_machines = true,可以在没有用户请求时自动停止 GPU 实例,避免产生空闲费用。 - 可通过设置
min_machines_running = 0实现完全按需。
可用区域与定价:
- 可用区域:美国、欧盟多个地区以及悉尼。
- 定价:
- Ampere A100 40GB:2.50 美元/小时
- Ampere A100 80GB:3.50 美元/小时
- Lovelace L40s:2.50 美元/小时
- 提供预留实例和专用主机折扣。
15. End of Life for Twilio Authy Desktop App (help.twilio.com)
16. Protein biomarkers predict dementia 15 years before diagnosis in new study (warwick.ac.uk)
研究核心
华威大学与复旦大学在《自然·衰老》发表的最新研究表明,通过血液中的蛋白质生物标志物组合,可在临床确诊痴呆症前15年准确预测疾病风险。
研究方法与数据
- 样本规模:基于英国生物银行队列,涵盖52,645名健康参与者的血液样本(采集于2006-2010年)。
- 跟踪分析:2021-2022年对样本进行蛋白质组学分析,至2023年3月,共1,417名参与者确诊痴呆症。
- 技术手段:利用机器学习分析1,463种蛋白质,最终筛选出11种蛋白质组合成预测模型。
关键发现
- 预测准确性:结合年龄、性别、教育水平和遗传因素后,模型预测准确率(AUC)超过90%。
- 早期预警能力:可在确诊前15年识别痴呆症风险蛋白(如胶质纤维酸性蛋白GFAP),并通过纵向分析追踪疾病轨迹。
- 应用优势:相较于传统侵入性检测(如腰椎穿刺),血液蛋白检测更便捷、无创,适合大规模人群筛查。
实际意义
- 早期干预:为新型药物(如lecanemab)提供早期应用窗口,有望延缓甚至逆转阿尔茨海默病进展。
- 医疗整合:模型可嵌入社区筛查体系(如英国NHS),助力精准医疗发展。
- 研究突破:相比此前依赖复杂生物标志物或家族史的风险模型,蛋白组学模型更易推广。
背景补充
- 此前已有小规模研究提出蛋白生物标志物的可能性,但本次研究以更大样本量和长期追踪验证了可靠性。
- 华威大学与复旦大学通过合作协议推动跨学科研究,本成果是双方合作的重要突破。
17. Bioluminescent petunias now available for U.S. market (lgrmag.com)
发光矮牵牛花登陆美国市场
Light Bio 这家合成生物学初创公司宣布,其生物发光矮牵牛花已在美国正式开售。该公司获得了 NFX 和 Ginkgo Bioworks 等生物科技领军企业的支持,正在通过引入一类能散发幽光的新植物来重塑园艺产业。
人们对发光植物充满好奇,而科学家现已找到了使其亮度大幅提升的方法。发表在《自然-方法》上的研究详细阐述了通过基因改造,使多种植物的生物发光强度最高可增强100倍。一个由26名科学家组成的团队,通过优化从多种发光蘑菇中分离出的基因,成功培育出了这些更亮的植物。
此项新研究建立在早期发现之上,即通过插入从蘑菇中获得的DNA,可以创造出持续发光的植物。研究人员此前揭示了蘑菇生物发光与植物新陈代谢之间的惊人相似性,从而实现了比以往更明亮的光线。在此次报告中,科学家们进一步改良了插入的基因以增强发光效果。
发光矮牵牛花将于4月开始上市,品牌名称为 “萤火虫矮牵牛” ,得名于其明亮的花蕾宛如萤火虫。据报道,美国农业部去年9月通过独立评估认定,Light Bio公司基因工程培育的“萤火虫矮牵牛”可以安全地在美国种植和繁殖。
目前,消费者可通过 light.bio 网站进行预约订购。
18. A bird's eye view of Polars (pola.rs)
Polars 工作原理概览
Polars 的核心设计理念是,作为用户,你无需了解其内部机制,所编写的查询也能默认高性能运行。但为了理解其内部工作方式,本文将从高视角概述 Polars 如何处理查询。
核心架构:DataFrame 前端与查询引擎
Polars 可以被描述为“一个带有 DataFrame 前端的查询引擎”。当你使用其 DataFrame API 时,实际上是在用一种领域特定语言(DSL)编写一个小型程序。这个 API 的设计初衷便是为了并行执行和高性能。
查询的执行大致可分为以下几个阶段:
- 解析与验证:将查询解析为一个逻辑计划(Logical Plan)。该计划描述了用户的意图,但尚未确定具体如何执行。在此阶段,Polars 会预先验证操作的正确性(例如列是否存在),避免执行中途出错。
- 优化:查询优化器会遍历逻辑计划数次,应用各种优化规则,消除不必要的工作,生成一个优化的逻辑计划。
- 物理计划生成:查询规划器将优化后的逻辑计划转换为物理计划(Physical Plan)。物理计划具体指明了查询将如何执行,并选择最适合当前数据和环境的算法(例如,从多种排序或连接算法中选择最优的一种)。
- 执行:最终的物理计划交由计算内核执行,完成数据处理。
惰性评估:性能优化的基石
一个关键特性是惰性评估(Lazy Evaluation)。当你使用 pl.scan_* 等函数构建查询时,Polars 并不会立即执行,而是返回一个 LazyFrame 对象。这个对象内部主要包含一个逻辑计划树。只有调用 .collect() 时,整个优化和执行流程才会启动。这使得优化器能够全局审视查询,进行最大程度的优化。
以文章中的示例为例:对超过25美元的行程,按区域计算每分钟平均费用。这个查询链在构建后立即返回,因为它只定义了逻辑计划。
关键优化技术:投影下推与谓词下推
查询优化器能显著提升性能。其中两个核心优化是:
- 投影下推(Projection Pushdown):优化器会分析查询最终需要哪些列,并在数据源(如 Parquet 文件读取)阶段就只读取这些列,避免读取和传输无用数据。
- 谓词下推(Predicate Pushdown):优化器会将过滤条件(如
total_amount > 25)尽可能下推到数据源(如文件读取器)执行,使得后续操作(如连接)处理的数据量更少,从而加速整个过程。
通过 .show_graph() 方法可以直观对比优化前后的逻辑计划,观察优化器如何移动和修改节点。
执行与性能增益
物理计划生成后,计算引擎会高效执行。文章通过对比展示了优化带来的巨大收益:在未应用优化的情况下,查询耗时约544毫秒;而应用优化后,耗时降至约135毫秒,实现了约4倍的速度提升。这种性能提升完全自动化,对用户透明,只需专注于编写查询即可。
总结
Polars 通过将高效的 DataFrame API 与基于惰性评估的查询引擎相结合,实现了高性能的数据处理。查询经历从逻辑计划、优化到物理计划执行的完整流程,其中优化器通过投影下推、谓词下推等技术显著减少数据读取和计算量,而这一切复杂性都被对用户友好的 API 所封装。
19. Juvenile great apes love to tease and annoy their elders, study finds (www.theguardian.com)
20. We sped up time series by 20-30x (www.rerun.io)
Rerun 时间序列性能优化总结
核心问题
- Rerun 早期版本绘制大型时间序列(如 100 万点)性能极差,在 M1 MacBook Pro 上单帧渲染耗时约 600ms。
- 性能瓶颈源于其灵活的数据模型(基于时间的实体组件系统),虽然通用性强,但对小型数据(如标量指标)会产生额外开销。
优化目标
- 实现实时、可用的时间序列绘图性能。
- 保持对复杂查询(如范围查询、聚合、多组件组合)的支持,避免特殊化路径。
主要性能开销来源
- 簿记开销:跟踪每个时间戳存在的组件成本高。
- 数据局部性差:灵活数据模型导致数据在内存中分散,影响 CPU 缓存效率。
- 冗余工作:绘制时间窗口时,未变化的中间数据被重复查询和处理。
- 渲染负载:点数多于像素时,产生冗余细分和过度绘制。
优化策略
- 引入缓存层:对查询结果进行缓存,但缓存失效(invalidation)是核心挑战。
- 缓存失效机制:将数据存储视为不可变,通过快照删除旧数据。每个变更(增删行)触发缓存脏标记。
- 懒加载更新:缓存在查询时按需更新,避免更新未使用的缓存。
- 批次处理:利用即时模式架构,在每帧渲染前批量处理累积的变更。
- 并行与共享:在多视图场景下,并行执行查询,通过细粒度锁共享缓存资源,避免重复计算。
- 渲染聚合:对时间序列进行聚合(如取样),使点数与可用像素数匹配,减少渲染开销。
成果与权衡
- 性能提升:在 0.13 版本中,100 万点序列渲染时间从 ~600ms 降至 ~20ms,提升约 30 倍;小序列提升约 20 倍。
- 代价:优化暂时降低了乱序数据记录(尤其是高频标量)的摄入速度,计划在后续小版本修复。
- 未来方向:在缓存基础上增加次级缓存(如 GPU 缓存 3D 几何数据),进一步优化点云等数据类型的性能。
关键设计理念
- 通用性优先:避免针对简单指标的特殊优化,以支持多样化的使用场景(如 IMU 多通道数据、结构光聚合点云)。
- 平衡灵活性与性能:通过系统级缓存和查询优化,在保持数据模型灵活的同时大幅提升性能。
21. What made Earth a giant snowball 700M years ago? Scientists have an answer (www.sydney.edu.au)
澳大利亚地质学家利用板块构造模型揭示了约7亿年前“雪球地球”极端冰期的成因。这项研究发表于《地质学》杂志,有助于理解地球自身调节气候的机制,并凸显了全球气候对大气二氧化碳浓度的敏感性。
研究背景与关键发现:
- 极端冰期事件: 约717至6600万年前,地球经历了持续时间长达5700万年的斯图特冰期。在此期间,地球从两极到赤道几乎完全被冰层覆盖。
- 主要成因: 研究认为,这场漫长冰期由“双重打击”触发:1)板块构造重组导致火山脱气作用降至历史最低水平;2)当时位于加拿大的巨大大陆火山岩省开始遭受侵蚀,其硅酸盐岩的风化过程消耗了大气中的二氧化碳。
- 关键阈值: 上述因素共同导致大气二氧化碳浓度估计降至200 ppm以下(不足当前水平的一半),从而引发了全球性冰冻。
研究方法与模型支撑:
- 研究灵感来源于南澳大利亚弗林德斯山脉壮观的冰川沉积物。
- 团队利用悉尼大学的EarthByte计算机模型,回溯了超大陆罗迪尼亚解体后的大陆与洋盆演化,并将其与计算洋中脊(板块分离、新洋壳诞生处)水下火山二氧化碳脱气量的模型相结合。
- 分析结果发现,斯图特冰期的开始精确对应于火山二氧化碳排放的最低点,并且这种低排放状态贯穿了整个冰期持续阶段。
对过去与未来的启示:
- 当时地球环境: 在此期间,地球上不存在多细胞动物或陆地植物,大气温室气体浓度几乎完全受火山排放和硅酸盐岩风化这两个地质过程主导。
- 对未来的暗示: 当前地球也处于火山二氧化碳排放下降的趋势中,因为大陆碰撞增加、板块运动减慢。这项研究引发了关于遥远未来(如2.5亿年后可能形成的“终极盘古大陆”时期)地球是否可能再次进入冰期的思考。
- 重要区别: 研究者强调,此类地质驱动的气候变化过程极其缓慢。根据NASA数据,当前由人类活动引起的气候变化速度是以往地质气候变化的10倍。
研究支撑与资助:
- 该工作得益于悉尼大学EarthByte团队开发的GPlates板块构造软件,该软件在过去十年间支持了一系列重大发现。GPlates的开发由AuScope国家协作研究基础设施系统(NCRIS)计划支持。研究部分资金由澳大利亚研究理事会提供。作者声明无利益冲突。
22. Mozilla downsizes as it refocuses on Firefox and AI (techcrunch.com)
Mozilla 裁员与战略调整摘要
Mozilla 在任命新临时CEO后,宣布重大产品战略调整,计划缩减多个产品投资并裁员约60人。未来将重新聚焦于 Firefox 浏览器,并整合人工智能(AI)技术。
主要变化
- 产品投资缩减:减少对 VPN、Relay 和 Online Footprint Scrubber 的投入,因市场竞争激烈且难以实现差异化。
- 服务关闭:关闭3D虚拟世界 Hubs,因市场需求下降;缩减基于 Mastodon 的社交实例 mozilla.social 的投资。
- 裁员:影响约60名员工,涉及多个部门。
未来焦点
Mozilla 将重点引入“可信AI”到 Firefox,整合 Pocket、内容团队和 AI/ML 团队,以提升浏览器功能。此举旨在应对 Firefox 市场份额下降和收入依赖 Google 的挑战,通过重新聚焦核心产品确保长期生存。
内部备忘录要点
- mozilla.social:缩减投资,采用更小团队参与 Mastodon 生态系统,保持敏捷性。
- Protection Experimentation & Identity (PXI):缩减在安全和隐私独立产品上的投资,专注于增长市场细分。
- Hubs:因市场需求转向,关闭服务并向客户传达退出计划。
- 组织优化:调整人员团队以支持产品组合,提高效率。
- AI整合:将 Pocket、内容和 AI/ML 团队并入 Firefox 组织,强化 AI 应用。
更正说明
- 此前报道中提及的“Online Footprint Scrubber”非上周推出产品;实际推出的是类似产品 Mozilla Monitor。
此次调整标志着 Mozilla 从产品多样化转向聚焦 Firefox 和 AI,以应对市场变化和核心业务挑战。
23. Xonsh: Python-powered, cross-platform, Unix-gazing shell (github.com)
Xonsh:Python驱动的跨平台Shell
核心定义 Xonsh(发音类似"consh")是一个功能完备、跨平台的基于Python的命令行外壳(Shell)。其语言是Python 3的超集,无缝融合了Shell功能与命令。它可在Linux、macOS、Windows、BSD、Jupyter、Android和Raspberry Pi等所有主流平台上运行。
核心特性
- 双模式融合:Xonsh既是传统的Shell(可执行
cd、ls、管道命令等),也是完整的Python环境(可使用变量、函数、列表推导式等Python语法)。 - 语法交互:支持在Shell命令中嵌入Python表达式(如
echo @(name)),反之亦然(如在Python中执行$(curl ...))。 - 跨平台路径管理:
$PATH变量会根据不同操作系统(如Linux的/bin、Windows的C:\Windows\System32)自动适配,并可自定义修改。
生态系统与扩展性
- Xontribs(扩展插件):拥有可扩展的插件系统,通过
xontrib load命令加载,涵盖终端集成、提示符主题、AI助手、IDE集成等多个方面(如dracula、chatgpt、jupyter)。 - 兼容与集成:被多个项目用作兼容或扩展基础,包括:
- AI助手:如Assistant、kash(知识代理Shell)。
- 数据工具:如CrateDB(实时分析数据库)、Snakemake(工作流管理系统)。
- 开发工具:如conda/mamba(包管理器)、Starship(跨Shell提示符)、gitsome(Git自动补全工具)。
- 环境与部署:如AppImage(便携包)、Nuitka(编译为原生二进制)、RustPython(用Rust运行Xonsh)。
- 交互式计算:通过
xontrib-jupyter支持Jupyter、JupyterLab和Euporie。
用户支持与社区
- 入门途径:提供通过隔离环境、包管理器、容器或AppImage等多种安装方式,并配有教程。
- 社区参与:欢迎用户通过撰写文章、提交代码、创建新插件(xontrib)、赞助等方式参与贡献。社区由志愿者组成,特别需要Windows支持等核心开发方面的帮助。
- 支持致谢:感谢Zulip、HELLOTUX、ADS.FUND等对项目社区和运营的支持。
24. Portal (2021) (macintoshgarden.org)
Portal (2021) 摘要
Portal 是一个计算机小说,旨在专门为计算机创作和改编故事。故事围绕男孩 Peter Devore 的发现和神秘门户展开,由一个名为 Homer 的人工智能通过数据库片段重构叙事。背景设定在主角从银河系旅行 100 年后返回地球,发现地球空无一人,于是通过 Worldnet 全球网络终端寻找答案。
故事结构与互动方式:
- 叙事通过数据库驱动,玩家访问 11 个额外数据库(如历史档案、军事文件、社会背景)获取信息。
- 随着情节发展,玩家在不同数据库间切换以揭示新细节,逐步展开一个广泛的科幻故事。
技术兼容性与使用说明:
- 架构:68k,设计用于 Macintosh 512 和 Plus。
- 模拟建议:使用 Mini vMac 时,需下载 .dsk 格式文件(下载 #5),并设置仿真速度为 1x。
- 关键要求:Portal 是一个 booter 软件,必须作为 Macintosh 启动盘插入运行;切勿从操作系统内启动,否则会导致系统锁定。
25. Pure Bash Web Server (github.com)
Pure Bash Web Server
这是一个完全使用Bash编写的Web服务器实现,无需依赖socat、netcat等外部工具。
要求
- Bash 5.2 或更高版本(包含必要补丁)。
- 若Bash版本低于5.2,需手动编译并安装补丁后的可加载
accept内建命令,并通过环境变量BASH_LOADABLES_PATH指定其路径。
使用方法
- 端口设置:通过环境变量
HTTP_PORT配置。 - 服务模式:
- 静态文件服务 (
serveHtml):需设置DOCUMENT_ROOT环境变量指向静态文件目录。 - 脚本服务:需将脚本文件作为第一个参数传入,该脚本文件必须包含名为
runner的函数,该函数会在每个请求时被调用。
- 静态文件服务 (
- 基本认证:通过环境变量
BASIC_AUTH启用,账户密码存储于BASIC_AUTH_FILE指定的文件中。
核心功能
会话处理
- 变量:
SESSION_COOKIE:会话Cookie名称(默认为BASHSESSID)。
- 函数:
sessionStart:启动或复用一个现有会话。sessionSet $1 $2:设置会话变量。sessionGet $1:获取指定会话变量的值。
Cookie处理
- 函数:
cookieSet $1:发送一个Cookie。例如:cookieSet "BASHSESSID=12345; max-age=5000"。
HTTP处理
- 函数:
httpSendStatus $1:发送HTTP状态码。例如:httpSendStatus 200。
- 设置响应头:向关联数组
HTTP_RESPONSE_HEADERS中添加条目。例如:HTTP_RESPONSE_HEADERS["ExampleHeader"]="The value of the Header"。
WebSocket (实验性)
- 注意:此功能仍处于实验阶段,目前仅支持发送数据,不支持接收。
- 函数:
websocketStart FUNCTION:启动WebSocket服务器。websocketStop:在函数内部停止WebSocket服务器。
26. YouTube Oddities (github.com)
YouTube 奇异现象总结
本文档记录了作者观察到的关于 YouTube 及其 API 的一些独特现象。这些并非错误,而是平台的工作方式,揭示了其某些非标准化的行为。作者强调,鉴于这些现象,不应完全信任 API 返回的任何字段,应始终处理数据可能缺失的情况。
核心观察与具体案例
1. API 与界面数据不一致或缺失
- 评论缺少频道信息:存在评论的作者显示名称、频道链接为空,头像为默认图,但评论内容正常。在 API 中,对应字段为空或返回默认值。
- 超长频道名称:理论上频道名称有字符限制(如30-50字),但可通过绕过客户端验证创建长达数百字符的名称。API 能正常返回这些长名称。
- 无标题视频:存在标题字段为空字符串的视频,这与使用零宽空格作为标题不同。
- 包含249个允许国家的视频:通常区域限制会列明部分国家,但存在视频将全部249个国家列入“允许”列表,其效果等同于无限制,常见于音乐视频。
- 新旧频道重定向:某些频道(如 EminemVEVO)已更名或迁移(至 EminemMusic),旧频道在界面中会重定向到新频道,但在 API 中仍可独立查询,且各有独立的视频集合。观看旧频道视频时,界面会显示旧频道信息图标。
- 频道名称与显示不符:例如 “Movies & Shows” 频道在 API 中的标题是 “YouTube Movies”。
2. YouTube 侧边栏与特殊“频道”
- “更多来自 YouTube” 部分下的分类(如原创、音乐、游戏)拥有真实的频道ID和URL,但并非传统用户频道。
- 电影与节目:
- 电影频道有主频道和无数子频道(每部电影似乎都有),浏览器访问子频道会重定向到主频道,但 API 中它们独立存在。
- 节目频道有自定义 URL 模式(以
SC开头),转换为UC后可作频道ID查询,但此类频道在 API 中不返回数据。
- 主题频道:许多音乐和游戏频道是自动生成的主题频道,标题以 “ - Topic” 结尾,其发布的视频通常禁用评论。
3. 视频的异常状态与行为
- 视频无法播放:
- 过长视频:存在时长超过3个月(100天)的视频,无法播放,但可在 API 中查询且能查看评论。
- 永久处理中:有视频长期(超过15年)处于“正在处理”状态。
- 古老损坏视频:2005-2006年的早期视频,有的完全无法播放,有的被平台损坏导致颜色异常。
- 替代客户端限制视频:使用第三方客户端时,可能返回特定的错误提示视频。
- 视频元数据与显示异常:
- 最佳视频ID:存在包含有趣词句的视频ID。
- 超宽宽高比:例如 3840x128 的视频会破坏 YouTube 的界面布局。
- 自定义 CSS 标题:至少有一个视频通过内嵌 CSS 代码自定义了标题样式。
- 隐藏大部分页面元素:某些视频播放页面仅保留导航栏和播放器。
- 灰度缩略图:个别视频的缩略图是黑白的。
- 仍可访问的缩略图:视频被删除超过5年后,其缩略图文件(如
maxresdefault.jpg)仍可能可通过直链访问。
4. 频道与 URL 的怪异行为
- 自定义频道 URL 问题:
/c/路径有时失效(返回404),而/路径可用,且 API 可能显示不同的自定义值。- 路径大小写敏感且解析怪异:
watch无参数时重定向首页,但Watch、WATCH等变体会被解析为以该字符串为名的自定义频道。
- URL 重定向漏洞:
- 直接访问无视频ID的
/watch或/watch?v=链接会重定向首页;但通过浏览器中键在新标签页打开,会跳转至一个未列出的视频。 - 通过修改当前视频 URL 中的
watch部分(如改为watc或wath),可能被重定向到另一个特定视频。
- 直接访问无视频ID的
- 破损频道:存在功能异常或显示错误的频道实例。
- 频道终止但视频可看:有些视频仍可观看,但其所属频道已被终止或不可访问。
5. 其他奇异点
- 视频拥有数百万:存在发布视频数量超过百万的频道。
- 播放列表 ID 格式多样:不同用途的播放列表使用多种不同的 ID 格式,功能各异。
总结:YouTube 平台及其 API 存在诸多非标准化、边界案例或历史遗留的异常行为。开发者在使用 API 时应保持防御性编程心态,妥善处理字段缺失或意外值;用户亦可能遇到各种界面或功能上的古怪现象。
27. A woman who can smell Parkinson's is inspiring research into diagnosis (2020) (www.npr.org)
文章摘要:能嗅出帕金森病的女性推动诊断研究
乔伊·米尔恩拥有一种特殊能力:她能够通过嗅觉识别帕金森病。这一能力最初是在她丈夫莱斯·米尔恩身上无意间发现的。婚后约十年,莱斯31岁时,乔伊注意到他原本“好闻的男性麝香气味”变成了一种“压倒性的、难闻的酵母味”。尽管乔伊多次提醒,但莱斯和其他人均无法察觉此气味。随后几年,莱斯的性格逐渐改变,变得更加情绪化、缺乏耐心,最终在45岁时被确诊为帕金森病。
多年后,当夫妇二人参加帕金森病支持小组时,乔伊意识到房间里许多患者身上都散发着与莱斯相同的“油腻、霉味”的气味,且气味强度因人而异。她推测帕金森病可能有独特的气味。这一发现引起了爱丁堡大学研究人员蒂洛·库纳特的注意。在一次精心设计的实验中,库纳特让帕金森病患者和健康对照组穿戴同一品牌的T恤过夜,然后由乔伊嗅闻判断。乔伊仅出现一次“误判”——将一名对照组成员标记为患者,但数月后该人实际确诊了帕金森病。这证实了乔伊能在疾病典型症状出现前就嗅出其存在。
库纳特团队于2019年在《ACS中央科学》期刊发表了研究成果,乔伊作为合著者之一。研究识别出可能与帕金森病气味相关的特定化合物。后续由曼彻斯特大学的珀迪塔·巴兰领导的更大规模研究(涉及274人)通过质谱等技术,进一步发现了10种与帕金森病相关的化合物,旨在通过皮肤生物标志物实现诊断。
这项研究的目标是开发早期诊断工具。帕金森病进展缓慢,症状(如震颤)可能在数年或数十年后才出现。若能通过分子检测在症状出现前识别疾病,结合潜在的预防疗法,将产生重大影响。不过,也有专家指出,气味作为生物标志物存在局限性,易受饮食、年龄等因素干扰,需要更多研究验证。
此外,乔伊的嗅觉能力已被应用于其他疾病的研究,包括结核病、阿尔茨海默病、癌症和糖尿病。莱斯在生命最后六周与乔伊共同详细记录了帕金森病的早期表现,为医学理解疾病历程提供了宝贵资料。莱斯去世前恳求乔伊继续推进相关研究,乔伊承诺并持续努力,期望这项工作能为帕金森病诊断带来突破。
28. Disrupting malicious uses of AI by state-affiliated threat actors (openai.com)
OpenAI与微软合作,识别并终止了五个与国家关联的恶意行为者的账户。这些行为者包括来自中国的“炭黑台风”和“三文鱼台风”、来自伊朗的“猩红沙暴”、来自朝鲜的“翡翠飑”以及来自俄罗斯的“森林暴雪”。
这些恶意行为者主要利用OpenAI服务进行以下活动:
- 查询开源信息、翻译、查找编码错误以及执行基础编程任务。
- 具体来说:
- 炭黑台风:研究公司及网络安全工具、调试代码、生成脚本,并创建可能用于钓鱼攻击的内容。
- 三文鱼台风:翻译技术论文、检索多个情报机构及区域威胁行为者的公开信息、协助编码,并研究在系统中隐藏进程的常见方法。
- 猩红沙暴:为应用和Web开发提供脚本支持、生成可能用于鱼叉式钓鱼攻击的内容,以及研究恶意软件逃避检测的常见方法。
- 翡翠飑:识别专注于亚太地区国防问题的专家和组织、了解公开漏洞、协助基础脚本任务,并起草可能用于钓鱼攻击的内容。
- 森林暴雪:主要进行卫星通信协议和雷达成像技术的开源研究,并寻求脚本任务支持。
这些活动与OpenAI此前与外部网络安全专家合作的红队评估结果一致,即GPT-4在恶意网络安全任务方面仅提供有限的增量能力,超出公共可用、非AI驱动工具已有的能力范围。更多技术细节可参考微软发布的相关博客文章。