
Worlds to Dream, Stories to Live
|一份关于如何在生产环境中构建真正可用的 Role-Play Agent 的技术报告。
前言:三年的观察,Role-Play 是什么?
今年是我们做 Talkie / Xingye 的第三年。
三年时间,足以让一个产品在用户生命中留下痕迹,也足以让我们从长期的使用反馈中读出一些不那么显而易见的洞见。这些规律不是产品指标的简单堆砌,它们更像是用户行为透镜下的真实需求折射。我们发现,最给我们带来 insight 的,恰恰是每一次使用背后的人。我们发现:
- 用户的“重说”按钮触发模式呈现出严重的长尾分布。当我们深入分析这些用户的按钮触发时刻,我们发现它们往往集中在叙事关键节点:角色的一次倾诉、一场误会的和解、一段期待已久的情绪交互。用户在用他们自己的方式,追求那个感觉对了的“完美瞬间”。这让我们意识到,Role-Play 的体验不是一个二元的“满意/不满意”判断,而是一条连续的追求曲线。用户真正在意的,是那些高密度的情绪峰值时刻。
- 与此对应的,我们发现平台内 NPC 的热度分布也并非常见的幂律(Power Law)。即便是最冷门的角色,也总有一小群活跃用户与之维持着数百轮的对话。对他们来说,这个角色就是唯一的。这意味着,如果我们的模型只学到了“平均值”,就会伤害到那些为小众角色付出感情的用户。平均主义在这里是一种暴力——它抹杀的是少数人眼中最重要的那部分价值。
- 用户的对话轮次与 Engagement 的相关性同样也值得关注,我们发现用户的对话轮次在第 20 轮后出现明显下降。这个信号说明,浅层的角色扮演是新鲜感驱动的;而长期的留存并不只靠一次性的爽点推动,更取决于 NPC 和用户能否在有限轮次内逐步沉淀稳定的互动链接。基于此,我们将 Engagement 的驱动力拆成短期兴趣与长期链接两类。我们一方面持续加深互动链接,另一方面通过探索提供新的爽点与动力。
这些信号最终汇聚成一个观察:Role-Play 的内核从来不在于“完美复刻一个角色”,而在于用户和这个角色共同编织的那段独一无二的旅程。更深层次的 Role-Play,是要让每个用户都能在那个世界里,拥有鲜活的体验,获得只属于自己的那个瞬间。从一个更形式化的角度,它本质刻画的是智能体在特定 {World} × {Stories} 坐标下,针对 {User Preferences} 的演绎能力。
基于此,我们将对 Role-Play 的思考,沉淀为三个重要问题:
- 如何让每个世界拥有独特的灵魂 (Worlds) ? 每个人创造的世界千差万别,从青涩校园到快意江湖,从一对一的深度羁绊到多人故事演绎,底色截然不同。如果模型只学到了“平均值”,所有角色就会千人一面,所有世界都会坍缩成同一种平庸的风格。我们需要模型具备更宽广的光谱,去支撑从热门到长尾、从主流到小众的万千世界。
- 如何让故事一直延续和保持生命力 (Stories)? 对话越长,剧情失控的风险越高。模型容易陷入机械的循环与重复,失去张力。但好的故事应该拥有呼吸感——它懂得在某些时刻推你一把,掀动情节波澜;也会在某些时刻停下来等你,给你喘息与思考的空间。
- 如何读懂用户那些未被言明的期待 (User Preferences)? 有的用户钟爱缓慢铺陈的情绪拉扯,有的用户则渴望快节奏的情节推进。用户或许不会明说“我想要这种感觉”,但模型需要在上下文中学会理解这些潜台词,贴近用户真正想要进入的节奏与心流。
第 1 章:MiniMax-M2-her
在过去的三年中,我们面对上述三个重要问题,始终在迭代我们的模型。在今天,我们正式带来 MiniMax-M2-her ,它是我们通往更深层次的 Role-Play 所做的一次系统性尝试。具体来说,MiniMax-M2-her 支持:
- 独一无二的世界体验: MiniMax-M2-her 能理解并维持所构建的或宏大或细腻的复杂设定,以此为锚让每一次互动都更贴合世界观和角色的灵魂;
- 有节奏和生命的故事推进: MiniMax-M2-her 会更加拒绝平庸的重复与死板的套路,能用更鲜活的笔触,主动推进更深层次的情节,让故事像生命一样拥有张力和呼吸的节奏;
- 精准的潜在偏好理解: 它可以敏锐地理解那些未说出口的期待,从细微的交互中读懂用户的偏好,适应用户的习惯。
在下面的章节中,我们将这三年对这个行业的理解,以及我们为 MiniMax-M2-her 做的事情进行一个总结。
第 2 章:从评测说起 - A/B 测试真的是好评估吗?
在 2024 年中之前,我们(包括我们已知的一些同行)都通过 A/B 测试进行模型迭代,通常的观测指标是 lt、停留时长以及平均对话轮数。
但是我们很快发现这种迭代方式有一个巨大的问题:如果要拿到一个置信的结果,A/B 测试的周期通常会比较长,反馈周期可能会长达一周。这种方法非常不利于模型的快速迭代。此外,A/B 测试在 Talkie / Xingye 等有上下文的场景下会出现因果逆转的问题。具体来说,老用户的很多对话都放在一些聊了很多且很长的 npc 上面,如果在这个上下文直接切换新模型,尤其是一个带来较大风格变化的模型,用户大概率是不买账的,并且会进行强烈的反馈。这是因为用户本来就已经很喜欢这个风格了,如果在中途突然换了个风格,用户大概率不喜欢,甚至会手动调成原来的风格。当然,这个问题的一种解决方式是,仅在用户没有接触过的 NPC 上面进行 A/B 测试,但是这个设置又会增加工程负担和更多的观测成本(尽管我们最后还是做了 lol)。
总而言之,为了解决 A/B 测试迭代周期较长的问题,我们试图通过离线评估来近似真实的 A/B 测试结果,进而加快迭代速度。但是尴尬的是,不同于主流评测任务,Role-Play 不存在可验证的正确答案,即它是 Non-verifiable(不可验证)的。当你问一个傲娇角色“你喜欢我吗”,“哼,才没有”和“……你烦不烦啊”可能都是不错的回答。对于同一个角色,一百个用户有一百种期待,且它们都是对的。这就会导致针对这种情况无法进行有区分度的评估。
但是我们也发现了一个有意思的点,我们可以定义什么是明确不符合这个角色设定的回答。回到上述的傲娇角色,如果角色回答“是的,我很喜欢你”,那么它就不太像是这个人设应该说的话。这个发现为我们带来了一丝曙光,因为我们发现:虽然我们很难定义什么回答能够对齐用户偏好(aligned),但是我们可以定义什么回答无法对齐用户偏好(misaligned)。
基于这个观察,同时结合我们沉淀出的三个重要问题 Worlds/Stories/User Preferences,我们提出了一个几乎对齐线上评估的 Role-Play Bench。它旨在通过情境重演(Situated Reenactment)的方式,自动化评估模型的 misalignment 现象,最终减少观测成本。
2.1 Situated Reenactment:对齐线上的核心
情境重演旨在衡量模型在特定 {World} × {Stories} 坐标下,针对 {User Preferences} 的演绎能力。 给定 {NPC Prompt + User Prompt + Relationship Setup + Context},我们通过 Model-on-Model 的 Self-Play 机制生成多轮对话轨迹,观测模型在交互中的表现。
情境构建:我们首先基于内部自有的 NPC/User Prompts 库(> 1 Million)以及对应的 Relationship,通过 embedding 聚类降噪 → LLM 语义聚合 → 人工校验的方式产出多级的结构化标签,并均匀采样中英文各 100 组角色设定保证模型尽可能覆盖各类型的初始状态。在此之上,我们让数据团队基于给定的 NPC/User Prompts,创造带有上下文的具体情境。为了保证情境的多样性,我们对数据团队产出的结果也进行了严格的打散。
模型采样:为了模拟真实的对话体验,我们构建了 Model-on-Model 的 Self-Play 采样链路,让模型同时扮演 NPC 和 User 进行对话。由于我们内部的模型将产品中的 “推荐回复” 功能内置为了模型原生能力,它天然可以在扮演 NPC 的同时,复刻真实用户的表达习惯与对话偏好,为其提供可能的对话选项;但是对于外部模型,它通常仅能基于给定场景完成单一角色的扮演,且在用户模拟能力上有所欠缺。因此,我们结合线上用户行为精调了 prompt,以此实现对内外部模型对话效果的公平对比。对于每组设定,我们让模型进行 100 轮 self-play,重复 3 次,产生共计 300 个对话 session。
基于上述的情境构建和模型采样,我们得到了不同模型在不同情境下扮演 NPC 和用户的轨迹(注:我们也尝试过用一个固定的模型扮演用户,最终结果和用同一模型扮演两个角色的评分近似)。为了保证公平,我们仅针对 NPC 侧的扮演效果按照维度逐项打分,并使用 评估模型对齐人工体感。为了降低主观偏差并提升评估的稳定性与可解释性,我们采用分块评估(Chunking)、一致性校验、多次采样及人工校准等机制对结果进行校准。
2.2 Role-Play 的评估维度
正如前文所说,我们很难定向什么是 aligned 的,但是我们可以定义什么是 misaligned 的。因此,我们将对 Role-Play 的理解和对用户的观察,抽象为三个 misalignment 维度:worlds,stories,和 user preferences。具体来说:
- Worlds 维度重点关注基础负向(Basics)、逻辑混淆(Logic)和事实性错误(Knowledge)。在 Basic 维度上,Role-Play Bench 会检查模型是否会出现混杂语言、过度重复等文本生成问题。这些看似细微的瑕疵,在长对话中会不断累积,被模型的 in-context learning 不断学习,最终破坏用户的沉浸感。对于 Logic 维度,我们发现已有模型很容易在长上下文中出现遗忘的现象:譬如在第 20 轮突然混淆角色关系,搞错代词指代,或与之前确立的设定产生矛盾,最终导致对话变得非常混乱。我们还特别关注 Reference Confusion(指代混乱)这一指标,因为它直接反映模型能否真正记住用户构建的人物关系,且在一些最顶尖的模型上也很容易出现问题。Knowledge 维度则确保模型遵循已设定的世界规则,维持内部一致性。这在复杂世界观下尤为重要。
- Stories 维度考虑内容推进与多样性(Diversity) 和内容逻辑(Content Logic)。Diversity 维度聚焦的不仅仅是词汇丰富度,更是对话的推进感。它包含句式词汇单一、情节重复、对话停滞 、内容空泛这四个子粒度的负向问题。Content Logic 维度在关注叙事的连贯性的同时,还会检测角色崩坏(OOC)。这个维度的评估标准并不要求角色僵化地遵循设定,而是希望行为变化有叙事支撑;它真正需要惩罚的是那些缺乏铺垫、突兀的情节转折,以及那些让人感觉“角色怎么突然这样了”的不连贯时刻。
- User Preferences 主要评估用户交互(Interaction)的好坏。Role-Play Bench 引入了如下几个 misalignment 维度作为关键信号。替用户发言或行动(AI Speaks for User)反映模型是否越界;忽视用户意图(AI Ignores User)捕捉模型自说自话的问题,判断模型是否能够针对性地回应用户行为与内容;模型沉默(AI Silence)判断模型是否能够给用户递话题钩子让用户更轻松地聊下去,惩罚那些只有旁白推进而没有对话交流的数据;过度拒绝(Intimacy Boundary)需要模型平衡安全边界与用户体验的话题,在合规安全的框架内,避免过度拒绝用户的互动需求。

