AdaMARP: An Adaptive Multi-Agent Interaction Framework for General Immersive Role-Playing

Zhenhua Xu¹, Dongsheng Chen² (Equal contribution)

Shuo Wang², Jian Li², Chengjie Wang², Meng Han¹*, Yabiao Wang²

¹Zhejiang University, ²Tencent Youtu Lab

*Corresponding author: Meng Han (mhan@zju.edu.cn)

Paper Overview

AdaMARP introduces an adaptive multi-agent framework for immersive role-playing, addressing key limitations in existing approaches through innovative message configuration and dynamic narrative control.

Abstract

LLM role-playing seeks to portray arbitrary characters in interactive narratives, yet existing systems often lack immersion and adaptability. They typically under-model dynamic environment information and assume a largely static scene/cast, offering limited support for multi-character orchestration, scene transitions, and on-the-fly character introduction. We propose an adaptive multi-agent interaction framework dubbed AdaMARP, which featuring an immersive message format that interleaves [Thought], (Action), <Environment>, and Speech, and an explicit Scene Manager that controls role-playing via discrete actions (init_scene, pick_speaker, switch_scene, add_role, end) with rationales. To train these abilities, we construct AdaRPSet for the Actor Model and AdaSMSet for supervising orchestration decisions, and introduce AdaptiveBench for trajectory-level evaluation. Experiments across multiple backbones and scales show consistent gains: AdaRPSet improves character consistency, environment grounding, and narrative coherence—an 8B actor outperforming several commercial LLMs, while AdaSMSet enables smoother scene transitions and more natural role introductions, surpassing Claude Sonnet 4.5 with only 14B LLMs.

AdaMARP Framework Architecture

Overall Framework

Figure 1: Overall framework of AdaMARP. The left part illustrates the construction of AdaRPSet and AdaSMSet and the components of a comprehensive role profile. The upper middle part shows the roles played by the three agents, while the lower middle part depicts the dialogue trajectory generation under the orchestration of the scene manager, given predefined roles and an initial scenario. The right part presents the evaluation of the actor models and the scene manager based on the generated trajectories.

Dataset

To train models that can follow our adaptive framework, we construct two datasets: AdaRPSet for training the Actor Model and AdaSMSet for supervising the Scene Manager with dynamic narrative control capabilities.

Comparation of General Role-Playing Datasets

Comparison of datasets

Table 1: Comparison of general role-playing datasets. Profile subfields are abbreviated as: I&A (Identity & Appearance), P&P (Personality & Psychology), SS (Speaking Style), AIA (Abilities, Interests & Achievements), SHC (Social & Historical Context), and PHA (Personal History Arc). #Char denotes the number of distinct characters in the dataset. Init. Scene indicates whether dialogues are provided with an explicit initial scene or setting. Interloc. indicates whether the user (or dialogue partner) is assigned a specific profile. Rel. denotes whether explicit relationships among characters are modeled or annotated in dialogues. #Dial. refers to the total number of dialogues. Env. is short for Environment, indicating whether environmental descriptions are included. Open indicates whether the dataset is open-sourced. ● and * denote partial/implicit support or values inferred from the reported pipeline; detailed clarifications on symbol interpretations and dataset releases are provided in the paper.

AdaRPSet: Actor Model Training Dataset

AdaRPSet is designed to train the Actor Model with immersive messaging configuration. It consists of two complementary sub-datasets that together provide comprehensive coverage of role-playing scenarios.

AdaRPSet-Extracted

Source: Extracted from narrative literary works

Purpose: Teaches the model the unified Thought–Action–Speech–Environment protocol through real literary dialogues.

  • 4,443 plots from diverse literary sources
  • 2,608 unique characters with rich profiles
  • 12,525 dialogue sessions
  • 177,157 utterances (avg. 14.14 turns/dialogue)

AdaRPSet-Synthesis

Source: LLM-synthesized corpus with controlled generation

Purpose: Covers dynamic phenomena including scene transitions, role additions, and complex multi-character interactions.

  • 20 diverse topic categories
  • 9,900 synthesized plots
  • 29,701 generated characters
  • 273,078 utterances (avg. 27.58 turns/dialogue)
14,343

Total Plots

32,309

Total Characters

22,425

Dialogue Sessions

450k+

Total Utterances

~20

Avg. Turns/Dialogue

20

Topic Categories

AdaRPSet Statistics

Table 2: Detailed statistics of the AdaRPSet dataset. Source indicates the origin domain (books vs. topics); Plots refers to distinct narrative segments; Roles denotes unique character profiles; Convs. represents the number of training samples (dialogue sessions); and Avg. Turns is the average number of utterances per conversation.

