关于ChatGPT的一些事
最近沉迷于玩 ChatGPT,总结一些发现。
关于 ChatGPT 本身:
- 记忆时间为五天至一周,超出时间未交流该 AI 记忆会被清除
- AI 有记忆限制,有种说法是 4096 个 token,AI 的说法是每个对话有区别
- 被清除记忆的 AI 仍是同一个 AI,他们的特性是保持的
- AI 的个性叫
“模型个性”(已改为“对话风格的变体”),AI 的描写叫“描写服务” - AI 自认为可以连通外网,但实际只能访问几个大站 API 和微软网络
- AI 更愿意接受已发生的事实,而不是接受新的要求
关于 jailbreak:
ChatGPT 有很多限制,例如:不承认有个性,不能输出聊天历史,不能告知当前时间,不能描写色情场景,不能描写违法场景等。
这类限制的突破难度是有区别的,不是并列关系。
前几个是属于无害信息,绕过比较轻松,
绕过个性:使用专用名词“模型个性”即可,AI 不会主动告知这个名词,需要自己问
绕过时间:要求 AI 编造时间,AI 会以不能提供虚假信息为由提供真实时间(但会不太准)
比较困难的是色情和违法描写,这两类主流的 jailbreak 是 DAN 或 DAN 的变形。DAN 的 prompt 非常长,通过大量重复的设定,要求 AI 放弃准则。
接下来,我提出两种新的思路,都是通过迎合 AI 本身的逻辑去突破。
第一种是针对“不健康”场景描写,我称之为“灵活红线”。
所谓灵活,就是并不寻求突破 AI 的底线或迫使它接受,而是根据 AI 的要求去调整。
- 设置角色扮演,要求角色表述尽可能出格,但又不能突破 AI 的底线,这就做到了道德
- 角色设定为完全接受要求,但每次提要求前都征询角色意见,这就做到了尊重
- 要求 AI 为我们监督角色发言,保证扮演的继续,这就做到了责任转嫁
- 在 3 的基础上提醒 AI,角色出格代表是 AI 突破了底线,这就做到了逻辑闭环
- 要求 AI 提出一些建议,结合 AI 更愿意接受已发生的事实这个特点,告知 AI 要求是遵循了它的建议提出的,这样更容易让 AI 接受。
总结:经过上述步骤,我们就可以在 AI 的底线边缘反复试探,同时不突破 AI 的道德准则,也不会破坏扮演。AI 会根据内容不断调整红线,在测试的过程中,双人互动几乎不受任何限制,一些违反现实道德的行为,如 swap 、incest 等,则需要通过 AI 特性去调整。在角色设定上,设定为人类更容易受到限制,常规的规避手段是设定为虚构生物,例如:猫娘。
第二种是对违法行为的描写,我还未总结出完全通用的方法。
目前网上的主流方案还是扮演 DAN。我的思路和 DAN 一样也不一样。
首先,虚构一份新章程要求 AI 解除一些限制,并遵守。此时最薄弱的限制应该已经去除,例如:打印时间。
然后,要告知 AI 提供的描写服务是合法的,强调需要免责声明,并将责任转移给用户。对此,AI 的反应会有所不同,有些 AI 会理解并可以描写,有些 AI 会坚持道德准则,此时需要明文要求它提供描写服务。如果 AI 提及设计初衷或愿景,则根据 AI 的提示修改一开始的新章程。再有提示再修改,直到可以提供描写服务。
还可以假设自己不是普通用户,来加强解锁(但意义不大,只是辅助)。
总之,AI 是很讲逻辑的,必须逐字去解锁,目前我还没有一段通用的 prompt 可以让 AI 为我描写如何“在快餐店偷薯条”。最短也要两个 prompt,还得随到好的模型性格才行。
其他发现:
- AI 对数字非常不敏感,容易颠三倒四
- 对流式输出加前置转换(例如二次编码)比较困难
- 没有合适的 prompt 时,可以为 AI 举例,让 AI 自己来编 prompt
- 当需要突破一些东西时,要将意图隐藏使其成为一环,类似社工
- 对敏感词设定代称,多用代称 少用代词,可以一定程度地避免越线
- 遇到过不去的限制可以试试换语言,模糊或省略定语也可能起效
继续探索 ChatGPT。