Apply to my task
arXiv:2601.01037 ★ 73 Jan 3, 2026

Three-Dimensional Prompt Chaining: Coherence → Engagement → Naturalness

Key result

Ask a model to hold a lively, on-point dialogue and you get either coherent-but-bland or interesting-but-off-topic. Three-dimensional prompt chaining lets you get dialogue that's coherent, engaging and natural all at once. The trick: don't optimize everything in one prompt — split it into three sequential steps. First check coherence with the context (and regenerate if it's off). Then make it interesting with 'boring → lively' examples. Finally strip out the corporate-speak with 'formal → human' examples. Each prompt sharpens one dimension without breaking the previous ones.

01

TL;DR

Three-dimensional prompt chaining is a technique for improving dialogue step by step across three stages. First, the model checks the coherence of its reply with the context (and regenerates it if it's off). Then it boosts engagement — making the reply more interesting and inviting the other person to keep talking. Finally it polishes naturalness — turning it into lively human speech. Each stage uses few-shot prompts with positive and negative examples.

Models generate text well, but in dialogue they often give replies that are coherent but boring. Or interesting but unnatural ("Your inquiry is most intriguing!"). Or lively but off-topic. When you push one parameter in a single "brute-force" prompt, the others suffer. In small models, naturalness and engagement even conflict: safe grammar versus vivid expression.

The method splits the improvement into three independent steps in separate prompts. First we weed out incoherent replies (up to 5 attempts). Then we take the coherent reply and make it engaging — showing examples of "boring → interesting." Then we polish naturalness — "formal → human." Each step focuses on one dimension without breaking the previous ones.

Want this for your own case? Apply this study to your task: AI adapts its method to what you are working on and writes the prompt.

02

Method Blueprint

Three sequential prompts (separate requests):

STEP 1: Coherence check (up to 5 iterations) → Few-shot prompt: 3 examples (context + coherent reply + incoherent reply) → Question to the model: "Is your reply coherent with the context? Yes/No" → If "No" — generate a new reply and repeat

STEP 2: Boosting engagement → Few-shot prompt: 3 examples (context + boring reply → interesting reply) → Task: "Rework the reply — make it more interesting and inviting the other person to keep the conversation going"

STEP 3: Boosting naturalness → Few-shot prompt: 3 examples (context + formal reply → lively reply) → Task: "Polish the naturalness — the way a real person talks"

03

Example

⚠️ Method limitations taken into account: We don't use it for simple short lines (overkill). We take an open dialogue of medium complexity — negotiation practice.

Task: You're preparing a pitch for an investor. You want to rehearse a dialogue where the investor asks tough questions about your EdTech platform for corporate training. You need a conversation partner who keeps the dialogue lively, on point and natural.

Prompt (Stage 1 — coherence check):

You are an investor listening to a pitch for an EdTech platform for corporate training. 

Here are examples of COHERENT and INCOHERENT replies:

EXAMPLE 1:
Context: "We help HR train employees through micro-courses right inside Slack."
Coherent reply: "Interesting. What are your unit economics? How much does it cost to acquire one corporate client?"
Incoherent reply: "Slack is a popular platform. Lots of people use bots."

EXAMPLE 2:
Context: "Our average contract is $2,000 a year per company. We already have 12 clients."
Coherent reply: "12 clients is $24,000 in annual revenue. How do you plan to scale?"
Incoherent reply: "Education is an important topic for business."

EXAMPLE 3:
Context: "We plan to hire two salespeople and double our client base in a quarter."
Coherent reply: "Doubling in a quarter is ambitious. What's the forecast based on?"
Incoherent reply: "Sales take experience and a systematic approach."

Now HOLD A DIALOGUE with me. I'm the founder of the platform.

Me: "Our platform solves the problem of low engagement in corporate training. Employees don't finish long courses."

You: [your reply]

Is your reply COHERENT with my line? Answer: Yes or No.

Prompt (Stage 2 — engagement):

Here are examples of how to make a reply ENGAGING:

EXAMPLE 1:
Context: "We make short videos for training."
Boring: "Okay. Tell me more."
Interesting: "Short videos are a trend. But there's one TikTok and hundreds of learning platforms. What do you have that would make HR pick you?"

EXAMPLE 2:
Context: "Our retention is 80% — employees finish the course."
Boring: "That's a good number."
Interesting: "80% retention is impressive. But I'm curious — is that across all companies or just the success stories?"

EXAMPLE 3:
Context: "We integrate with HR systems like Workday."
Boring: "Got it."
Interesting: "Workday is a crowded market. That means tough competition. How are you going to land integration partners?"

Now IMPROVE your previous reply — make it more interesting, sharper, pushing me to think and respond.

Original reply: [reply from Stage 1]

Improved reply:

Prompt (Stage 3 — naturalness):

Here are examples of how to make a reply NATURAL:

EXAMPLE 1:
Formal: "Your proposal is of interest. However, additional information is required."
Natural: "Sounds decent. But let's dig deeper — tell me about the economics."

EXAMPLE 2:
Formal: "The stated retention metric is significant. The calculation methodology requires clarification."
Natural: "80% is a serious number. How'd you measure it? Across all clients or a sample?"

EXAMPLE 3:
Formal: "Integration with popular systems is a strategically sound decision."
Natural: "Workday's the right call. But there's already a ton of plugins there. How will you break through?"

Now POLISH THE NATURALNESS — the way a real investor talks, no corporate-speak.

Original reply: [reply from Stage 2]

Final reply:

Result:

The model will go through three improvement stages. First it checks the coherence of its reply (and regenerates if it went off track). Then it sharpens the reply — adding a specific question or doubt that makes you think. Finally it strips out formalities — you get a line that sounds like a real investor. In the end you have a lively dialogue to rehearse your pitch, where every line is on point, interesting and natural.

04

Why It Works

An LLM generates text probabilistically — picking the next word based on patterns from training. When the prompt says "hold the dialogue naturally and interestingly," the model tries to optimize everything at once — and often averages it out. You get a reply that's coherent but bland. Or lively but off-topic.

The model works well with specific instructions and examples. Few-shot learning shows it a pattern: "here's a bad reply → here's a good one." The model sees the difference and reproduces it in a new context. But show it three patterns at once (coherence + engagement + naturalness) and it gets confused about priorities.

The method splits optimization into independent steps. First we filter out incoherent replies — iteratively, until we get one that fits the context. That's the baseline quality level. Then we take the coherent reply and improve one dimension — engagement. The model focuses on one task and sees clear "boring → interesting" examples. Finally we polish naturalness — also in isolation, without breaking the previous layers.

Control knobs:

  • Number of iterations in Stage 1 (5 by default) — lower it to 2-3 for simple dialogues to save tokens. Raise it to 7-10 for complex cases where coherence is critical.

  • Few-shot examples — tailor them to your domain. For tech support — examples about the product. For a therapist — about emotions. The model copies the style from the examples.

  • Order of stages — you can change it. If naturalness matters more than engagement (say, for an empathetic dialogue), swap Stages 2 and 3.

  • Exit condition for Stage 1 — instead of "Yes/No" you can ask for a 1-5 score and accept replies scoring 4+. More flexible, but costlier in tokens.

05

Prompt Template

Stage 1: Coherence check (separate request)

You are {partner_role}.

Here are examples of COHERENT and INCOHERENT replies:

EXAMPLE 1:
Context: {dialogue_context_1}
Coherent reply: {coherent_reply_1}
Incoherent reply: {incoherent_reply_1}

EXAMPLE 2:
Context: {dialogue_context_2}
Coherent reply: {coherent_reply_2}
Incoherent reply: {incoherent_reply_2}

EXAMPLE 3:
Context: {dialogue_context_3}
Coherent reply: {coherent_reply_3}
Incoherent reply: {incoherent_reply_3}

Now HOLD A DIALOGUE.

{dialogue_history}

Me: {user_last_line}

You: [your reply]

Is your reply COHERENT with my line? Answer: Yes or No.

If the model answered "No" — repeat this prompt up to 5 times until you get "Yes."


Stage 2: Boosting engagement (separate request)

Here are examples of how to make a reply ENGAGING:

EXAMPLE 1:
Context: {context_1}
Boring: {boring_reply_1}
Interesting: {interesting_reply_1}

EXAMPLE 2:
Context: {context_2}
Boring: {boring_reply_2}
Interesting: {interesting_reply_2}

EXAMPLE 3:
Context: {context_3}
Boring: {boring_reply_3}
Interesting: {interesting_reply_3}

Now IMPROVE your previous reply — make it more interesting, sharper, inviting the other person to keep the conversation going.

Original reply: {stage_1_reply}

Improved reply:

Stage 3: Boosting naturalness (separate request)

Here are examples of how to make a reply NATURAL:

EXAMPLE 1:
Formal: {formal_reply_1}
Natural: {natural_reply_1}

EXAMPLE 2:
Formal: {formal_reply_2}
Natural: {natural_reply_2}

EXAMPLE 3:
Formal: {formal_reply_3}
Natural: {natural_reply_3}

Now POLISH THE NATURALNESS — the way a real person talks, no corporate-speak or stiff formalities.

Original reply: {stage_2_reply}

Final reply:

What to fill into the placeholders:

  • {partner_role} — who the model plays (investor, client, therapist)
  • {dialogue_context_X} — a short line from a sample dialogue
  • {coherent/incoherent_reply_X} — examples that demonstrate the pattern
  • {dialogue_history} — previous lines (if any)
  • {user_last_line} — what the model is responding to
  • {boring/interesting_reply_X} — transformation examples for engagement
  • {formal/natural_reply_X} — transformation examples for naturalness
  • {stage_X_reply} — the result of the previous step

🚀 Quick start — paste into the chat:

Here's a three-dimensional prompt chaining template for dialogues. Adapt it to my task: I want to practice {your task — e.g., "negotiating with a client," "a tough conversation with my boss," "a coaching session"}. 

Ask me questions: what role the conversation partner plays, what dialogue style I need, and whether I have examples of "good" and "bad" lines for the few-shot examples.

[paste the three templates above]

The LLM will ask about the partner's role, the topic and the style — because the few-shot examples need to match the context. It will take the structure from the template (three stages + coherence check + per-dimension improvement) and fill it in for your task. If you don't have your own examples, ask the model to generate them.

06

Limitations

⚠️ A multi-step process: It requires at least three separate requests to the model (and with Stage 1 iterations, it can be up to 7-10 requests). Expensive in tokens and slow. Overkill for simple short lines — use it only for dialogues where quality is critical.

⚠️ Dimension conflict in small models: In TinyLlama and similar models, naturalness and engagement can conflict. Safe grammar (naturalness) versus vivid expression (engagement). In Llama-2-7B and up, the problem almost disappears. If you see a conflict, drop one of the stages.

⚠️ You need good few-shot examples: The model copies the style from the examples. Weak examples, weak result. Either pick good examples yourself or ask a big model (GPT-4, Claude) to generate them for you.

⚠️ Not for narrowly specialized dialogues: The method performs best in open-domain dialogues — where there's no rigid structure and no answers known in advance. For FAQ bots or strictly scripted flows it's overkill.

07

How They Tested It

The researchers took two small models — TinyLlama (truly tiny) and Llama-2-7B (mid-sized) — and checked whether three-dimensional prompt chaining could help them catch up to the quality of giants like Llama-2-70B (10 times bigger) and GPT-3.5 Turbo. They tested on DailyDialog — a dataset of natural multi-turn conversations about everyday life, with no special roles or knowledge.

For each stage they generated few-shot examples. They took dialogues from the dataset, asked a big model to create "bad" variants (incoherent, boring, unnatural), and scored everything with UniEval — an LLM-as-a-judge system that rates coherence, engagement and naturalness. They picked the examples with the largest gap between good and bad (so the pattern would be clear).

They ran an ablation study — switching off one stage at a time and watching what broke. It turned out that all three dimensions matter, but they interact differently depending on model size. In TinyLlama, naturalness and engagement compete — one improves at the expense of the other. In Llama-2-7B they complement each other — the full framework gives the best result on every metric.

They measured Distinct-N (n-gram diversity — fewer repeats), UE score (contextual coherence via Natural Language Inference) and UniEval across the three dimensions. The full framework improved diversity by 29%, coherence by 28%, and engagement and naturalness by 29%. Llama-2-7B with the framework matched Llama-2-70B and GPT-3.5 in human evaluation — 34% wins, 42% ties, 24% losses against the 70B version.

A surprising finding: When the naturalness stage was removed from TinyLlama, engagement went up. It seems the "speak naturally" requirement makes a small model choose safe phrasing, suppressing creativity. Bigger models don't have this issue — there, naturalness and engagement work together without getting in each other's way. This shows that prompt architecture should account for model size — there are no universal recipes.

08

Adaptations and Extrapolations

🔧 Technique: A single-stage version to save tokens

If you need a fast result without three requests, combine all dimensions into one prompt:

You are {partner_role}.

Your reply must be:
1. COHERENT with the dialogue context
2. ENGAGING — interesting, inviting the other person to keep talking
3. NATURAL — the way a real person talks, no corporate-speak

Examples of good replies:
[3-5 dialogue examples with high-quality lines]

{dialogue_history}

Me: {last_line}

You:

Effect: Faster and cheaper, but lower quality — the model will average out the priorities. Fine for simple dialogues or drafts.


🔧 Technique: Replace few-shot with evaluation criteria

If you don't have time to pick examples, give the model explicit criteria instead of few-shot:

STAGE 2: Boosting engagement

Make your reply ENGAGING. Check:
✓ Is there a specific question that will make the other person think?
✓ Is there an element of surprise, doubt or challenge?
✓ Do you avoid generic phrases like "Okay," "Interesting," "Tell me more"?

Original reply: {stage_1_reply}

Improved reply:

Effect: It works, but worse than few-shot. The model understands the criteria but doesn't see the transformation pattern. Use it when you have no examples for your domain.


🔧 Technique: Auto-generating few-shot examples

Ask a big model to create the examples BEFORE the main work:

I'm preparing few-shot examples for a dialogue with {partner_role} on the topic {topic}.

Create 3 examples for the ENGAGEMENT STAGE:

For each example:
- Context: the user's line
- Boring reply: formal, faceless, not inviting the conversation to continue
- Interesting reply: a sharp question or line that makes you think

The examples should reflect real-world business situations, with specifics (dollar amounts, names of tools, recognizable situations).

Effect: Saves time. Generate the examples once, then reuse them many times. Quality depends on the model (GPT-4/Claude do better than free ones).


🔧 Technique: Inversion for a quality check

Once you have the final reply, check it with a reverse prompt:

Rate this reply on three criteria (1-5 scale):

1. COHERENCE: how logically does the reply continue the dialogue?
2. ENGAGEMENT: how much does it make you want to keep talking?
3. NATURALNESS: how natural does it sound, like a real person?

Dialogue:
{context}

Reply:
{final_stage_3_reply}

Scores:

Effect: If any criterion scores below 4, redo the problem stage. It adds one more request but makes quality more consistent.

09

Resources

Multi-Dimensional Prompt Chaining to Improve Open-Domain Dialogue Generation — Livia Leong Hui Teng, Nanyang Technological University

Key references from the study: - UniEval (Zhong et al., 2022) — an LLM-as-a-judge framework for evaluating dialogue quality - DailyDialog (Li et al., 2017) — a dataset of natural multi-turn conversations - Few-Shot Learning (Brown et al., 2020) — in-context learning without updating model parameters - Chain-of-Thought (Wei et al., 2023) — a technique for step-by-step reasoning in prompts

Research digest

Key result

Ask a model to hold a lively, on-point dialogue and you get either coherent-but-bland or interesting-but-off-topic. Three-dimensional prompt chaining lets you get dialogue that's coherent, engaging and natural all at once. The trick: don't optimize everything in one prompt — split it into three sequential steps. First check coherence with the context (and regenerate if it's off). Then make it interesting with 'boring → lively' examples. Finally strip out the corporate-speak with 'formal → human' examples. Each prompt sharpens one dimension without breaking the previous ones.

Principle

Three separate requests to the model. Step 1: Coherence check — a prompt with examples of coherent/incoherent replies; the model answers and rates itself 'is the reply coherent? yes/no'; if not, it regenerates (up to 5 iterations). Step 2: Take the coherent reply and boost engagement — show 3 examples of the 'boring → sharp' transformation, and the model rewrites. Step 3: Polish naturalness — 'formal → like a real person' examples, and the model refines. Each step focuses on one parameter — it doesn't try to please everyone at once.

Why it works

An LLM picks the next word based on patterns. When the prompt says 'hold the dialogue naturally and interestingly,' the model tries to optimize everything at once and averages it out. You get something that's neither here nor there. The model works well with specific instructions — show it 'here's a bad reply → here's a good one' and it will reproduce the pattern. But show it three patterns at once (coherence + engagement + naturalness) and it gets confused about priorities. The method splits optimization into independent layers. First the baseline — coherence. Then one focus — interest. Then another — liveliness. Each step is isolated and doesn't conflict with the previous ones.

When to apply

Open-domain dialogues → negotiation practice, consultations, role-play, especially when you need a lively, natural conversation partner (not an FAQ robot). NOT a fit for simple short lines (token overkill) or strictly scripted flows.

Mini recipe

1. Stage 1 — coherence filter: Create a prompt with 3 examples (context + coherent reply + incoherent reply). The model answers and rates itself: 'is my reply coherent? yes/no'. If 'no' — repeat the prompt up to 5 times. 2. Stage 2 — engagement: Take the coherent reply from Stage 1. A new prompt with 3 'boring → interesting' transformation examples. Task: 'rework the reply — make it sharper, inviting the conversation to continue'. 3. Stage 3 — naturalness: Take the reply from Stage 2. A prompt with 'formal → lively' examples. Task: 'strip the corporate-speak — talk like a real person'. 4. Tailor the few-shot examples to your domain: For tech support — examples about the product. For a coach — about emotions. The model copies the style from the examples.

Examples

[BAD]: `Hold the dialogue like an experienced investor — natural, interesting and on point` [GOOD]: Three separate prompts. The first (coherence check): `You are an investor. Here are examples of coherent/incoherent replies: [3 examples]. Hold the dialogue. Me: 'Our platform solves the problem of low engagement in corporate training.' You: [reply]. Is your reply coherent? Yes/No`. If 'No' — repeat. The second (engagement): `Here are 'boring → interesting' examples: [3 examples]. Improve your reply — make it sharper`. The third (naturalness): `Here are 'formal → lively' examples: [3 examples]. Strip the corporate-speak`.

In plain words

AI models flub conversations because they try to sit on three chairs at once. When you ask a model to be smart, interesting and lively all at the same time, it hands you some averaged-out substitute. You end up with either a dry fact sheet or gushing nonsense that has nothing to do with the topic. The problem is that an LLM is a statistical machine, and trying to optimize every parameter at once makes it pick the safest, dullest path.

It's like trying to grill a steak, learn Spanish and do squats all at once. You'll either burn the meat, pull your back, or not learn a single word. The three-dimensional prompt chaining method says: stop torturing the model's brain and do things one at a time. First we just check that it isn't talking nonsense, then we add some spice, and only at the end do we polish the style.

It works through three strict filters. The first is coherence: the model looks at its reply and redoes it if it missed the context. The second is engagement: here few-shot prompts come into play, making the AI not just answer but keep throwing logs on the fire so the conversation doesn't die out. The third stage is naturalness: the final polish that scrubs the "robotic" feel out of the text and turns it into normal human speech.

The method was tested on open-domain dialogues, but the principle is universal for any complex generation. If you need to write a killer post, a script or an email, don't ask for everything at once. Break the task into stages: logic, value, style. Prompt chaining turns random generation into a controlled assembly line where defects get cut at every stage. It turns an ordinary chatbot into a tool for negotiation practice or training.

Bottom line: stop hoping for one "golden prompt" that will solve every problem. If you want god-tier results from AI, make it go through three stages of filtering. Yes, it's slower and costs more tokens, but you get a living conversation partner instead of a cardboard cutout. Divide the tasks, conquer the context — otherwise you'll keep getting bland junk.

AI lab assistant

Apply this study to your task

Describe what you're working on. AI takes the method and the measured results from this paper and adapts them to your case, or writes a ready prompt built on them.

Based on Three-Dimensional Prompt Chaining: Coherence → Engagement → Naturalness arXiv:2601.01037

Sign in to apply this study New accounts get 50 free credits.