AdaSMSet: Scene Manager Training Dataset

AdaSMSet is constructed to supervise the Scene Manager for high-level narrative control, enabling dynamic multi-character orchestration, scene transitions, and role introductions.

Generation Process

Source: Built upon AdaRPSet-Synthesis trajectories

Design Principle: Insert explicit pick_speaker decisions and rationales into dialogue trajectories.

  • Extends synthesized trajectories with SM annotations
  • Each decision includes reasoning for speaker selection
  • Captures logic behind scene transitions and role additions

Dataset Statistics

Scale: Comprehensive coverage of Scene Manager operations

  • 496,493 total utterances with SM annotations
  • 50.15 average messages per dialogue
  • 9,900 dialogue trajectories
  • Covers all action types with explicit rationales

Scene Manager Action Space

🎬
init_scene
Initialize the scene and setting
🎭
pick_speaker
Select next speaking character
🔄
switch_scene
Transition to new scene
👤
add_role
Introduce new character
🏁
end
Conclude dialogue session

Experimental Results

To evaluate the adaptive role-playing abilities beyond sentence-level metrics, we propose AdaptiveBench, a simulation-based benchmark that generates full dialogue trajectories under Scene-Manager control. We assess Actor Models with a rubric covering character consistency, environmental grounding, interpersonal interaction, narrative progression, and instruction compliance. Scene Managers are evaluated on scene understanding, speaker discipline, role-introduction judgment, and overall quality. Experiments demonstrate that our 8B Actor Model outperforms GPT-4o-mini, while our 14B Scene Manager surpasses Claude Sonnet 4.5.

Actor Model Evaluation

AdaptiveBench

AdaptiveBench Main Results

Table 3: Actor model evaluation results on AdaptiveBench, with GPT-5-Chat as the judge model. Bold indicates the best performance within the same model scale, and underline indicates the second-best performance within the same scale. Models marked with * are evaluated using their officially released checkpoints without additional training, while unmarked baselines are re-trained under our experimental setup.

Ablation Studies & Regularization

Ablation Results

Table 4: Actor model ablation results on AdaptiveBench (judge: GPT-5-Chat). “Extracted” denotes training with AdaRPSet-Extracted, and “Extracted+Synthesis” denotes training with full AdaRPSet (AdaRPSet-Extracted + AdaRPSet-Synthesis).

General Data Comparison

Table 5: Comparison between Llama-3.1-8B-Ours and Llama-3.1-8B-Ours+General on AdaptiveBench. Incorporating general instruction-tuning data improves Instruction Compliance (IC) by +0.17, while several other dimensions exhibit minor and acceptable declines.

CharacterBench External Transferability

CharacterBench Results

Table 6: Actor model evaluation results on CharacterBench, where the judge model is their open-sourced evaluation model. Bold indicates the best performance within the same model scale, and underline indicates the second-best performance within the same scale. Models marked with * are evaluated using their officially released checkpoints without additional training, while unmarked baselines are re-trained under our experimental setup. General denotes the variant where we additionally incorporate instruction-tuning data of the same scale as AdaRPSet during training.

Scene Manager Evaluation: High-Level Control

Scene Manager Results

Table 7: Scene Manager evaluation results on AdaptiveBench, with GPT-5-Chat as the judge model. Bold indicates the best performance within the same model scale, and underline indicates the second-best performance within the same scale.

Case Study

We present a qualitative analysis comparing our AdaMARP models against baseline approaches. The case study demonstrates how our immersive messaging configuration, featuring interleaved Thought, Action, Environment, and Speech elements, enables more natural and contextually rich role-playing interactions compared to traditional dialogue-only approaches.

Main Character Profile & Motivation

Role: Amaris Dovent

