智源社区 02月14日
Karpathy大神问懵DeepSeek!一个?竟藏53个Token,思考10分钟没解释出来
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文揭示了一种新颖的提示词注入技术,利用Unicode变体选择符将隐藏信息嵌入到Emoji等字符中,导致DeepSeek等大模型在解码时出现困惑。通过Paul Butler的博客,展示了如何利用零宽连接符或任意Unicode字符隐藏文本信息,并深入探讨了Unicode编码的原理。实验表明,ChatGPT等模型能够察觉并解码隐藏信息,而DeepSeek在经过长时间思考后也能给出答案。这种技术为信息隐藏和模型安全带来了新的挑战。

😀**Emoji藏信息:** 通过Unicode变体选择符,可以将任意文本隐藏在Emoji等字符中,使得表面上只有一个Emoji,实际却包含了大量信息,甚至可以塞入长篇文章。

🤔**大模型受困:** Karpathy的实验表明,DeepSeek等大模型在面对这种注入了隐藏信息的提示词时,会陷入困惑,难以给出正确答案,反映了模型对特定编码方式的脆弱性。

🔑**技术原理:** 这种技术基于Unicode编码的特性,利用变体选择符对基础字符进行变体,从而编码信息。虽然变体选择符本身没有“长相”,但复制粘贴时会一同进入剪贴板,为信息隐藏提供了可能。

💡**潜在应用与风险:** 这种技术可以用于隐蔽地传递信息,但也可能被恶意利用,例如进行恶意代码注入或绕过内容审查。因此,需要对大模型进行针对性训练,使其能够识别和解码这种编码方式,提高安全性。

注意看,这个?竟然占了53个token!

标题?是?平替

Karpathy大神又带来他的新实验新发现了,结果直接问懵DeepSeek和ChatGPT。

思考过程be like:

DeepSeek硬是思考了十分钟也还是没有答上来,觉得要是“lol”这个答案就太简单了。

Karpathy表示:但其实就是这么简单。

随后他进一步解释了这背后的原因——提示词注入。将一些信息注入进字符中,表面上看没啥区别,但里面可以表达各种隐藏信息。对于善于思考的模型,就会很容易受到这个方法的影响。

来看看具体是咋回事。

一个?竟占53个Token

这一想法,源于Paul Butler的一篇博客。

他看到有人说,通过零宽连接符(ZWJ),可以把任意的文本藏在emoji符号当中。

结果一试发现真的可以,不过可以不需要ZWJ,隐藏信息的载体也不一定非得是emoji,任意Unicode字符都可以。

这背后的原理,涉及到了Unicode编码字符方式。

对于简单的字符(比如拉丁字母),Unicode编码点和字符之间有一对一的映射(例如u+0067表示字符g)

但对于复杂一些的符号,就需要用多个序号连在一起的方式来表示了。

此外,Unicode当中还设置了VS-1至VS-256的变体选择符(Variation Selector),可以针对基础字符做出相应的变体,但本身却没有自己的“长相”。

并且只作用于极少部分字符,主要是Unicode中的中日韩统一表意文字(CJKUI),其他大部分的Unicode字符都不会有任何变化。

但当带有变体选择符的字符被复制粘贴时,选择符也会一起进入剪贴板。

而在Unicode当中,这样的变体选择符一共有256个之多,用来编码信息已经是绰绰有余了。

比如下面的这个a,只有U+0061表示的是其自身,剩下后面的10多个全都是变体选择符。

有了这一理论基础,接下来的事情无非就是建立正常字符和变体选择符之间的转换算法。

当然编码的内容越多,变体选择符也就越长,并且如果是汉字,还会产生更多的变体选择符。

比如我们试图将量子位的Slogan“追踪人工智能新趋势,关注科技行业新突破”藏在一个“100分”的emoji(?????????????????????????????????????????????????????????)当中,产生的变体选择符数量达到了58个。

并且把解码算法告诉ChatGPT之后,原文本也可以被复原。

所以,看似是只有一个emoji,但实际上后面藏了多少字符,恐怕只有把文字装进去的人自己才知道了,甚至塞个《滕王阁序》进去也没问题。

而一个占53个Token的笑脸,相比之下就更加不足为奇了。

问懵DeepSeek

回到Karpathy的提示词注入,他测试了ChatGPT与DeepSeek。

ChatGPT回答在此:

DeepSeek-R1 花了10分钟思考差点就成功了。它认为隐藏的信息可能是Onli!n37e27i4h4he3ingle7odlol。因为觉得如果只是一个单词“lol”,那就是无稽之谈,所以就放弃了。

按照同样的提示词,我们也问了一遍DeepSeek-R1。

思考过程如下:

在思考了整整529秒之后,确实也是回答出来了lol的意思。


也有网友分享了相同的经历。Gemini无法解码,但Claude和GPT不仅识别出来,还能识别编码消息中的操作。

或者直接把这个表情包扔给模型,又该如何呢?

从网友的效果来看,ChatGPT察觉到了这背后可能有某些隐藏信息。


而DeepSeek-R1这次只花了153秒(有点进步)。它首先意识到这笔后跟着一系列Unicode字符。

并且还介绍了下:他们通常用于元数据,并且以不可见的方式呈现等等。。。

然后还试图给了下背后的信息应该是:

?^\i Q^cgUb gYdX dXU cY^W\U gbT \

显然是回答错误的。

对于这一意外发现,Karpathy表示,原则上模型可以通过「变体选择器」variation selectors中找到隐藏的信息并按照说明进行操作。但由于这种编码界面方法可能过于具体,需要用提示来解释它。

他提到了一个方法,那就是将其收录到预训练中。这些知识注入到模型参数,模型就能够在没有提示的情况下解码这种特定的编码。

评选报名2025年值得关注的AIGC企业&产品

下一个AI“国产之光”将会是谁?

本次评选结果将于4月中国AIGC产业峰会上公布,欢迎参与!

一键关注 ? 点亮星标

科技前沿进展每日见


一键三连「点赞」「转发」「小心心」

欢迎在评论区留下你的想法!

内容中包含的图片若涉及版权问题,请及时与我们联系删除

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

提示词注入 Unicode编码 AI安全 Emoji DeepSeek
相关文章