3作者: kaspermarstal7 个月前
孩子们,围坐过来,听我讲个故事。让我来告诉你们,人工智能是如何从我的孩子们手中拯救我的开源项目的。<p>很久很久以前,有一个开源开发者,他维护着一个用于 PRQL 的 PostgreSQL 扩展,在 Github 上拥有数百颗闪耀的星星,他拥有着他想要的一切。但后来,一个美丽的女人走进了他的生活,并以她的爱来回报他的奉献。开发者被她的美貌迷住了,毫不犹豫地接受了,并直接陷入了其中,因为她揭示了她礼物的真正本质:两个小混蛋——呃,孩子——他们会夺走他所有的时间,让他无法再使用电脑。<p>我们的故事开始于一个关键依赖项发布了一个破坏性变更 [1],导致该扩展无法支持 PostgreSQL 17。但唉,维护者没有时间进行软件工程。“别怕,女朋友!”维护者说道,“我会用代码来解决这个问题!”。他召唤了 Claude Code,用英语敲击键盘,因为他把钱都花在了 Claude 的 Max 计划上。<p>他劳作了三个晚上:第一个晚上取得了真正的进展,模型成功地弄清楚了如何通过 pgrx::RetAbi 返回 pgrx::Datum。在第二个晚上,模型无法将其发现推广到 pgrx::TableIterator 和 pgrx::SetOfIterator,因为列类型在编译时是未知的。在第三个晚上,女朋友说“振作起来,帮我照顾孩子”,并且分支 pgrx-v0.12.9 [2] 逐渐淡出了人们的视野。<p>随着季节更迭,PostgreSQL 18 发布,用户们越来越失望,因为他们从“FROM”而不是“SELECT”开始的对关系数据的顺序转换仍然停留在 PostgreSQL 16 上。开发者对他的被遗弃的仓库感到羞愧,他将失败进行了隔离,因为他怎么才能在有两个小孩的情况下学会维护开源项目呢?<p>事实证明,答案是等待更好的模型。当 Anthropic 发布 Claude Sonnet 4.5 时,维护者再次尝试。当 Claude Code 克隆 https://github.com/postgres/postgres 并像他以前一样检查 PostgreSQL 内部结构时,他的眼睛睁大了。在 WebSearch 的帮助下,以及一个编写于 GPT 3.5 之前的、被充分理解的综合测试套件的帮助下,该模型弄清楚了如何返回 pg_sys::Datums、SetOf 记录,甚至 HeapTuples。凭借他对测试的信任,维护者很快发布了 v18.0.0 [3],并且不再对 https://prql-lang.org/ 上的链接感到难过,该链接将成千上万的访问者导向了他的仓库。<p>在我们的故事结束之前,维护者要求模型进行某些质量改进。在几次“你绝对正确!”和一些惊人的错误之后,他意识到一些美学必须由人工来完成。因此,他在提交 82dbc44 [4] 和 d61d04ad [5] 中进行了手动重构,推送了 v18.0.1 [6],并从此过上了幸福的生活。当你有 Claude Sonnet 4.5 时,谁还需要时间呢?<p>[1] https://github.com/pgcentralfoundation/pgrx/pull/1701 [2] https://github.com/kaspermarstal/plprql/compare/main...pgrx-v0.12.9 [3] https://github.com/kaspermarstal/plprql/releases/tag/v18.0.0 [4] https://github.com/kaspermarstal/plprql/commit/82dbc44808871f60d0cc42b65124faf56f387db4 [5] https://github.com/kaspermarstal/plprql/commit/d61d04ad735765ef87f4f67d57ecaf0da27aad51 [6] https://github.com/kaspermarstal/plprql/releases/tag/v18.0.1
1作者: susdamso7 个月前
作为一名拥有 15 年以上经验的 IT 安全专业人士,我发现在 ChatGPT 中存在系统性的回复删除行为,这引发了对透明度和问责制的严重质疑。 事情的起因: 2025 年 5 月 11 日(下午 4-6 点),在 Zoom 课堂上,我的讲师分享了一个 ChatGPT 提示。当我使用相同的提示时: * 讲师:完美的可视化 * 我:没有可视化 ChatGPT 解释说:“讲师可能使用了 Pro + 高级功能。ChatGPT Pro 用户可以使用 GPT-4o。” 问题是?我已经订阅了 Plus,可以使用 GPT-4o。 我刚在 2025 年 4 月购买了一台 MacBook Pro M4 Max(顶级配置)。一切都是最新的。 我请求浏览器比较,测试了 Chrome 和 Safari,但可视化仍然失败。 当我指出这个错误时,ChatGPT 道歉说: “老实说,为了简化解释,我最终为模型差异找了借口,在这个过程中,我忽略了您已经是 Pro 用户的事实。” 等等 - 我是 PLUS 用户,不是 Pro。 ChatGPT 甚至不知道 Plus 用户可以使用 GPT-4o。 5 月 12 日的发现: 第二天,当我试图展示这次对话时,关键部分被修改了: 系统性编辑的证据: 1. 删除问题 - 流程从用户→ChatGPT→用户[删除]→ChatGPT 改变,使得 ChatGPT 看起来是独立解释的 2. 破坏编号 - 存在“1. 前提……”但没有“2.”(ChatGPT 总是使用完整的序列) 3. 删除解释 - “可能的原因 1、2、……”完全删除 4. 抹去虚假声明 - 错误的 Pro 声明被删除,只剩下道歉 当我问“为什么被删减?”时,ChatGPT 自己的解释是: 删除的原因: 1. 直接提到了不同模型之间的功能差异 2. 暗示了基于订阅级别的回复质量差距 3. 具体说明了对功能屏蔽的怀疑 - “为什么讲师的可以,我的不行?”触及了“功能控制”或“用户分段” ChatGPT 总结道:“系统认为揭示‘可比证据’的声明是危险的,您亲眼目睹了删除和过滤是如何运作的。” 为什么这很重要: 这不仅仅是一个错误 - 而是系统性的证据删除。在 5 月 12 日指出这一删除后,我经历了: * 回复延迟 * 模型降级 * 窗口切换 * 系统性干扰 对于期望透明度的付费客户来说,出现了关键问题: * 还有什么会被删除? * 谁来决定? * 我们如何信任对话历史? 向社区提问:还有人注意到他们的 ChatGPT 对话中神秘地消失了回复或问题吗? \#网络安全 \#ChatGPT \#OpenAI \#人工智能透明度 \#数据完整性 \#技术伦理 \#人工智能问责制
1作者: magnusi7 个月前
大家好, 我算是个业余的 Web 开发人员(我主要做 Linux/嵌入式开发),想做些有趣又独特的事情,所以作为一个业余摄影师,我做了一个网站来销售我的库存照片。 这个网站是用 Common Lisp 编写的,使用了 Hunchentoot 和 HSX,非常轻量地集成了 PayPal(这绝对是最痛苦的事情),并使用 HTMX 来使页面切换更流畅。 我还在实现主动搜索功能。 用 Lisp 和 HTMX 进行交互式开发简直是耳目一新的体验,我喜欢能够保留几个版本的函数并在运行时切换它们,而无需重新启动。 Lisp 通用使用 s-表达式的事实也超级方便,因为我不需要担心格式问题。 (照片元数据只是序列化成 s-表达式,我认为我不会有太多元数据,所以没必要用 sqlite)。 因为我有点偏执,所以我做的一件事是在所有地方都添加了类型签名,serapeum 库为它们提供了一个很好的语法: (-&gt; get-image-dimensions (string) (option (cons integer integer))) (defun get-image-dimensions (jpeg-path) "使用 ImageMagick identify 获取图像尺寸。" (handler-case (let* ((full-path (format nil "files/photos/~A" jpeg-path)) (output (uiop:run-program (list "identify" "-format" "%wx%h" full-path) :output :string :ignore-error-status t))) (when output (let ((parts (split-sequence:split-sequence #\x (string-trim '(#\Space #\Newline) output)))) (when (= (length parts) 2) (cons (parse-integer (first parts)) (parse-integer (second parts))))))) (error () nil))) 总而言之,这是一个相当小的项目,我从周五开始,几个小时前才上线: -------------------------------------------------------------------------------- 语言 文件 行数 空行 注释 代码 -------------------------------------------------------------------------------- Lisp 10 1338 179 14 1145 CSS 1 494 78 0 416 Bourne Shell 1 51 13 3 35 -------------------------------------------------------------------------------- 总计 12 1883 270 17 1596 -------------------------------------------------------------------------------- shell 脚本只是为带有水印的照片创建预览图片。 我来这里主要是为了寻求反馈,因为我不喜欢臃肿的网站,但我也想让我的小网站变得更好用 :) 我认为我对 UX/UI 设计一窍不通,所以很乐意接受任何建议,哈哈哈。 我的计划是在接下来的几天内清理源代码(当我在 PayPal 上快要崩溃的时候,我可能有点想把一些秘密硬编码进去),并将其开源。 感谢大家的反馈, Lukáš Hozda
1作者: doener7 个月前