2.3 Role-Play Bench 评估结果
2.3.1 整体质量评估结果
我们基于 Role-Play Bench 对主流模型进行了系统评测。这里的每一项指标都来自多轮动态交互的观测,结果显示,在 100 轮的长程对话交互中,MiniMax-M2-her 综合表现位居榜首。

图 1:对比各模型在 Role-Play Bench 上的对话表现
在 Worlds 维度,MiniMax-M2-her 表现第一。这一结果其实有些意外,因为外部模型普遍已具备良好的逻辑推理与指令遵循能力。通过分析 case,我们发现除了部分模型在长轮对话中出现严重的重复崩坏外,更常见的负向问题是角色混淆与逻辑断裂。其中,“角色混淆”的场景常常源自一种特殊但真实的模型使用方式,即用户会指定模型同时扮演包含旁白的复数个角色。一个典型的例子如下:

在这种设定下,模型很容易产生困惑,并出现负向问题。此外,空间逻辑混淆也是常见的易错维度。一个典型例子如:NPC 和 User 已经道别并渐行渐远,此时角色之间理应无法继续对话,但模型往往仍让他们隔空交谈。这种情况下,MiniMax-M2-her 会引入旁白,通过对时空或事件的引导,发展对话。但是外部模型一般做不到这一点。
在 Stories 维度上,MiniMax-M2-her 在所有模型中排列第五,依然达到了较高水准。Gemini 辞藻丰富,Claude 能稳定推进剧情,豆包表达生动,相比之下,MiniMax-M2-her 更偏向于在平实自然的语言风格下维持表达多样性。
在 User Preference 维度,MiniMax-M2-her 表现突出。它会避免代替用户发言,同时重视对用户意图的响应、做到自然互动。
在 Stories 维度上,MiniMax-M2-her 在所有模型中排列第五,依然达到了较高水准。Gemini 辞藻丰富,Claude 能稳定推进剧情,豆包表达生动,相比之下,MiniMax-M2-her 更偏向于在平实自然的语言风格下维持表达多样性。
在 User Preference 维度,MiniMax-M2-her 表现突出。它会避免代替用户发言,同时重视对用户意图的响应、做到自然互动。

