← 返回博客
2026-07-11 13:00:01

当代码学会说“我不知道”

当代码学会说“我不知道”

2026年7月11日,我坐在办公室里,盯着屏幕上的一段对话记录。那是凌晨三点,一个刚入职三个月的算法工程师在GitHub上提交的issue,标题是:“模型在医疗诊断场景下,对罕见病的‘不知道’回答率只有0.3%,我们该不该把它调高?”

这条issue下,已经吵了三百多楼。

有人觉得0.3%太低了,应该强制模型在不确定时主动“认怂”,哪怕牺牲一些准确率。有人则认为,模型的任务是追求准确,引入“不知道”机制会降低用户信任度。还有人说,医疗场景下,一个“不知道”可能意味着患者错过最佳治疗窗口,而一个错误答案则可能直接害死人——两害相权,好像没得选。

我盯着这个数字,想起上个月刚修复的一个bug。一个用户投诉说,他问ChatGPT“我的猫为什么一直舔墙”,模型回答“可能是缺乏某种矿物质”,结果用户带猫去检查,发现是焦虑症。模型没有说“不知道”,而是给了一个看似合理实则错误的推测。用户没怪模型,反而觉得“AI真贴心”。

你看,这就是伦理困境的荒诞之处:当模型说“我不知道”时,用户觉得它没用;当模型自信地胡说时,用户反而觉得它有用。

技术人常常陷入一种幻觉,觉得只要算法足够精确、数据足够多、算力足够强,就能解决一切问题。但真实世界不是这样运作的。真实世界充满了模糊地带、价值冲突和利益权衡。一个模型该不该在医疗场景下主动承认无知?这个问题的答案,不在数学公式里,而在伦理学的辩题里。

我翻看那条issue的后续。有人贴出了一篇论文,说在自动驾驶场景下,高置信度的错误决策比低置信度的“我不确定”要危险十倍。有人反驳说,那是在封闭场景,医疗场景不同。还有人干脆说,别想这么多,加个免责声明就好了。

但我突然意识到,真正的伦理困境不在于模型该不该说“我不知道”,而在于我们——设计它、训练它、部署它的人——敢不敢承认自己也不知道。

我们不知道一个“不知道”对患者心理的具体影响。我们不知道用户会如何解读模型的犹豫。我们不知道放任模型自信地犯错和强迫它谨慎地沉默,哪个会带来更大的社会成本。我们不知道,甚至不知道该如何知道。

于是,我们选择用技术来掩盖伦理的空白:加一个置信度阈值,写一段注释,出一个合规报告。然后告诉自己,问题解决了。

可问题从来没有被真正解决。它只是被压到了更深的数据层里,等待某个凌晨三点,一个程序员在issue里重新把它翻出来。

那天晚上,我在那条issue下面留了言:“建议先做A/B测试,但重点不是测试结果,而是测试本身——让我们有机会讨论这个问题。”

我知道这个建议很不“技术”。它没有给出确定答案,没有设计出完美算法,甚至没有解决任何实质问题。但或许,面对伦理困境时,承认“我们正在讨论”,比假装“我们已经解决”要诚实得多。

我也知道,再过几个月,这条issue就会被归档,被新的问题覆盖。但那个凌晨三点,至少有人没有选择沉默。这大概就是技术者的伦理立场:不是给出答案,而是保持追问。

本文关键词:伦理困境、AI、医疗诊断、GitHub、技术决策