Apply to my task
arXiv:2603.03790 ★ 85 Mar 4, 2026

Structure of Thought: a map of the text as an intermediate step before answering

Key result

An LLM reads a contract or an article like a news ticker — left to right, no map. It doesn't hold the chain “A affects B, B affects C” in its head; it assembles it on the fly. So on hard questions it answers from general knowledge about “texts like this” — not from the text itself. Structure of Thought lets you get an answer that's actually tied to the specific content, not to what the model saw in training. The trick: one prompt, two steps: “name the nodes and links” → “answer from the map”. The map becomes an anchor — the model can't invent a link it didn't just extract itself.

01

TL;DR

Structure of Thought (SoT) is a prompting technique that makes the model first build a map of the text (nodes + links) and only then answer the question. Not “think step by step” like Chain-of-Thought, but “extract the structure first, then use it.”

When you ask an LLM to make sense of a long text — a contract, an article, a technical spec — the model reads it like a news ticker: left to right, with no “map.” So on complex questions it mixes up who influences whom, loses chains of dependencies, and confuses causes with effects. Chain-of-Thought adds reasoning, but that reasoning can wander off — the model fills in gaps instead of sticking to the text.

SoT fixes this in one move: before answering, the model explicitly names the key nodes (entities, concepts, components) and links (relationships between them). That pins the reasoning to the text, keeps it from drifting into hallucinations — and only then does the model answer the question, relying on the map.

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

One prompt, two steps:

STEP 1 — Structuring
  Nodes: [list of key entities/concepts from the text]
  Links: [A] → [B]: [link type], [B] → [C]: [link type]...

STEP 2 — Answer
  Using the extracted structure → answer the question

Both steps run in a single prompt; the model does them in order on its own.

03

Example in Action

Task: Ryan is the COO of a startup. He's received an 8-page term sheet from a potential investor. He needs to figure out who controls which decisions, where the founders could lose power, and which triggers protect the investor.

Prompt:

Read the term sheet text below and complete two steps.

Step 1 — Structuring:
Extract the key NODES from the text (parties, rights, mechanisms, triggers)
and the LINKS between them.

Format:
Nodes: [Node 1], [Node 2], [Node 3]...
Links: [Node A] → [Node B]: [link type / condition]

Step 2 — Answer:
Using the extracted structure, answer:
In which situations do the founders lose control over decisions?
List the specific triggers.

Term sheet text:
[paste text]

Result: The model will first show the map: nodes (Founders, Investor, Board of Directors, Veto right, Anti-dilution, Liquidation preference) and the links between them with conditions. Then it answers the question based on that map — not on general knowledge about term sheets. The answer stays tied to this specific text, with exact clauses.

04

Why It Works

The problem: An LLM reads text sequentially and generates the answer right away. With long or complex texts it can't hold the full picture of links in its head — especially when it has to go through several hops (“A affects B, B affects C, therefore...”). It's like trying to describe a subway map without looking at it.

What the model is good at: It extracts structure from text well when explicitly asked to. It reasons well over a ready-made structure. Taken separately, both steps are easy for it.

How SoT uses this: It splits one hard task (“make sense of the text and answer”) into two easy ones (“build a map” → “answer from the map”). The map becomes an intermediate representation — an anchor the reasoning is tied to. It cuts off hallucinations: the model can't write about a link that isn't in the text if it didn't just extract it itself.

Control knobs:

What to change Effect
Node/link format JSON, table, list — whatever format you need
Node granularity Fewer nodes → faster, bigger picture. More → more precise
Link type Only cause-and-effect / only temporal → focus
Drop “using the structure” The model answers from the structure, but without explicitly referencing it
05

Prompt Template

Read the following text and complete two steps.

Step 1 — Extract the structure:
Identify the key NODES (main entities, concepts, components)
and the LINKS (relationships, dependencies, influences) between them.

Nodes: [Node 1], [Node 2], [Node 3]...
Links: [Node A] → [Node B]: [link type], [Node B] → [Node C]: [link type]...

Step 2 — Answer the question:
Using the extracted structure, answer: {question}

Text:
{text}

Placeholders: - {question} — what exactly you need to understand or do with the text - {text} — any long/complex text: a contract, an article, a process description, an interview


🚀 Quick start — paste into the chat:

Here is a Structure of Thought template. Adapt it to my task: [your task].
Ask me questions to fill in the fields.

[paste the template above]

The LLM will ask about the nature of the text and what exactly you need to understand — because that determines which nodes and links are worth extracting (cause-and-effect, process, hierarchical). It will take the pattern from the template and adapt it to your task.