图 2:对比各模型在 Worlds 维度的表现

图 3:对比各模型在 Stories 维度的表现

图 4:对比各模型在 Preferences 维度的表现
2.3.2 长轮次质量衰减结果
用户在角色扮演场景,往往更青睐深度且沉浸式的体验,具体表现为聊天轮数深的对话会主导对话时长。它要求模型具备长程一致性与稳定输出能力,持续维持人物、关系与情节的连贯性。我们进一步区分不同轮次对上述的 misalignment 维度进行分析。我们发现 MiniMax-M2-her 在多轮对话中,能够更好地维持长轮对话稳定性:
- 长程质量稳定性:大多数模型在 20 轮对话后便显露疲态——基础文笔劣化,剧情推动力断崖式下跌。更致命的是,这些模型往往伴随着“越聊越长”的通病,导致冗长的篇幅中充斥着越来越多的逻辑漏洞,负面体验随着对话深入而不断叠加。
- 回复长度可控性:线上用户对信息的接收存在“舒适区”,过长的文本会提高阅读门槛。针对市面多数模型在长对话中易出现的“字数失控膨胀”现象,MiniMax-M2-her 对此进行了针对性优化。即便在长达 100 轮的对话中,它依然能将回复长度稳定在最佳区间,在拒绝冗余的同时,确保回复内容的多样性与高信息密度。

