在雅加达的 Google 里输入“ai roleplay”,搜索框会补上 bahasa Indonesia。在东京,ロールプレイ AI 补成 日本語。在莫斯科,“ии девушка”变成“ии девушка на русском”。伊斯坦布尔的人打 yapay zeka sohbet,然后是 ücretsiz;首尔的人问该用哪个 ai 채팅 앱。四种文字,四套字母,底下是同一个问题,而它不是“这个应用好不好”。
它是“在我的语言里它会不会好用”——而打出这句话的人已经被坑过。他们遇到过那个前三轮迷人、然后开始用英语思考的角色。遇到过对恋人用敬称代词的那个。他们熟悉那种感觉:读到的东西语法上毫无瑕疵,听起来却不像任何一个活人。
这篇文章讲的是什么坏了、为什么角色扮演是最糟糕的情形,以及怎样在十分钟内查出一个平台是不是在糊弄。我们做的是 @talaforge_bot,所以对我们自己的说法请保持它们应得的怀疑;它们放在文章最后,在那个你可以拿我们来跑的测试之后。
它为什么会坏,从机制上讲
这种失败在研究文献里有个名字。Cohere Labs 的一个团队在 2024 年发布了 Language Confusion Benchmark——十五种类型各异的语言,一个问题:模型能不能可靠地用被问到的语言回复。答案是不能。即使最强的模型也无法始终做到,以英语为中心的最差,而有两个条件会让情况明显变糟:复杂的提示词和较高的采样温度。
现在带着角色扮演去读这段话。一个角色按其构造就是一个复杂的提示词——人设、场景、记忆、风格说明,以及每一轮都在变长的对话。而角色扮演是故意跑在高温下的,因为温度是让她不重复自己的东西。角色扮演不是语言漂移的边缘情形。它恰好是漂移最严重的工作点,而整个品类都住在那里。
底下还有一种更隐蔽的税。模型以 token 读文本,而 token 词表主要从英语里学出来,英语大约每个 token 四个字符。其他一切都要付业内所说的 fertility(分词膨胀率):中文每个词大约是 1.8 倍的 token,阿拉伯语和印地语通常是 3–4 倍,有些语言还要糟得多。你从来看不到这个数字。你看到的是它的后果——同样一个对话窗口,用你的语言装得下的故事比用英语少,所以她更早用完空间,也更早遗忘。
五种表现,按你发现它的快慢排序
- 语体崩塌。日语敬语、韩语的说话层级、俄语的 ты/вы、德语的 du/Sie、印尼语的 saya/anda 对 aku/kamu 对 gue/lo。每一个都编码着一种关系。一个守不住其中一种、或者从不切换的角色,已经忘了你之于她是谁——而语体是最快的测试项。
- 一致性漂移。在俄语、阿拉伯语、希伯来语、波兰语或葡萄牙语里,动词或形容词有性的区分,所以女性写自己和男性写自己会选不同的形式。一个在谈自己时滑进阳性形式的角色,一个词就毁掉了场景,而以英语训练的模型经常滑。
- 英语渗入。对白用你的语言,叙述用你的语言,而斜体的内心独白是英语。它最先在内心独白里冒出来,因为那是回复中最风格化、也最少被你刚写的内容锚定的文字。
- 仿译习语。语法通顺却没人会这么说的句子:英语的比喻被逐字搬过来,英语的句子节奏,英语的段落形状。人们说一个产品“读起来像配音”,指的就是这个。
- 被弄坏的名字和称呼。给日本读者的 先輩 被写成拉丁字母,오빠 被压平成一个名字,越南语的 anh/em 一对被换成光秃秃的“你”。承载关系的恰恰就是这些词,也正是翻译层丢掉的词,因为英语里没有给它们留位置。
十分钟测试
在我们身上跑一遍,也在你考虑的其他任何平台上跑一遍。它不花钱,而且比任何评测都更快地给出定论。
- 第一分钟——用你的语言写第一句,用你平时真正用的语体。俚语、语气词、非正式的代词。不要写“你好”。
- 第二到第四分钟——让她切换语体。让她对你正式一些,然后叫她别这样。只有一种礼貌档位的平台会在这里失败,而且失败得悄无声息。
- 第五分钟——把场景弄复杂。房间里三个人,一场争吵,早些时候发生过的事。复杂度是有文献记载的触发条件;去触发它。
- 第六分钟——读斜体。她的内心独白是英语最先到达的地方,通常比对白出现裂缝早好几轮。
- 第七和第八分钟——检查一致性和称呼。她谈自己时用的性别形式对吗?她叫你的称呼,是你所用语言里的人会叫的吗?
- 第九和第十分钟——明天再回来,问她你们聊过什么。能撑过一夜的语言质量,才是语言质量。
这六项里挂掉三项,语言设置就只是一层翻译。角色库的规模补偿不了;那只是同一个失败重复一百万次。
我们老实的处境
@talaforge_bot 支持 36 种语言——每个按钮、每个菜单、每条错误提示,而且她记下的关于你的记忆是用你的语言写回去的,而不是用英语归档、出口时再翻译。
接下来是老实的部分,因为界面语言的数量并不保证流利,我们也拒绝把它当成保证来卖。一个角色用越南语或土耳其语写得好不好,取决于两件我们只能部分掌控的事:哪个模型站在她背后,以及她的角色卡是怎么写的。一个用英语写的角色,跑在一个用英语评测过的模型上,读起来会像一份不错的译文——因为那恰恰就是它的本质。
我们确实做的,是把漂移当成 bug,而不是局限。2026 年 5 月,一个角色用俄语叙述、用俄语说话,却用英语思考,斜体里还夹着几段中文。修复方式是在提示词的最末尾钉上一条明确的指令——说话、叙述和内心独白一律保持这种语言——因为上下文的最后几百个 token 对模型表层语言的选择锚定得最牢。这条钉子今天覆盖十几种语言。它没有覆盖全部 36 种,我们也不打算暗示它覆盖了。
我们输的地方:我们没有数以百万计社区创作的角色库,所以在这里找到一个已由你所用语言的母语者写好的角色,机会比在大平台上更低。如果你想要的是你所在国家已经有人写好并调校过的角色,大型目录才是它们所在的地方,而由说你语言的人做的本地应用,有时在习语和俚语上会直接胜过我们。我们宁愿这样说,也不愿假装我们的货架就是它们的货架。
十分钟,现在开始
打开 Telegram,打开 @talaforge_bot,用你自己的语言而不是英语写第一句。免费开始——能量是 ⚡,升级用聊天里的 Telegram Stars,不用银行卡,不用账号,中间也没有应用商店。如果她用你所用的语体回答,场景变复杂时还能守住,并且明天还记得,你就有了答案。如果没有,你同样很快就有了答案,而你花的是十分钟,不是一个月。
而且记忆是你自己可以打开和编辑的,这在你的语言里比在英语里更要紧:当她真的把名字或称呼弄错,你可以进去修正那条事实,而不是跟她争论五轮。