• 投稿

从零手搓AIRP实录:遇到巨头都棘手的复读问题怎么办?

232
0
2026-07-22 22:05:20
4
投币
收藏
分享
前段时间有个 MuseAI 用户给我反馈了一个问题。 他说,聊着聊着 AI 就开始变成了复读机。 其实这问题不是 MuseAI 独有。Character.AI 和星野的用户在 Reddit 和贴吧上骂了两年,Replika 的社区流传着一套自救指南,第一条就是「每 50 条消息手动重置一次对话」。 说到底,所有 AI 伴侣产品都要面对这个,大模型概率预测机制天然倾向重复。「最可能的下一个词」往往就是刚才用过的词。一次微小的重复在长对话中会被指数级放大,你纠正它还不行,你一提那个词,模型注意力反倒更集中了。 那各家都是怎么应对的? Character.AI 在 2025 年初发了一篇官方博客,承认无意义重复是用户最频繁的抱怨,然后推了一个新模型,声称把重复减少了近 30%。他们的做法是对齐底层模型,而不是调参数,从模型层面动刀,说明他们也觉得参数调整有天花板。后来还加了一个编辑按钮,用户手动改掉一条重复消息,概率循环就会自动瓦解。 Replika 走得比较苦。2025 年做了一次完整的训练重置,把一些持续性的重复短语从模型里洗掉了。重置后多样性有提升,但 2026 年的 2.0 版本又引发了新的记忆不稳定问题。 Nomi AI 走的是另一条路。它的核心竞争力不是模型多强,而是记忆架构。它维护结构化用户画像,不堆对话历史,而是提取特征和偏好。对话记忆可以跨月维持。当模型真的记得你是谁的时候,它不需要从有限上下文中靠概率猜该说什么,自然就不会复读。 那回到 MuseAI 这边,我是怎么想的。 首先,我肯定没有资源和能力去在模型层面修改,并且也不准备为此专门做一个记忆架构。那么,我在应用层,准备同时调整模型参数、系统提示词、上下文管理。 首先是模型参数。频率惩罚和存在惩罚系数,对防止模型重复很关键。目前应用里只能调 temperature,不太够。 然后是系统提示词。在提示词里直接告诉模型,每次回复用与上次不同的句式开头、同一个形容词不要连用超过两次、如果想说跟之前类似的内容请换一种措辞。这些东西单独拿出来看有点蠢,但叠加起来确实有效。 第三层更关键也更难,上下文管理。 AI的上下文消息一多,最早的指令和设定就会被挤出去,模型可参考的信息变少,它就回到概率最安全的方向,也就是重复。 所以我的做法是滑动窗口加摘要加关键信息。老对话不直接删,而是将它们压缩成一段 简短的摘要,同时结构化地提取关键信息,用户身份、当前话题、已解决和待处理的事项。这样既能够记住聊过的事,也能让上下文不会过度扩大。 新版本的 MuseAI 把这三层都调整了一遍。参数、提示词、上下文机制,都做了优化。 但我得说句实话,这个问题没有终极解法。Character.AI 做了两年也只能减少 30%,Replika 做训练重置只解决了一部分。复读机说到底就是概率模型的固有属性,你能缓解它,但你不可能根治它。 只能持续优化,或者等待AI的进化。 > / 作者:Kitt在进化
✨ 亲手搭建有血有肉的AI世界
客服
顶部
赛事库 课堂 2021拜年纪