共计 1124 个字符,预计需要花费 3 分钟才能阅读完成。
AI 角色扮演正在从“会聊天”走向“会演戏”。 浙江大学联合腾讯优图实验室提出的 AdaMARP, 试图为大语言模型补上一位“导演”: 它不仅让角色开口说话, 还能处理思考、动作、环境变化与场景调度。据介绍, 该工作已被 ACL 2026 接收。
📌 从单一对话到多角色叙事
当前不少角色扮演应用已经能模拟历史人物、小说角色或原创人设, 但交互形态往往仍停留在一问一答 。角色台词可以流畅, 故事却容易像发生在空房间里: 场景不变、人物不变, 环境线索也很少真正参与剧情推进。
在探案、冒险、谈判等复杂叙事中, 这种局限会被放大 。以福尔摩斯探案为例, 用户期待的不只是与侦探对话, 还包括查看案发现场、询问证人、切换地点、引入新人物, 以及让物证与人物反应共同影响推理。
🔍 AdaMARP 的核心: 四通道消息
AdaMARP 的一个关键设计 , 是将每轮交互拆成 Thought、Action、Environment、Speech 四类信息, 并允许它们灵活交织。也就是说, 角色可以同时表现出内心判断、身体动作、对环境的感知和对外说出的台词。
例如, 一个侦探角色可以先注意到煤气灯下的蜡痕, 再在心中形成推理 , 随后通过动作施压, 最后向证人提出追问。环境不再只是背景描述, 而会成为叙事因果的一部分。
这种格式的意义在于,AI 生成的内容不再只有“说了什么”, 还包含“为什么这么说”“做了什么”“现场发生了什么”。对于需要氛围、节奏和线索推进的角色扮演, 这比纯文本对话更接近沉浸式体验。
💡 场景管理器像一位“导演”
- init_scene: 初始化故事场景与基础环境;
- pick_speaker: 选择下一位发言者, 并给出选择理由;
- switch_scene: 在情节需要时切换地点;
- add_role: 动态加入新的证人、访客或相关角色;
- end: 结束当前互动。
值得注意的是, 场景管理器每一步都会输出对应理由 。这让系统不只是随机切换人物或场景, 而是能围绕上下文做出可解释的调度, 减少多角色互动中常见的混乱感。
📊 训练数据覆盖“会演”和“会导”
为支撑这一框架, 研究团队构建了两类数据集 。AdaRPSet 主要面向 Actor 模型, 用来学习角色如何保持人设、响应环境并以统一格式演绎互动。其中一部分来自文学作品提取, 另一部分则围绕探案、冒险、营救、谈判、魔法、末世等主题合成, 以补充场景切换和新角色引入能力。
🚀 行业看点: 角色扮演不只属于娱乐
- 在游戏中, 可用于更自然的 NPC 群体互动与剧情推进;
- 在教育中, 可模拟历史场景、法庭辩论或商业谈判;
- 在创作工具中, 可辅助编剧搭建多角色、多场景故事线;
- 在虚拟陪伴中, 可让角色拥有更稳定的叙事记忆与情境反馈。