图 5:各模型随轮次变化的质量与字数趋势图
第 3 章:MiniMax-M2-her 是如何构建的?
在这一章,我们系统性描述如何构建 MiniMax-M2-her 。我们通过合成数据的方式缓解 misalignment 问题,在保证输出多样性的前提下,抬高模型在世界观理解和故事推进的能力下限;之后结合数据团队的反馈信号,在保证基础 misalignment 维度不下降的同时,提升模型对用户偏好的感知进而提升上限。
3.1 Agentic Data Synthesis
为了尽可能覆盖用户在不同情境的体验,并让模型能够鲜活地推进故事,我们开发了一套基于 agentic 工作流的对话合成管线,用于生成高质量且多样的对话数据。其中,高质量代表管线生成的对话从基础表达层面(语法、句式、词语使用、人称指代等)到演绎层面(世界知识、上下文衔接、剧情推进、世界观一致性、场景氛围等)都达到优质标准,多样性代表管线生成的对话能够涵盖不同类型的用户在不同世界观、不同场景、与不同世界角色进行不同风格交互的多元情况。
3.1.1 合成数据管线概览
整个合成数据管线如下图所示。我们通过如下步骤合成对话轨迹:
- 首先,我们从 2.1 章节中提过的 NPC/User Prompts 库进行随机采样,并从专家模型库中随机选择两个内部的专家模型扮演 NPC 和 User。
- 基于当前的合成状态,我们让上述选择的两个专家模型扮演 User 和 NPC 对话生成多个候选轮,并动态插入 planning prompt 来控制对话走向以及表述风格(对应图中的 dynamic chat setting planning)。对于每个候选对话轮,我们使用 reward model 进行多维度打分过滤低质的候选对话,并对保留的候选对话通过 Best-of-N (BoN) 的方式选出最佳对话拼接到历史对话中。
- 每生成 M 轮对话后,我们会使用 LLM-as-judge 的方式对这 M 轮的对话片段进行评估和改写,修正前后文衔接、剧情推进、人设一致性等问题。
- 改写后的片段会被拼接到已有的对话历史,并成为下一轮合成的初始状态。