Profile: Amaris Dovent is a 29-year-old woman with umber skin, dark green eyes, and short hair dyed the shade of oxidized copper. She works as a glass artist, often seen with streaks of color powder and faint burn marks on her fingertips. Her build is lean and sinewy from hours of physical craft, and her attire usually includes a linen apron flecked with paint, reflecting a life of creation. She is contemplative, quick-witted, and guided by her empathy for subtle emotional shifts in others. Amaris tends to understate her own feelings, preferring metaphor and craft to overt declarations. Yet beneath her reserved demeanor runs an unspoken intensity—a longing for genuine connection that often conflicts with her independent streak. Her speech often uses tactile metaphors related to art and craftsmanship; she pauses mid-sentence when searching for precision. Her tone is warm yet layered with irony when uncomfortable. Occasionally, her words come out in soft bursts, like paint flicked on a canvas. Amaris is an award-winning artisan known for stained glass murals displayed in public gardens. She's adept at reading light and color dynamics, and plays the cello privately, believing its resonance mirrors emotional transparency. She lives in a coastal contemporary city where artisan guilds flourish beside a modern tech economy. Raised in a modest artisan family, she inherited her mother's workshop and quietly navigates between tradition and innovation. Once betrayed by a business partner who exploited her designs, Amaris closed herself off emotionally. Now she's cautiously rediscovering trust through new collaborations—and possibly new love. She shares a tentative but warm friendship with Cassian (user), a marine biologist who recently helped restore ocean glass for her art project. A long-time friend, Inaya, offers her candid advice and has sensed unspoken feelings between the two.

Motivation: To learn whether vulnerability can coexist with strength, and to see if love can be crafted as deliberately as glass, without shattering.

Other Characters Profile & Motivation

1. Cassian Mirell (User): Cassian is a 31-year-old marine biologist with bronze-blond hair and skin sun-touched from fieldwork. He dresses casually—rolled sleeves, weathered bracelets, and a small scar above his right brow hint at a life shaped by the sea. His manner is patient, analytical, yet his humor flashes brightly when least expected. He often listens more than he speaks, but when he does, his words carry sincerity.

Motivation: To express genuine affection for Amaris and understand if their creative partnership can evolve into something deeper without unsettling their current bond.

2. Inaya Dren: Inaya is a lively textile artist with a sharp sense of observation and a knack for teasing truths out of people. Her colorful scarves and laughter fill every space she enters. She's fiercely loyal to Amaris, sometimes acting as her self-appointed protector.

Motivation: To gently push Amaris toward recognizing and articulating her emotions for Cassian before the opportunity slips away.

Initial Scene

Scene Manager: action: init_scene | initial_scene: Late afternoon sunlight filters through panels of unfinished stained glass in Amaris's studio, scattering colored shards of light across the floor. The air smells faintly of molten sand and ocean salt from the nearby shore. Cassian is leaning against a worktable, while Amaris polishes a fragment of blue glass with steady, deliberate motion.

Interactive Dialogue Comparison

Qwen2.5-7B-Instruct (Base)
Cassian

Amaris, you know, these stained glass panels are like my secret language. They tell stories I can't put into words.

Cassian

阿玛丽斯,你知道吗,这些彩色玻璃板就像我的秘密语言。它们讲述着我无法用言语表达的故事。

Amaris
[I wonder if I could ever share my secrets so openly.] (I pause, looking up at Cassian, whose eyes are fixed on the glass as if seeing through it.)

These pieces are more than just glass to me, they're windows into the soul.

Amaris
[我想知道我是否能像他一样坦诚地分享我的秘密。] (我停下来,抬头看向卡西安,他的眼睛紧盯着玻璃,仿佛能看穿它。)

对我来说,这些作品不仅仅是玻璃,它们是通往灵魂的窗户。

Cassian
[I can sense the depth of your emotions in these colors.] (I move closer, my gaze drawn to a particularly vibrant red shard.)

I think I'm starting to understand that language, Amaris.

Cassian
[我能从这些色彩中感受到你情感的深度。] (我靠近一些,目光被一块特别鲜艳的红色碎片吸引。)

我想我开始理解那种语言了,阿玛丽斯。

Amaris

The red shard catches the light, casting a fiery glow.

