角色扮演模型怎么测
外面六类评测方法各自在量什么、差在哪,以及我们的训练场站在哪个位置。写给要训练自己角色模型、需要一把尺子的人。
先看结构:任何评测都是三个零件
不管哪家的方法,拆开都是三样东西。六类方法的差别,就是这三样各自怎么做的差别。
再加一个贯穿的问题:角色扮演到底要量什么?大致是三件事——像不像这个人(人设一致)、接不接得上话(对话质量)、该不该在这个时候说(社交判断)。前两件所有方法都碰,第三件几乎没人碰。
六类方法
一、静态数据集 + 多维打分 2024 年的一代
- 怎么做
- 先造一批多轮对话(CharacterEval:GPT-4 起草、人工筛选,77 个角色、1785 段)
- 把对话截到某一轮,让被测模型接下一句
- 裁判按十几个细粒度指标打分:会话能力、角色一致性、吸引力、人格回测等;CharacterEval 还训了一个专门打分的奖励模型 CharacterRM
- 量的是
- 给定上文,这一句回得像不像、好不好
- 长处
- 题固定,谁来测都一样,可重复、可比较;指标细
- 短处
- 角色多是名人(模型可能在背设定而不是在演);只测「接一句」,测不出多轮里的应变和人设漂移;打分靠 LLM,主观
二、用户模拟器 + 评委 目前最主流
- 怎么做
- 三个模型分工(PingPong 的叫法):扮演者是被测模型;审问者是另一个模型,装成用户和它聊,按剧本追问、挑衅、换话题;评委看整段对话打分
- RMTBench:80 个角色、8000 多轮,强调「以用户为中心」——题是用户想干什么,不是角色要展示什么
- PersonaGym:把角色丢进采样出来的环境里,算一个 PersonaScore
- 量的是
- 多轮里能不能守住人设、接住刁钻的用户
- 长处
- 比静态题更像真实使用;能测多轮
- 短处
- 模拟用户本身是模型,每次说的不一样,排名会抖;评委还是 LLM 打分;都是一对一,RMTBench 自己写了「多人场景是未来工作」
三、清单式、可追溯 2026 年 8 月,最新
- 怎么做
- 离线把每张角色卡拆成一份清单:这个人有哪些要求(口头禅、态度、禁忌、知识边界……)
- 一个 User Agent 和被测模型自然地聊,但它手里拿着清单,边聊边私下勾:这条测到了没、过了没
- 最后不给一个总分,而是告诉你哪几条过了、哪几条没过、证据是第几轮的哪句话
- 量的是
- 角色卡上的每一条要求是否被守住
- 数字
- MiniMax 自家 Role-play Bench 的自由聊天只覆盖角色卡 73.7% 的要点,TRACE 用更少轮数覆盖 99.9%;换一个 User Agent 重跑,排名不变;测了 26 个模型
- 长处
- 可解释、可追溯、排名稳;失败能定位到具体要求
- 短处
- 清单要有人写,写得好坏决定一切;仍是一对一
四、匿名化评测 2026 年 3 月
- 问题
- 大家都用知名角色测,模型可能只是在背这个角色的资料,不是在演。一换成没见过的角色,成绩就掉
- 怎么做
- 把角色匿名(抹掉能认出是谁的线索),只留人设描述,再测一遍
- 发现
- 匿名后成绩明显下降——说明名字一直在给模型「开小抄」;而补上人格描述能把成绩拉回来,不同的人格描述写法效果不同
五、评委可靠性研究 决定裁判怎么设计
- PersonaEval
- 不让评委打分,让它做辨认题:给一段对话,问「这是哪个角色说的」。结果连 Gemini 2.5 Pro 都在人类一眼能看出的题上出错。结论:LLM 当角色扮演评委,还没到能完全信任的程度
- Style over Substance
- 专门研究多人社交对话里的 LLM 评委:它能抓到明显跑题,但偏爱像客服、像助手的回复,看不出互动自不自然
六、社交与多人 几乎空白
- SocialBench
- 测「社会性」:个体层面——自我认知、情绪感知、长程记忆;群体层面——社会偏好。但题仍是设计好的问答,不是真的群聊
- DEBATE
- 多智能体长篇辩论,是多人,但场景是辩论,不是日常社交
- 空白在哪
- 「微信式群聊里,好几个角色各自决定说不说、什么时候说、对谁说」——我没找到任何基准在做。RMTBench 把它明确列为未来工作
· MiniMax Role-play Bench:M2-her 配套,叫 Situated Reenactment,从世界观、故事、用户偏好三个维度量「失准」风险;TRACE 拿它当对照,指出它的自由聊天只覆盖 73.7% 的角色要点。
· Aion RPBench-Auto:Arena-Hard 的角色扮演版,让模型互相评;Aion 自家的 8B 模型在上面排第一,参考价值要打折。
· OpenRouter 角色扮演榜:按用量排,不是按质量,前几名全是通用模型。只能说明大家在用什么,不能说明什么好。
一张对比表
| 方法 | 题从哪来 | 角色 | 裁判 | 多轮 | 多人 | 可重复 | 可追溯 | 主要量什么 |
|---|---|---|---|---|---|---|---|---|
| 一 静态数据集 | 写死的对话,截断接一句 | 多为名人 | LLM 多维打分 / 奖励模型 | 弱 | 否 | 强 | 弱 | 单句像不像、好不好 |
| 二 用户模拟器 | 模拟用户现场追问 | 名人为主,部分原创 | LLM 打分 | 强 | 否 | 中(对手会变) | 弱 | 多轮守不守人设 |
| 三 清单式 TRACE | User Agent 带着清单聊 | 角色卡 | 按清单逐条勾 | 强 | 否 | 强(换 Agent 排名不变) | 强 | 角色卡每条要求守没守 |
| 四 匿名化 | 沿用别家的题 | 匿名 / 原创 | 沿用 | — | 否 | — | — | 剥离「认识角色」看「会不会演」 |
| 五 评委研究 | 辨认题、多人对话 | — | 研究裁判本身 | — | 部分 | — | — | 评委靠不靠谱、偏什么 |
| 六 社交 / 多人 | 设计好的社交问答、辩论 | 混合 | LLM 打分 | 中 | 部分 | 中 | 弱 | 情绪感知、记忆、社会偏好 |
| 我们的训练场 | 真实群聊按切点冻成题集 | 原创 + 心理画像 | 确定性尺子 + 辨认评委(在做) | 强 | 是 | 强(题集冻结) | 强(每次决定存完整 prompt) | 台词像不像 + 该不该这时候说 |
三组关键差别,讲透
静态题 vs 动态题
我们的做法是两头都要:训练迭代用冻结题集(静态,可重复);上线后的真实群聊日志当训练数据(动态,真实),不拿它当尺子。
打分 vs 辨认 vs 清单
我们的顺序:先辨认(客观、便宜),再清单(可追溯),成对比较攒够量了再上。
名人角色 vs 原创角色
我们的训练场:已经有的,和要借的
已经有的:多人群聊(别人没有)、原创角色加心理画像(方法四证明这是对的)、每次决定存完整 prompt 可回放(方法三的可追溯)、冻结题集(方法一的可重复)、一把不用评委的确定性尺子(格式、出戏、时机、打字习惯、重复)。
它量出过的东西:同样 40 道题,M2-her 一离开 JSON 就 80% 出戏(写旁白、替别人说话),而在 JSON 模式下完全看不出来;豆包惜字如金,急性子的陆一鸣被它演成一句话一个气泡;改协议字段顺序「先想后说」没有一项变好。这些都是尺子先量出来、再回头看原文才确认的。
要借的四样,按顺序做:
- 辨认任务当评委层的核心(借自方法五)一道题四个角色的台词抹掉名字混在一起,给评委四张角色卡配对。答对率 = 人设辨识度。客观,不受评委偏爱助手腔影响。
- 清单法(借自方法三)把角色卡和心理画像拆成可勾选条目,尺子按条目追溯到哪句话。条目同时就是训练数据的筛选规则——评测和训练用同一把尺。
- 稳定性自检(借自方法三)换评委、换题集重跑,排名一致度(Kendall τ)够高才算尺子可靠。尺子自己也要被测。
- 不用名人(借自方法四)保持原创角色。题集要扩到多个场景、多组角色,避免模型「背」下一个群聊。
做完这四样,这套训练场是「多人群聊 + 原创角色 + 清单可追溯 + 匿名辨认评委」,在上面六类里是没人占的位置。
几个名词
- LLM-as-a-judge
- 用一个大模型当裁判给另一个模型的输出打分。便宜、快,但有偏见(偏长、偏礼貌、偏助手腔)。
- 人设漂移 persona drift
- 聊得越久越不像这个人:忘了口头禅、态度变了、开始像客服。长对话评测主要盯这个。
- 用户模拟器 user simulator
- 用模型装成用户去和被测模型聊,代替真人测试员。
- 清单覆盖率
- 一场对话里,角色卡上的要点有多少比例被实际测到了。TRACE 的核心指标之一。
- 成对比较 / Elo
- 两两比较选优,按胜负更新分数,像棋类等级分。Arena 类榜单的做法,比直接打分稳。
- Kendall τ
- 两份排名的一致程度,1 完全一致,0 无关。用来检验「换个评委排名还一样吗」。
- 出戏
- 台词里出现这个人不会打出来的东西:括号动作描写、旁白、替别人说话、提到模型或提示词、助手腔。