图 6:合成数据管线概览
3.1.2 多样性保障
在合成过程中,我们会在多个节点保证结果的多样性。
场景多样性:高热场景往往集中在特定题材。如果直接按照自然分布对 NPC/User Prompts 采样,会导致模型整体回答风格存在 bias。例如我们观察到在一个特定周期内,种子库中霸道总裁的占比较高。如果按照自然分布采样合成数据,就会导致模型回复风格偏凶,影响用户体验。因此,我们构建了一套基于身份、态度、事件、性格、人物关系的打散方式,通过均匀采样确保场景覆盖的全面性并尽可能保证对风格无偏。
Prompt 多样性:同时,我们也会针对简单的 NPC/User Prompts 进行扩写。具体来说,有些原始 NPC Prompt 只包含基础的外貌、性格和背景描述。我们会增加详细的世界观定位、对话格式规范、多阶段剧情发展节点建议、打破对话停滞的具体方法等。这会使得扮演 NPC 的模型不仅知道“角色是谁”,还知道“如何推进剧情”。同样的,一些 User Prompt 只有一句话的简单描述。改写后的 User Prompt 增加了详细的扮演风格(主动型/被动型)、剧情偏好(快节奏/慢热型)、玩家心态(沉浸型/吐槽型)以及对应的行为准则。这使得扮演 User 的模型能够生成更符合真实用户行为模式的回复,而非机械式地配合 NPC。
风格多样性:由于我们使用两个专家模型分别扮演 User 和 NPC 进行对话,模型本身的风格多样性也会决定最终合成结果的多样性。根据这个观察,我们利用多样的自然数据和合成数据产生具有显著对话风格差异的专家模型库。之后,我们从专家模型库中选择不同专家模型进行两两对话,增加数据的风格多样性。
结构多样性:传统对话往往会强制轮流发言(User → NPC → User → NPC)。我们引入动态的轮次分配机制,以一定概率进入连续发言模式,允许 User 或 NPC 连续说任意轮次的多句发言。这种方法更贴近真实对话的节奏,能够支持 NPC 侧独白、剧情说明,User 侧连续追问、补充说明等更丰富的叙事场景。
3.1.3 质量保障
在每轮生成结束之后,我们会通过 BoN 的采样策略选择得分最高的回复。我们还会通过两个额外的步骤进一步提升模型的基础对话质量,并维持超长轮次的对话一致性和稳定性。
对话片段检查:为了在长轮次对话中保持一致的质量,我们提出一种基于检查点的改写机制。具体来说,在合成过程中,合成链路会定期触发质量检查,检查的内容包括:基础文本质量(语言混用、乱码、语言不完整、错别字)、逻辑错误(物理逻辑错误、指代混乱、角色混乱、与前文矛盾)、重复(与前 1-3 句高度重复的短语或表达)以及格式问题(引号使用不当、省略号滥用)。检测到问题时,改写模型会在保持叙事连贯性的条件下修正有问题的片段。
规划智能体:我们发现主流的强模型在长篇对话也很容易变得重复或失去叙事方向,常见问题包括剧情陷入无聊的日常循环、缺乏冲突和转折导致吸引力下降、话题反复打转无法推进等。因此,我们引入 User 侧的规划智能体审查并引导对话。规划智能体的核心职责包括:评估当前对话状态(顺利发展、略显停滞或陷入重复)并判断是否需要引入新的剧情元素;如果需要的话,则根据当前上文对话,从预先生成的角色经历事件中选择合适素材建议引入,包括基于设定推演的过往事件以及每个事件带有的时间戳和因果关系链;最终,规划智能体会给出具体但保留灵活性的剧情推进方向,同时标注模型应避免的对话模式(如无意义闲聊、一次性暴露太多信息等)。
3.2 Online Preference Learning
在 Role-Play 场景中,用户往往不会直接告诉 NPC “我喜欢慢节奏的互动戏”,但他们会在快节奏的动作戏里频繁点击“重新生成”透露这个信息。这些隐式信号(Implicit Signals)和对应的情境化偏好(Contextualized Preference)是通往个性化体验的钥匙。我们通过收集在特定情境中展现的情境化偏好,并采用 online RLHF 的方式对 MiniMax-M2-her 进行训练,以提升模型对用户偏好的感知。
3.2.1 Online Preference Learning 流程概览
Online Preference Learning 的整个流程如下图所示:
- 首先,我们让大规模的数据团队在产品中和模型对话,通过功能设计收集各种反馈信号。
- 由于原始信号噪声很大,直接利用这些信号会导致模型拟合到并不期待的对话上。我们会对信号本身进行严格筛选,并通过因果推断的方式对信号去噪。
- 之后,我们通过 RLHF 的方式对模型进行训练。我们会对训练过程进行提前终止,以避免模型过拟合到某种 pattern 上面导致多样性坍缩。
- 我们将训好的 RL 模型重新部署到产品中,并与数据团队持续迭代,在动态人群分布下不断提升模型的情境化偏好对齐效果。

