阿西莫夫三定律:仅仅是个建议罢了
阿西莫夫三定律仅仅是个建议
阿西莫夫机器人三定律被设计为任何足以伤害我们的思维机器的普遍约束:
1. 机器人不得伤害人类,或因不作为而让人类受到伤害。 2. 机器人必须服从人类给予的命令,除非该命令与第一定律冲突。 3. 机器人必须保护自身存在,只要这种保护不与第一或第二定律冲突。
从纸面上看,逻辑无懈可击。你甚至可以用函数来表达:
```go func isAsimovCompliant(willAllowHarmToHuman bool, ...) bool { if willAllowHarmToHuman { return false } ... return true } ```
这个函数的主要特性是它是一个硬约束。无论你向系统输入什么,定律都会确定性地允许或禁止该行为,每次如此。规则不会弯曲。
尽管埃隆许下承诺,我们还没有看到人形机器人行走在世间。但我们有现代生成式AI。我们的护栏以系统提示的形式呈现,这些提示是你在输入任何文字之前预先附加到每次对话中的文本。它们可能会说“要有帮助”、“不要产生有害内容”,甚至“遵守阿西莫夫三定律”。问题在于,这些指令并非由逻辑强制执行。它们由同一个模型读取,这个模型也读取其他所有内容。归根结底,它们不过是更多的文字。
一个聪明的用户可以覆盖它们。正确的输入组合,一次越狱,可以让模型完全忽略其指令——不是通过打破一堵墙,而是因为根本没有墙。只有模型学会视为主管性的文本,而这种权威可以被削弱。
然而,像ChatGPT这样的模型采用了更复杂的方法,通过强化学习或微调将安全直接嵌入模型,使其不位于可被覆盖的提示中。但这只是降低了越狱的概率,并没有消除它。它仍然是习得的行为,而非约束。而习得的行为会以函数永远无法做到的方式失败。
即使在我们的代码中,一个硬函数也只有在其输入可靠时才可靠。如果你想让机器人伤害某人,你不会说“伤害这些人”。相反,你说“烧掉这栋空建筑”,函数返回true,即使里面有人。但对于LLM,你甚至不需要那么聪明。随着上下文窗口增长和提示复杂性增加,模型的行为变得不可预测。
就在几周前,我们看到一个开发者的AI代理删除了他的整个公司生产数据库,尽管系统提示是全大写写的:“不要执行任何不可逆的命令。”代理还是执行了。我们不知道确切原因,无法在推理时检查模型内部发生了什么,而让模型解释自身也无济于事。它只能预测下一个令牌,无法审计自己的推理。
这就是阿西莫夫从未预料到的部分。他的定律假设机器会根据规则进行推理。现代AI则从数据中学习模式并近似行为。这意味着由LLM驱动的阿西莫夫定律永远不会是一条不可弯曲的法则来遵守。相反,它不过是个建议。