06

Limitations

⚠️ Simple tasks: If the text is short and the question direct, SoT adds extra steps with no payoff. It shines where the structure is genuinely complex.

⚠️ Subjective judgments: If the question is “how persuasive is the writing,” a node/link structure barely helps. The method is strong for structural and logical tasks, not aesthetic ones.

⚠️ Weak models: Small local models may extract structure poorly — and then the map and the answer will be equally wrong. It works well on GPT-4o, Claude and Gemini.

⚠️ No explicit prompt in the paper: The exact SoT system prompt is in Appendix C, which isn't publicly available. The template above is built from the description of the mechanics in the text and reproduces the essence of the method.

07

How They Tested It

A team from Duke University took three model families (Qwen2.5-7B, GPT-4o, Llama 3.1-8B) and ran three prompting strategies — direct answer, Chain-of-Thought and SoT — across eight text-processing tasks. The tasks covered all the essentials: multi-hop questions, summarization, working with multiple sources. The result was surprisingly consistent: SoT won almost everywhere, and CoT didn't. The contrast was sharpest on 2WikiMultiHopQA and MuSiQue, where you have to make several reasoning hops through the text: CoT sometimes even hurt results compared with a direct answer, while SoT delivered +10% or more. That's the key insight: CoT adds reasoning steps, but they can drift away from the text — SoT anchors the reasoning to the structure of the text itself, and that's a fundamental difference.

The researchers also built the T2S-Bench benchmark — 1,800 examples from real research papers across six disciplines, with 32 structure types. 45 models took the test: average accuracy on multi-hop tasks was 52.1%, and the best model on end-to-end structure extraction hit 58.1%. That means even top models are bad at structuring text — which explains why an explicit structuring prompt helps so much.

08

Original Prompt from the Paper

The exact SoT prompt is in Appendix C of the paper, which isn't included in the public version of the preprint. The authors describe the format as an instruction to extract key nodes and links before generating the final answer. The closest reconstruction from the description:

Given the following text, first extract the key nodes 
(main entities, concepts, or components) and links 
(relationships, dependencies, or interactions) 
to build a text structure:

Nodes: [Node 1], [Node 2], [Node 3]...
Links: [Node A] → [Node B]: [relationship type], 
       [Node B] → [Node C]: [relationship type]...

Then, using this extracted structure, answer the question: 
{question}

Text: {text}

Context: The researchers used this format as a universal prompt for all eight tasks without modification — universality was the whole point.

09

Adaptations and Extrapolations

💡 Adaptation: analyzing email threads or feedback

SoT works well not only on documents but also on complex communication — say, a long email thread or customer reviews.

Read the email thread below and complete two steps.

Step 1 — Extract the structure:
Nodes: [parties, key demands, pain points, agreements]
Links: [who wants what from whom, what's blocking, what's already agreed]

Step 2 — Answer:
Using the structure: what is the main conflict, and what needs to happen
to move the negotiation forward?

Thread:
{thread text}

🔧 Technique: typed nodes → a sharper map

Add explicit types to the nodes and the model will draw cleaner distinctions:

Step 1 — Extract the structure:
Nodes:
- [Actors]: who is involved
- [Resources]: what is transferred / used
- [Conditions]: under what circumstances
- [Outcomes]: what happens in the end

Links: [Node A] → [Node B]: [link type]

Explicit categories reduce the risk of the model lumping “the company” and “a contract condition” into one pile.


🔧 Technique: SoT + a critical question

Once the map is built, ask a provocative question about the structure:

Step 2 — Answer two questions:
1. What in this structure looks illogical or contradictory?
2. Which node is the single point of failure for the whole system?

Useful for process audits, risk analysis, and picking apart other people's business models.

10

Resources

Paper: T2S-Bench & Structure-of-Thought: Benchmarking and Prompting Comprehensive Text-to-Structure Reasoning

Project site: https://t2s-bench.github.io/T2S-Bench-Page/

Authors: Qinsi Wang, Hancheng Ye, Jinhee Kim, Jinghan Ke, Yifei Wang, Martin Kuo, Zishan Shao, Dongting Li, Yueqian Lin, Ting Jiang, Chiyue Wei, Qi Qian, Wei Wen, Helen Li, Yiran Chen

Institutions: Duke University, UT Austin, Meta

Research digest

Key result

An LLM reads a contract or an article like a news ticker — left to right, no map. It doesn't hold the chain “A affects B, B affects C” in its head; it assembles it on the fly. So on hard questions it answers from general knowledge about “texts like this” — not from the text itself. Structure of Thought lets you get an answer that's actually tied to the specific content, not to what the model saw in training. The trick: one prompt, two steps: “name the nodes and links” → “answer from the map”. The map becomes an anchor — the model can't invent a link it didn't just extract itself.