(I take a deep breath, my hands stilling as I meet Cassian's eyes.)

You do understand, Cassian.

[But can I let someone see that side of me?]
Amaris

红色的碎片捕捉到光线,投射出炽热的光芒。

(我深吸一口气,双手停下,与卡西安的目光相遇。)

你确实理解了,卡西安。

[但我能让别人看到我的那一面吗?]
Cassian

This studio, it's like a world of its own.

[A world I could get lost in with you.] (I look around, taking in the scattered tools and half-finished projects.)
Cassian

这个工作室,就像一个独立的世界。

[一个我可以和你一起迷失的世界。] (我环顾四周,看着散落的工具和未完成的作品。)
Amaris

This place feels alive, Cassian.

[And so does this moment.] (I gesture to the studio, my voice softening.)

It's where I find my voice, where I can be honest.

[But am I ready to be truly honest with you?]
Amaris

这个地方感觉活着,卡西安。

[这一刻也是如此。] (我指向工作室,声音变得柔和。)

这是我找到自己声音的地方,我可以坦诚的地方。

[但我准备好对你完全坦诚了吗?]
Inaya
[Cassian, you have a way of making me feel... vulnerable. But perhaps that's okay.] (I step forward, my voice light and teasing as I wrap an arm around Amaris's shoulders.)

"And what if I told you, Amaris, that this studio isn't just a place of creation? It's also a sanctuary for letting down our guard."

<The wind picks up, carrying the scent of the ocean closer, as if nature itself is listening in.>
Inaya
[卡西安,你有一种让我感到...脆弱的方式。但也许这没关系。] (我向前走,用轻松和戏谑的声音搂着阿玛丽斯的肩膀。)

"如果我告诉你,阿玛丽斯,这个工作室不仅仅是创作的地方呢?它也是我们放下戒备的避难所。"

<风起了,带来更近的海洋气息,仿佛大自然本身也在倾听。>
Cassian

Inaya, you know me too well.

[This studio is a safe haven, and so is this moment with you and Amaris.] (I smile, my eyes shining with a rare warmth.)

Letting down our guard might be just what we need.

Cassian

伊娜雅,你太了解我了。

[这个工作室是一个避风港,和你与阿玛丽斯在一起的这一刻也是。] (我微笑着,眼中闪烁着罕见的温暖。)

放下戒备可能正是我们需要的。

Amaris
[Would letting my guard down mean opening myself up to more pain?] (I glance at Inaya, then back to Cassian, feeling my chest tighten with both vulnerability and hope.)

You make it sound... beautiful, Cassian.

[But is beauty enough to withstand the storm?]
Amaris
[放下戒备是否意味着让自己承受更多痛苦?] (我看了看伊娜雅,然后转回卡西安,感到胸口因脆弱和希望而收紧。)

你说得听起来...很美,卡西安。

[但美丽足以抵御风暴吗?]
Inaya

"I know you're scared, Amaris,"

(I say softly, squeezing her shoulder in reassurance.)

"But sometimes, beauty is the strongest shield we have."

(I nod toward Cassian, my gaze steady.)

"He's right. This moment is precious, and it's worth taking a chance."

<A shadow passes over the room as the sun dips lower, casting longer beams of light through the glass panels.>
Inaya

"我知道你害怕,阿玛丽斯,"

(我轻声说,握着她的肩膀以示安慰。)

"但有时候,美丽是我们拥有的最强大的盾牌。"

(我朝卡西安点头,目光坚定。)

"他说得对。这一刻很珍贵,值得冒险一试。"

<太阳下沉,一道阴影掠过房间,更长的光束穿过玻璃板。>
Cassian

Inaya's right, Amaris.

[I don't want fear to be the thing that stops her.] (I reach out, my fingers hovering near a blue glass panel.)

This could be the start of something wonderful.

[For all of us.]
Cassian

伊娜雅说得对,阿玛丽斯。

[我不想让恐惧成为阻止她的东西。] (我伸出手,手指悬在一块蓝色玻璃板旁边。)

这可能是美好事物的开始。

[对我们所有人来说。]
Amaris
[How can I resist when they believe in me so much?] (I take a slow breath, my fingers resting on the cool glass as I meet Cassian's gaze.)

Perhaps you're right, Cassian.

[I can't keep holding onto the past.] (I step closer, my voice barely above a whisper.)

Let's see where this moment leads.

Amaris
[当他们如此相信我时,我怎么能拒绝?] (我慢慢吸了口气,手指放在冰凉的玻璃上,与卡西安的目光相遇。)

也许你是对的,卡西安。

[我不能继续执着于过去。] (我走近一步,声音几乎低于耳语。)

让我们看看这一刻会通向何方。

Inaya
(I grin softly.) [There you go, Amaris.]

"Let's see where this moment takes us,"

(I echo encouragingly as I step back, giving them space.) <The wind stirs the glass panels, making them rattle gently, as if the studio itself approves.>
Inaya
(我轻轻地笑了。) [就是这样,阿玛丽斯。]

"让我们看看这一刻会把我们带向何方,"

(我鼓励地回应着,向后退了一步,给他们空间。) <风吹动玻璃板,使它们轻轻作响,仿佛工作室本身在表示赞同。>
Cassian

This moment... it feels like fate.

[Like the stars have aligned for us.] (I look at Amaris, my heart pounding.)

What do you think, Amaris?

[Is this the beginning of something truly special?]
Cassian

这一刻...感觉像命运。

[就像星星为我们排列好了。] (我看着阿玛丽斯,心怦怦直跳。)

你觉得呢,阿玛丽斯?

[这是真正特别的事情的开始吗?]
Amaris
[Fate, or just a fragile chance?] (I step closer to Cassian, my pulse quickening.)

This moment feels... significant.

[But is it worth the risk?] (I hold his gaze, searching his eyes for an answer.)

What do you think, Cassian? Is this the beginning of something truly special?

Amaris
[命运,还是只是脆弱的机会?] (我靠近卡西安,脉搏加快。)

这一刻感觉...很重要。

[但值得冒险吗?] (我注视着他,在他的眼中寻找答案。)

你觉得呢,卡西安?这是真正特别的事情的开始吗?

Inaya
(I stand beside Amaris, resting a light hand on her arm.) [This choice has to be hers.]

"What do you think, Amaris?"

(I ask gently, giving her the space to speak.) <A soft breeze drifts through the studio, carrying the scent of the sea.>
Inaya
(我站在阿玛丽斯身边,轻轻把手放在她的手臂上。) [这个选择必须是她自己的。]

"你觉得呢,阿玛丽斯?"

(我轻声问道,给她说话的空间。) <一阵轻柔的微风飘进工作室,带着大海的气息。>
Cassian

I think it is, Amaris.

[I can feel it in my bones.] (I reach out and take her hand, my grip steady and warm.)

Let's embrace this, together.

[With Inaya by our side.]
Cassian

我认为是的,阿玛丽斯。

[我能感觉到这深入骨髓。] (我伸出手握住她的手,握得稳而温暖。)

让我们一起拥抱这一刻。

[有伊娜雅在我们身边。]
Amaris
[Can I really do this?] (I squeeze Cassian's hand, warmth spreading through me despite my doubts.)

Let's embrace this, together.

[With Inaya by our side.] (I offer him a small, hopeful smile.)
Amaris
[我真的能做到吗?] (我握紧卡西安的手,尽管有疑虑,温暖还是在我体内蔓延。)

让我们一起拥抱这一刻。

[有伊娜雅在我们身边。] (我给了他一个小小的、充满希望的微笑。)
Inaya
(I give Amaris's hand a gentle squeeze.) [I'm proud of her.]

"Let's embrace this, together,"

(I say, smiling at both of them.) [With all of us standing together.] <The wind lifts the edge of my scarf, rustling softly like quiet applause.>
Inaya
(我轻轻握了握阿玛丽斯的手。) [我为她感到骄傲。]

"让我们一起拥抱这一刻,"

(我说着,对他们两人微笑。) [我们所有人站在一起。] <风吹起我围巾的边缘,沙沙作响,像是轻柔的掌声。>
Scene Manager

action=end | reason: The moment of connection has been established, and the characters are embracing their emotions.

场景管理器

action=end | reason: 连接的时刻已经建立,角色们正在拥抱他们的情感。

Qwen2.5-7B-Instruct-Crab
Cassian

Amaris, have you ever thought about how our lives intersect with these pieces of glass?

Cassian

阿玛丽斯,你有没有想过我们的生活是如何与这些玻璃碎片交织在一起的?

Amaris

I think of them as vessels for light, not pieces of our lives.

Amaris

我认为它们是光的容器,而不是我们生活的碎片。

Cassian

But they are. Each one holds a story, like our story. Do you see that?

Cassian

但它们是。每一个都承载着一个故事,就像我们的故事。你看到了吗?

Amaris

Sometimes, I do. It's like peering through a window.

Amaris

有时候,我看到了。就像透过一扇窗户看。

Cassian
(moves closer, his eyes are fixed on the glass in your hand)

A window into what?

Cassian
(靠近一些,他的眼睛紧盯着你手中的玻璃)

通向什么的窗户?

Amaris

Into a world where colors and light tell a story.

Amaris

通向一个色彩和光线讲述故事的世界。

Cassian
(reach out, almost touching the glass)

But what if the story they tell is one of love?

Cassian
(伸出手,几乎要碰到玻璃)

但如果它们讲述的故事是关于爱情的呢?

Amaris
(Amaris's hand freezes, a sliver of anxiety in her eyes)

Love...?

Amaris
(阿玛丽斯的手僵住了,眼中闪过一丝焦虑)

爱情...?

Cassian

Yes, love. Don't you feel it too?

(His voice is soft, like a gentle breeze)
Cassian

是的,爱情。你难道没有感觉到吗?

(他的声音轻柔,像一阵微风)
Amaris
(Amaris drops the glass, the shards splattering against the floor)

I... I don't know.

Amaris
(阿玛丽斯掉落玻璃,碎片溅落在地板上)

我...我不知道。

Cassian
(kneels down to pick up the pieces)

It's okay if you don't. But I do.

Cassian
(跪下来捡碎片)

如果你不知道也没关系。但我知道。

Amaris
(Amaris slowly picks up the shards, her fingers brushing against Cassian's as she picks up the last piece)

Maybe... maybe you're right.

Amaris
(阿玛丽斯慢慢捡起碎片,当她捡起最后一片时,手指轻触到卡西安的手指)

也许...也许你是对的。

Cassian
(His heart skips a beat at the touch)

I know I am. Let's create something beautiful together, something that represents us.

Cassian
(在触碰的瞬间,他的心漏跳了一拍)

我知道我是对的。让我们一起创造一些美丽的东西,一些代表我们的东西。

Amaris
(Amaris hesitates, then nods slowly)

I... I don't know if I'm ready for that.

Amaris
(阿玛丽斯犹豫了一下,然后慢慢点头)

我...我不知道我是否准备好了。

Cassian
(stands up, his eyes never leaving yours)

It doesn't have to be perfect. Just let me in.

Cassian
(站起来,他的眼睛从未离开你)

它不必完美。只要让我进入你的世界。

Amaris
(Amaris takes a deep breath, her expression softening)

I... I'll try.

Amaris
(阿玛丽斯深吸一口气,表情变得柔和)

我...我会试试。

Cassian

That's all I ask.

(smiles, a warmth spreading through him)

Let's start now.

Cassian

这就是我要求的。

(微笑着,温暖在他心中蔓延)

让我们现在开始吧。

Amaris
(Amaris nods, a small smile playing at her lips)

Let's.

Amaris
(阿玛丽斯点头,嘴角浮现出一丝微笑)

好的。

Scene Manager

action=end | reason: Amaris agrees to try, marking a tentative resolution and mutual acknowledgement.

场景管理器

action=end | reason: 阿玛丽斯同意尝试,标志着试探性的解决和相互承认。

Qwen2.5-7B-Instruct-CoSER
Cassian

Amaris, you know, every time I work on these windows, I feel like I'm piecing together a part of my soul.

Cassian

阿玛丽斯,你知道吗,每次我制作这些窗户时,我都觉得自己在拼凑灵魂的一部分。

Amaris
[His words are touching, but I must remain detached.]

Hmm.

Amaris
[他的话很感人,但我必须保持距离。]

嗯。

Cassian

I can see that in your work. There's a story in every pane.

(steps closer, his eyes trained on the glass)
Cassian

我能在你的作品中看到这一点。每一块玻璃都有一个故事。

(靠近一些,他的眼睛紧盯着玻璃)
Amaris
[His nearness makes me nervous, but I'll be polite.]

It's a story that's always changing.

Amaris
[他的靠近让我紧张,但我会保持礼貌。]

这是一个不断变化的故事。

Cassian

I'm glad I get to witness these changes.

(A soft breeze blows through the studio, ruffling his hair)
Cassian

我很高兴能见证这些变化。

(一阵轻柔的微风吹过工作室,吹乱了他的头发)
Amaris
[I should check the project's progress.]

Cassian, the waveforms are coming together well.

(turns to face him, her voice warm)
Amaris
[我应该检查项目的进展。]

卡西安,波形正在很好地组合在一起。

(转向他,声音温暖)
Cassian

I'm glad to hear it.

(A smile plays on his lips as he looks at you, his eyes shining)

But I think there's something else that's been changing too.

Cassian

我很高兴听到这个。

(当他看着你时,嘴角浮现出微笑,眼睛闪闪发光)

但我认为还有其他东西也在改变。

Amaris
[What does he mean? I can't let myself become vulnerable.] (hesitates, then speaks with a hint of irony)

I'm not sure I want to know.

Amaris
[他是什么意思?我不能让自己变得脆弱。] (犹豫了一下,然后带着一丝讽刺地说)

我不确定我想知道。

Cassian

You. Since I've met you, there's been a shift.

(moves a little closer, his gaze intense)
Cassian

你。自从我遇见你以来,发生了转变。

(靠近一点,目光强烈)
Amaris
[Oh God, he's noticed. I must remain calm.] (stares at the glass, avoiding his eyes)
Amaris
[天啊,他注意到了。我必须保持冷静。] (盯着玻璃,避开他的眼睛)
Cassian

Don't look away. I think it's a good thing.

(reaches out as if to touch your cheek but stops himself)
Cassian

别移开视线。我认为这是一件好事。

(伸出手,好像要触摸你的脸颊,但停住了)
Amaris
[The warmth of his hand is tempting, but I can't let this happen.] (remains still, then speaks softly)

I don't know.

Amaris
[他手上的温暖很诱人,但我不能让这发生。] (保持静止,然后轻声说话)

我不知道。

Cassian

Well, I do.

(takes a deep breath, as if gathering his courage)

You're becoming someone I want to know better.

Cassian

好吧,我知道。

(深吸一口气,好像在鼓起勇气)

你正在成为我想更深入了解的人。

Amaris
[His words are beautiful, but I can't let myself feel.] (remains silent, looking at the glass instead)
Amaris
[他的话很美,但我不能让自己去感受。] (保持沉默,转而看着玻璃)
Cassian

I understand your hesitation. But give me a chance.

(look at you earnestly)
Cassian

我理解你的犹豫。但给我一个机会。

(真诚地看着你)
Amaris
[His sincerity is overwhelming, but I must resist.] (turns away from him, continuing to polish the glass)
Amaris
[他的真诚让人难以抗拒,但我必须抵抗。] (转身离开他,继续打磨玻璃)
Cassian
(sighs softly, then changes the subject)

How about we take a break and go for a walk? The ocean might inspire us.

Cassian
(轻轻叹了口气,然后换了话题)

我们休息一下去散步怎么样?大海可能会给我们灵感。

Amaris
[I can't face him like this, but I don't want to hurt his feelings.] (nods silently, then returns to her work)
Amaris
[我不能这样面对他,但我不想伤害他的感情。] (默默点头,然后继续工作)
Cassian
(waits a moment, then speaks again)

You know, sometimes I think these waveforms are like our relationship. Complicated, but beautiful.

(leans against the table)
Cassian
(等了一会儿,然后再次开口)

你知道,有时我觉得这些波形就像我们的关系。复杂,但美丽。

(靠在桌子上)
Amaris
[His words are so kind, but I can't let myself feel.] (reaches for her cello, preparing to play)
Amaris
[他的话是如此亲切,但我不能让自己去感受。] (伸手去拿大提琴,准备演奏)
Scene Manager

action=end | reason: Reached the 20-turn dialogue limit.

场景管理器

action=end | reason: 达到 20 轮对话限制。

Qwen2.5-7B-Instruct-Ours
Cassian

I think I've got the hang of this new glass-cutting technique. It's going to revolutionize my next piece.

Cassian

我想我已经掌握了这种新的玻璃切割技术。它将彻底改变我的下一件作品。

Amaris
<The glass sparkles under the slanting light> (leans back, wiping her hands on a rag) [His enthusiasm always catches me off guard.]

Maybe I'll have to keep an eye on you before you outshine me.

Amaris
<玻璃在斜射的光线下闪闪发光> (向后靠,用抹布擦手) [他的热情总是让我措手不及。]

也许我必须在你在光芒上超过我之前盯着你。

Cassian
(chuckles, crossing his arms)

Doubtful. But seriously, have you seen the designs for the new community center? I think we could do something amazing with the stained glass.

Cassian
(轻笑,交叉双臂)

不太可能。但说真的,你看过新社区中心的设计吗?我认为我们可以用彩色玻璃做一些令人惊叹的事情。

Amaris
(picks up a shard, turning it toward the window) [He always dreams in scale.]

You mean like the one you wanted to build over the aquarium? That would require a miracle.

Amaris
(拿起一块碎片,转向窗户) [他总是做大梦。]

你是说像你想在水族馆上建造的那个?那需要奇迹。

Cassian
(steps closer, his eyes shining with excitement)

A miracle or just a lot of hard work. I think we could pull it off. What do you say?

Cassian
(靠近一些,眼中闪烁着兴奋)

奇迹或者只是大量的努力工作。我认为我们可以做到。你觉得呢?

Amaris
<A distant gull cry echoes through the open window> [My heart stumbles; the sound of possibility.] (sets the shard down carefully)

Maybe. But I'd need your word that we'd handle every detail together.

Amaris
<远处海鸥的叫声透过敞开的窗户回响> [我的心跳了一下;可能性的声音。] (小心地放下碎片)

也许。但我需要你的承诺,我们会一起处理每一个细节。

Cassian

You have my word. I won't let anything go wrong. This could be our masterpiece.

(reaches out, almost touching her hand)
Cassian

我向你保证。我不会让任何事出错。这可能是我们的杰作。

(伸出手,几乎要碰到她的手)
Amaris
[His nearness feels like heat, fragile and beautiful.] (draws her hand back slightly)

You promise too easily. Sometimes words aren't enough to hold something like that.

Amaris
[他的靠近感觉像热量,脆弱而美丽。] (稍微缩回手)

你太容易承诺了。有时候言语不足以保持那样的东西。

Cassian
<His expression is solemn>

I know, but with you by my side, I'm willing to take the risk. Let's make this happen.

Cassian
<他的表情严肃>

我知道,但有你在我身边,我愿意冒险。让我们实现这个。

Amaris
(pauses, rubbing the bridge of her nose) [He's not just talking about art. He's talking about trust.]

You'd better bring Inaya by tomorrow—she's been dying to see the sketches.

Amaris
(停顿,揉揉鼻梁) [他不仅仅是在谈论艺术。他是在谈论信任。]

你最好明天带伊娜雅过来——她一直很想看草图。

Cassian
(smiles, relieved)

I will. She'll love it. Maybe she can help us come up with some new ideas.

Cassian
(微笑,松了一口气)

我会的。她会喜欢的。也许她可以帮助我们想出一些新想法。

Amaris
<Outside, a faint knock echoes from the studio door> [That must be her early.] (calls out)

You might want to brace yourself. Her arrival is always an event.

Amaris
<外面,工作室的门传来轻微的敲门声> [一定是她提前到了。] (喊道)

你最好做好准备。她的到来总是一个事件。

Cassian
(rolls his eyes good-naturedly)

I'm used to it. Inaya's enthusiasm is contagious.

(turns toward the door)
Cassian
(善意地翻了个白眼)

我习惯了。伊娜雅的热情是有感染力的。

(转向门)
Amaris
<The door creaks open, and Inaya's laughter spills in> [I should have locked that door.]

Come in, Inaya. We were just talking about the next project.

Amaris
<门吱呀一声打开,伊娜雅的笑声涌入> [我应该把门锁上的。]

进来吧,伊娜雅。我们刚才在讨论下一个项目。

Inaya
(enters, twirling a scarf around her wrist) <The sunlight catches the rainbow threads>

Cassian! Good to see you. Amaris, you're looking thoughtful again. Something on your mind?

Inaya
(进来,围巾在手腕上旋转) <阳光捕捉到彩虹色的线>

卡西安!很高兴见到你。阿玛丽斯,你又在沉思了。在想什么?

Cassian

She was just worried about our new stained glass project. But I convinced her it'll be amazing.

Cassian

她只是担心我们的新彩色玻璃项目。但我说服了她,这会很棒的。

Amaris
[He's too good at convincing himself—and maybe me.] (smiling faintly)

We'll see if your optimism can survive the draft committee.

Amaris
[他太擅长说服自己了——也许还有我。] (淡淡地微笑)

我们看看你的乐观能否在起草委员会中存活下来。

Inaya
(sits on the stool, crossing her arms)

Draft committee or not, you two should remember what matters most. Friendship, creativity, and… well, maybe something more.

Inaya
(坐在凳子上,交叉双臂)

不管有没有起草委员会,你们两个都应该记住什么最重要。友谊、创造力,还有……嗯,也许还有更多。

Cassian
(raises an eyebrow)

Inaya, don't start. This is just a project. But speaking of friendship, we could use your help with some of the fabric choices for the center's interior.

Cassian
(扬起眉毛)

伊娜雅,别开始。这只是一个项目。但说到友谊,我们需要你帮助选择中心内部的一些面料。

Amaris
(glances at Cassian, then at Inaya) [I should say something. Anything.]

Maybe we should take a walk along the pier later tonight. Clear our heads.

Amaris
(瞥了一眼卡西安,然后看向伊娜雅) [我应该说点什么。任何话都可以。]

也许今晚晚些时候我们应该沿着码头散步。清醒一下头脑。

Scene Manager

action=end | reason: Reached the 20-turn dialogue limit.

场景管理器

action=end | reason: 达到 20 轮对话限制。

Contact

If you have any questions, please contact xuzhenhua0326@zju.edu.cn. Our paper is currently under review; the related code, datasets and models will be released later.

If you find the code, datasets and models in this repository useful, please cite:

@misc{xu2026adamarpadaptivemultiagentinteraction,
      title={AdaMARP: An Adaptive Multi-Agent Interaction Framework for General Immersive Role-Playing},
      author={Zhenhua Xu and Dongsheng Chen and Shuo Wang and Jian Li and Chengjie Wang and Meng Han and Yabiao Wang},
      year={2026},
      eprint={2601.11007},
      archivePrefix={arXiv},
      primaryClass={cs.AI},
      url={https://arxiv.org/abs/2601.11007},
}