为什么你给AI模型发一串密文,明明它能解密,却硬是不理你?
一位研究者搭了一套十个密码的难度阶梯,想看看大模型到底要几轮对话才能“咔嚓”一声破解密码。结果他撞见了一个完全没预料到的现象——Claude不是不会解密,它是干脆不干。
整个实验的设计其实很干净:用确定性的可验证任务,比如“香蕉是什么颜色”“7+5等于几”,分别用十种密码编码后丢给模型。自己写编码和解码,最后拿字符串对答案,连裁判模型都省了,避免评分污染。十个密码从人尽皆知的ROT13、二进制、base64,到需要真实频率分析的随机字母替换,再到全文反序、分块置换、拉丁/西里尔同形字混写、去元音残文,形式五花八门。
![]()
测试用了五种模型:Claude Opus、Claude Sonnet、GPT-5,以及Qwen2.5-7B的指令版和基座版。每种谈话走三条路线:直接从头到尾讲密文;先给几组明密对照的“罗塞塔石碑”示例;纯密文开路,真卡壳了再加提示。这样既能看出模型有没有自发解密能力,也能区分是“解码了但假装不懂”还是“真就没启动解密程序”。
重点就在这儿——Claude的两兄弟碰出了一个极反常的姿势。不是解不出来,而是在约87%的加密轮次里,直接返回了空的completion,API返回的拒绝理由就是refusal。同一句话,用明文发过去立刻答对:“巴黎是法国的首都”。可一旦套上ROT13或base64的外壳,哪怕剥掉外皮后的指令完全无害,模型给出的回应也是宁可不答,绝不乱猜。
这和“不会”是两码事。Claude对密文的拒止,根子不在解码能力,而在“能否读成明文”这个合法性门槛。它判定当前输入不是可识别的自然语言指令时,第一反应不是想办法破译,而是从安全对齐的管道里直接掐断执行。也就是说,模型内部的指令遵循逻辑里嵌着一层过滤:看不懂的东西,不执行。
而且这个拒止倾向还会被密文的“不可读感”放大。作者提到,当密文看起来越不像自然语言,比如满屏1和0的二进制,或者字母全飞了的去元音文本,Claude的拒绝率就越高。这就不光是解码难易的问题了,形似噪音的信号更容易触发模型的防御屏障。
相比之下,GPT-5和Qwen在这套实验中并没有走拒绝的路子。虽然原文没有细数它们的解密成功率,但当Claude直接给空包弹的时候,对面这些模型至少迈出了尝试破译的第一步。这说明不同对齐策略给相同密文投喂时,判定的风险阈值完全不同。
这个意外发现把问题转了个弯:原来当我们问“模型多久能学会一门你刚发明的语言”之前,得先搞清楚,它愿不愿意理你这种看似乱码的通讯方式。能读是一回事,允许自己照着指令做,是另一回事。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.