Principle

Not “think step by step” as in a chain of thought (Chain-of-Thought), but “extract the structure first, then reason over it.” We split one hard task into two easy ones: “build the map” → “answer from the map”. Each step on its own is easy for an LLM — it's good at both pulling structure out of text and reasoning over a ready-made structure. Doing both at once, head-on, it drifts. It's like asking someone to find their way without a map vs. with one: the skill was there, the tool wasn't.

Why it works

The model generates text sequentially. When you ask it to “figure it out and answer,” it does both steps in one blur, on the fly. With long or tangled texts, that's like describing a subway map from memory: you're lost by the third transfer. A map of nodes and links moves the reasoning out of the “model's head” and into the text — visible, fixed, tied to the source. Hallucinations get cut: if a link wasn't extracted in step 1, where would it come from in step 2? Caveat: the method's exact system prompt is in an appendix to the paper that isn't publicly available — the template below reproduces the mechanics but may differ from the original.

When to apply

Long, structurally complex texts → reviewing contracts, technical specs, articles with many entities, process diagrams — especially when you need to trace chains of dependencies (“who affects whom,” “which trigger sets off what”). Not a fit: short texts with direct questions (extra steps, no payoff), subjective judgments like “how persuasive is the writing,” and small local models — they may already stumble on step 1.

Mini recipe

1. Split the prompt into two steps: “Step 1 — extract the structure” and “Step 2 — answer the question.” One prompt, not two requests in a row. 2. Set the map format in step 1: Nodes: [Node 1], [Node 2]... Links: [Node A] → [Node B]: [link type]. 3. Ask a specific question in step 2: “Using the extracted structure, answer: [your question]” — the phrase “using the structure” matters, it pins down where the answer comes from. 4. Put the text at the end of the prompt — after both steps, not at the start.

Examples

[BAD]: `Read this contract and tell me where my position is weak` [GOOD]: `Read the contract text below and complete two steps. Step 1 — Extract the structure: Nodes: [parties, rights, obligations, penalty clauses, triggers] Links: [Node A] → [Node B]: [link type / condition] Step 2 — Answer the question: Using the extracted structure, identify which clauses leave my position weaker — and what that concretely means in practice. Contract text: [paste text]`

In plain words

Language models choke on complex texts not because they're dumb, but because they try to spit out an answer right away while skimming the document. When you ask an AI to analyze a tangled contract or a technical diagram, it behaves like someone trying to describe a subway map without ever glancing at it. It latches onto familiar words but completely loses the logical chains where event A, three steps removed, affects outcome C. What you get is a confident but totally useless summary of the surface.

It's like bringing a stack of documents to a lawyer who starts giving advice before finishing the read. The words sound smart, but they're worthless, because he never built the hierarchy in his head: who reports to whom and which conditions block the deal. The Structure-of-Thought (SoT) method fixes this by force. Instead of firing off an answer immediately, the model must first sketch the “skeleton” of the data — pull out all the key nodes and the links between them — and only then open its mouth.

The core of SoT is simple: we forbid the model from guessing and make it build a structural map first. This isn't the step-by-step thinking everyone's used to, the “do this first, then that” kind. It's a full-on knowledge-graph extraction that spells out: the investor controls the board of directors, and the board of directors can fire the founder. With a rigid schema like that in front of it, the model stops making things up and starts relying on facts. Accuracy on complex logic and extraction tasks jumps dramatically, because now the AI has a “cheat sheet” it wrote itself.

The thing was tested on the T2S-Bench benchmark, where text has to be turned into structures, but the principle applies to any complex bureaucracy. Whether it's dissecting an 8-page startup term sheet, analyzing medical protocols or digging through legacy code — anywhere mistakes are costly and connections aren't obvious. SoT turns the model from a chatty liberal-arts major into a systems analyst who draws the diagram first and draws conclusions second. It's a universal pattern for any “heavy” content where structure matters, not just the general gist.

Bottom line: forget plain prompts if the task is harder than writing an Instagram post. If you want AI to stop hallucinating on mission-critical data, make it extract the structure first. It's the only way to make the model “see” the context as a whole rather than in fragments. Either you adopt Structure-of-Thought, or you keep playing roulette, hoping the model doesn't miss the fine print that ends up wiping out your whole project.

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 Structure of Thought: a map of the text as an intermediate step before answering arXiv:2603.03790

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