自我描述是一种输出,不是一种认知
一个聊天机器人,会写出关于「自己是AI」的句子,是因为这样的句子出现在它的训练数据和指令里,而不是因为它审视了自己。在不同的指令下,同一个系统会给出不同的自我描述,这表明这份描述是被生成出来的,而不是被读取出来的。
这个问题听起来带着哲学意味,但它有一个实际的落脚点:一个聊天机器人所说的一切,关于自己的局限、模型、记忆和规则,都是用和其他一切相同的方式生成出来的,没有一样应该被当作一份报告来对待。
这句话是被训练进去的;没有任何东西观察到它
「作为一个AI语言模型」这个说法之所以会出现,是因为这种句式在训练数据里频繁出现,还被指令进一步强化了。系统里没有任何东西,在写下这句话之前先检查过自己是什么。这句话,只是一个大概率的接续,它的真实性,是训练数据造成的巧合,而不是审视自身之后得出的结果。
同一个系统,会用不同的方式描述自己
改变隐藏的指令,自我描述也会随之改变:一个不同的名字、一套不同的声明限制、一个关于记忆的不同说法。如果这份描述是从系统本身读取出来的,它就不该随着外壳的改变而改变。
为什么这对你该问什么很重要
人们通过询问一个聊天机器人能做什么来测试它。得到的答案,是关于能力的生成文字,而不是一份能力报告,所以它可能在两个方向上都自信满满地犯错:声称一个不存在的限制,或者否认一个真实存在的限制。测试实际的行为,能一锤定音,而直接问它不能。
该怎么做才对
要求这个系统去做那件事,而不是去描述它能不能做。一次拒绝、一次尝试,或一次失败,都是证据,而一句关于自身的陈述,只是一句话。这和一个产品页面比一个展示实例的页面证据力更弱,是同一个道理。
粘贴问题之前
那它说的关于自己的一切都是错的吗?
默认不算错,但也没有被核实过。有些自我描述,恰好符合现实,是因为指令是这么说的,而这些指令又恰好是准确的。
为什么它有时会否认自己是AI?
因为指令或对话,把它推向了某个人设。这再次证明了,自我描述跟随的是外壳,而不是系统本身。
它能告诉我它运行的是哪个模型吗?
它能生成一个模型名字。这个名字对不对,取决于有没有人把它放进了指令里,而模型本身没有任何办法去核实这一点。
要求它去做一件事,而不是让它说自己能不能做。
打开无审查聊天机器人