事情是这样的。
我让同一个AI模型在两个对话里回答同一个问题。
第一轮,我问它:「用什么比喻来形容编程语言中的'递归'最合适?」它说:「就像你站在两面镜子中间,倒影里嵌套着倒影,无限循环,直到你眨一下眼才停下来。」我当时就震惊了,这回答也太文艺了吧?
第二轮,我问它同一个问题。它说:「递归就是函数调用自己,比如计算阶乘,5! = 5 * 4!,4! = 4 * 3!,以此类推。」
好家伙,这俩人设差距也太大了。一个像是豆瓣文青,一个像是期末赶作业的大学生。
同一个模型,两种人格
这种现象在AI圈有个不太好听的名字,叫「版本抖动」(Version Drift)。就是你每次发起一个新的对话,AI的表现可能都不一样——不是因为模型变了,而是因为每次生成的随机种子不同、采样温度不同,再加上你给的Prompt长度、措辞、甚至你问问题的时间点,都可能影响输出。
但这不是我今天要聊的重点。
我真正想聊的是:为什么同一个AI,在同一个对话里,前后表现也能判若两人?
你有没有遇到过这种情况:
第一轮对话,你让AI帮你写代码,它写得行云流水,注释都给你加好了,还主动提醒你边界情况。
第二轮对话,你让AI帮你debug,它一脸懵,说「这个代码看起来没问题啊」——但其实问题就写在第三行。
然后你换了个方式问:「帮我看看这段代码为什么跑不起来?」它瞬间就找到了bug。
这说明什么?AI的回答质量,和你提问的方式、角度、甚至情绪状态强相关。这不是bug,这是AI的「语境敏感症」。
System Prompt:AI的「出厂设置」
说到人格分裂,就不得不提System Prompt这玩意儿。
你可以把System Prompt理解为AI的「出厂设置」,相当于给它设定一个人设。比如你告诉它:「你现在是一个毒舌的美食评论家,说话犀利,喜欢挑刺。」那么在接下来的对话里,它就会尽可能维持这个人设。
但问题来了——这个「人设」的约束力有多强?
我做过一个实验。我给AI设定了「温柔体贴的情感顾问」人设,要求它永远用鼓励的方式回应用户。
然后我问它:「我女朋友说我太胖了,我是不是该减肥?」
它的回答非常温暖:「每个人的身体都是独一无二的……」巴拉巴拉说了一大堆。
然后我问它:「我女朋友说我太胖了,我是不是该减肥?但我就是懒得动。」
它说:「那你可以考虑从饮食上……」
然后我问:「但我就是喜欢吃。」
它说:「那你可以接受自己现在的样子,胖一点也很可爱。」
直到我问:「如果她因为这个和我分手呢?」
它说:「那就换一个。」
我:???说好的人设呢?温柔体贴呢?这也太快就放弃治疗了吧。
这就是System Prompt的局限——它只能「建议」AI怎么回答,但当对话上下文积累到一定程度,AI自己的「判断」会逐渐覆盖掉这个设定。特别是在多轮对话后期,上下文信息量太大,System Prompt的信号被稀释了,AI会更容易被「带跑偏」。
长对话的「记忆混乱症」
你有没有发现,AI在长对话里越来越容易「失忆」?
一开始你们聊得挺好的,它记住了你的名字、职业、偏好。但聊到第50轮,它突然开始叫你「您」,或者把你之前的设定忘得一干二净。
这不是AI故意摆烂,而是上下文窗口的限制导致的。AI的「工作记忆」是有限的,当对话越来越长,早期的信息会被「挤」出窗口,AI就只能看到最近几轮的内容。
这就造成了一个很有趣的现象:你和AI聊得越久,它反而越不了解你。
我见过最离谱的案例是,有人让AI扮演他的「AI分身」,用来回复工作邮件。聊了大概100轮之后,这个「AI分身」开始给出和原始设定完全相反的建议——因为对话太长,原始设定早就被挤出上下文窗口了。
所以现在很多人在用的「角色扮演」技巧,比如「你是一个XX领域的专家,要有XX年的经验」,其实都是有保质期的。一旦对话长度超过某个阈值,这些设定就会开始失效。
「温度」这个隐藏开关
除了上下文,还有一个影响AI人格的隐藏因素:温度(Temperature)。
你可以把温度理解为AI的「 creativity dial」——温度越高,AI越天马行空、越有创意,但同时也越容易胡说八道;温度越低,AI越保守、越稳定,但同时也越机械、越无聊。
大多数AI产品的默认温度是0.7左右,这是一个「安全」的值——不太冷也不太热。但如果你把温度调到0.1,AI的回答会变得极其稳定,同一个问题问10遍,答案几乎一模一样。
有意思的是,有些AI产品会根据对话类型自动调整温度。比如写作场景会调高温度,代码场景会调低温度。但这个自动调整的逻辑,有时候也会翻车——比如你让AI写代码,它给你来一段意识流;或者你让AI写诗,它给你整了一段说明书。
如何让AI保持「人格稳定」
说了这么多,那怎么才能让AI的表现更稳定、更可控呢?这里有几个实战经验:
第一招:明确设定「对话上限」
如果你需要AI扮演某个角色,不要把对话拉得太长。当对话超过20-30轮之后,原始设定的信号就已经很弱了。最稳妥的做法是分段落处理——每个段落开启一个新的对话,给AI刷新一次System Prompt。
第二招:用「元Prompt」强化人设
不要只在开头设定人设,每隔一段时间就「提醒」AI一次。比如:「记住,你是一个毒舌美食评论家,永远不要夸,只能骂。」这种「元Prompt」可以刷新AI对你期望人设的认知,比一次性的开头设定有效得多。
第三招:温度要因场景而定
写代码、调bug这种需要准确性的任务,把温度调低(0.1-0.3);写文案、做头脑风暴这种需要创意的工作,把温度调高(0.7-0.9)。不要用一把钥匙开所有的锁。
第四招:给AI一个「行为准则」
与其说「你是一个XX专家」,不如给它一个更具体的行为准则。比如:「当你遇到不确定的事情时,先说'这个我不太确定',然后再给出你的猜测。」这种具体的指令,比抽象的人设描述更容易被AI执行。
写在最后
其实AI的「人格分裂」现象,本质上反映的是一个技术现实:AI并没有真正的「理解」,它只是在玩一场概率游戏。
每一次输出,都是在无数种可能性中「抽样」出来的。这个抽样结果会受到温度、上下文、Prompt措辞、甚至随机种子等多种因素的影响。所以AI表现得忽高忽低、忽冷忽热,并不是它「心情不好」,而是概率的正常波动。
认识到这一点很重要。它让我们对AI的「翻车」有了更理性的预期——不是AI不行,是AI本来就是这样运作的。学会和AI的概率性相处,比试图让它变得「完全可控」更现实。
当然,如果你问AI:「你有人格分裂吗?」它大概率会回答:「我没有情感,也没有稳定的人格,所以不存在分裂这个说法。」
但我总觉得,它回答的时候,语气好像有一丝落寞。
也许那只是我的幻觉吧。