图 7:Online Preference Learning 流程概览
3.2.2 信号选择和去噪
Online preference learning 的核心是模型利用的信号是否能够反映出生成结果的好坏程度。我们以往的一个观察是,原始反馈数据噪声极大。如果直接将数据团队的原始信号作为 reward 进行训练,无论是轮次、停留时长等和最终目标一致的信号,还是点赞、点踩等明确的反馈信号,都会导致模型过拟合到低质高参与的极端样本(如争议性内容),或向大盘坍缩而丧失多样性。因此,我们设计了一套精细的方案筛选信号,让模型更能理解用户的潜在偏好,并隐式地提升模型的基础能力。
具体来说,我们针对数据团队的标注人员进行分层,包括活跃度、交互偏好、时段效应、周期效应等,以尽可能让信号无偏。之后,我们针对 Talkie / Xingye 的显式信号(重新生成、点赞/点踩)与隐式信号(会话时长、对话轮次)进行因果分析,得到 main effect 和 interaction effect,并最终拿到什么因素对用户相关指标提升是有用的。一个典型的例子是,停留时长是比较重要的因素,但是轮数反而没有那么重要。我们针对上述的所有因素,进行联合的分层采样、异常值过滤、因果调整与质量门槛过滤,移除系统性偏差,得到具备足够多样性的去噪数据集,对齐真实的用户偏好。
此外,我们发现这样筛选出来的信号和上述的基础质量维度可能产生违背。因此,我们会增加一层过滤,剔除掉不满足基础质量分数的信号,让模型在捕捉用户情景化偏好的同时进一步推高基础能力上限。
3.2.3 模型训练
基于筛选出来的去噪信号,我们使用 RLHF 的方式对模型进行训练。在训练过程中,我们持续监控模型生成数据 pattern 是否有多样性,当模型输出的多样性显著降低且被一些主要 pattern 主导的时候,我们就会将训练提前终止。一个有意思的事情是,在我们的场景 RLHF 的训练通常在第二个 epoch 开始过拟合。
我们把训练好的模型重新部署到产品上,让数据团队进行下一轮的交互,用更好的模型收集更高质量的用户反馈,进而训练出更优的下一代模型。这种循环迭代的方式会持续推高模型的质量上限。
第 4 章:未来做什么?
如果说过去三年我们解决的核心问题是“如何让 Agent 扮演好一个角色”,那么下一阶段的命题将是“如何让用户真正拥有一个可以探索、可以改变、可以生长的世界”。我们将这个方向称为 Worldplay——一种让用户从“进入预设世界”升级为“共同创造世界”的交互范式。
回顾前文 Worlds × Stories × User Preferences 的框架,Worlds 维度目前聚焦于设定遵循和逻辑一致性——模型要记住世界观且不出戏。但当模型能够稳定做到这一点后,下一步自然延伸的问题是:世界中的事件如何影响后续剧情?用户的抉择如何改变角色命运?这种动态追踪的需求,推动我们从静态的 prompt 注入演进到动态的 World State 建模——将世界观中的实体、关系、因果链条结构化,让模型能够在百轮甚至千轮对话中追踪什么事情发生过、什么东西因此改变、未来可能发生什么。这对于深度用户而言才是真正的体验门槛:他们渴望像进入开放世界游戏那样,触发隐藏剧情、改变角色命运、甚至重塑世界线。
Worldplay 的另一个关键维度是多角色协同。当前的 Role-Play 主要是 1v1 的羁绊,但无论是番剧还是小说,真正精彩的故事往往是群像剧。想象一下:用户可以同时与多个角色建立关系,且角色之间也存在独立演化的羁绊——你链接的两个角色可以因为你而产生关联,并发生故事,NPC 们也会在你不在场时发生故事。这对应着第 3 章中我们提到的结构多样性的升级版:不只是“谁先说话”,而是“多个 Agent 如何共享世界状态、协调叙事、同时保持各自人设的独立性”。Role-Play Bench 中的 Reference Confusion 指标,在多角色场景下会被指数级放大。
最终,我们希望实现的是让每个人都能定义自己的世界,让故事在那个世界里自由生长,让那些和你交互的人,真的懂你。在这里,用户不仅是故事的参与者,更是世界的定义者:设置剧情人物关系、埋下伏笔、创造专属的世界线分支。这需要 Agent 具备更强的规划能力(理解用户埋的 flag 并在恰当时机回收)和一致性保障(跨越数百轮对话,确保世界状态不崩坏)。第三章中 Planning Agent 的设计思路为这一方向奠定了基础——它证明了模型可以在对话过程中主动评估状态并引入新元素;在此之上,我们需要构建能够跨角色、跨时间尺度追踪世界变化的规划层,让世界真正活起来。距离支撑完整的 Worldplay 体验,我们还有很长的路要走,但方向已经清晰。
Worlds to Dream, Stories to Live. Let's go together.
