wikillm

Paper · 2024-07-21 · cs.AI, cs.CL

Multi-Agent Causal Discovery Using Large Language Models

MAC runs causal discovery as two LLM debate stages. A debate picks a statistical algorithm (PC, FCI, GES and others) that runs on the data to give a first graph. Meta Fusion turns that graph into text, and an Affirmative-Negative-Judge debate refines it with metadata. Author-reported: best mean rank over five benchmarks; first on 10 of 15 points with Gemini-2.0-Flash.

Causal discoveryCausal inferenceMulti-agent systemsLLM-as-a-judgecausal-discoverymulti-agentdebatellm-agentsmetadata

arXivPDFMarkdown19 min read

AI-compiled by claude-haiku-5-5 on 2026-10-19, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.

In plain words

Working out which variables cause which is hard. Statistical methods look only at the numbers, so they can miss the right answer when their assumptions fail. A single language model can read the variable names and descriptions, but it may simply repeat what it memorised, and nothing checks it.

MAC uses several language-model agents that argue instead of one agent that answers. The first stage has agents choose a standard causal-discovery algorithm that suits the data, then runs that algorithm to get a first graph. The second stage turns the graph into plain sentences and adds them to the background notes about the variables. A debate follows: one agent proposes a graph, a second proposes a plausible alternative, and a judge picks the better one. The authors test it on five benchmark datasets and report that it does best on average. These are the authors' own results.

TL;DR

MAC is a two-stage, multi-agent LLM framework for causal discovery, evaluated on five benchmark datasets §4.1. Stage 1 (DCM) debates which statistical algorithm to run on the data and executes it §3.4 alg. 2. Stage 2 (MDM) refines the resulting graph using metadata in an Affirmative–Negative–Judge debate, and Meta Fusion passes the data graph between them as text §3.3 §3.5 alg. 3. The authors report the best aggregate performance; with Gemini-2.0-Flash it comes first on 10 of 15 evaluation points §4.2. No official code was found, so the prompts (only in figures) must be written from the text.

Problem

Causal discovery asks which variables have a direct causal effect on which others, given observational data and optionally metadata §3.1. Statistical causal discovery (SCD) methods use only the data. Their validity depends on assumptions such as linearity, Gaussianity, hidden confounders and sample size, which differ between problems, and no single SCD algorithm is best across datasets §3.4 §1.

LLM-based methods use metadata but usually treat the model as one agent. Such a model can repeat memorised or biased associations, which the paper calls "causal parrots", and a single pass gives no way to challenge a wrong but confident answer §3.2 §3.3. Combining the two is not direct, because the data-derived graph is a numeric adjacency matrix while metadata and agents work in natural language §3.5.

Method

Inputs and outputs. The data is an observation matrix O with rows as observations and columns as variables. The variables are V, the metadata is an optional text I, and a small subset S of rows is used only for cheap reasoning. The final graph is always estimated on the full O §3.1.

  1. Meta-Debate Module (MDM) alg. 1 §3.3. One operator with three agents. The Affirmative agent proposes a candidate output. The Negative agent proposes a plausible alternative under the same evidence, aiming at disputed decisions. The Judge scores the disagreements against evidence-derived criteria and returns the winner app. A.1. The operator runs in two modes. In graph mode the context is (V, I) and the output is a DAG over V. In algorithm mode the context is (V, I, S) and the output is one algorithm from a pool 𝒜 §3.3 alg. 1.
  2. Causal principles given to the agents app. A.1. Under causal sufficiency and no cycles, two nodes are directly connected if and only if no set of other nodes makes them conditionally independent. A node B is a collider in A → B ← C if A and C are marginally independent but become dependent when B is conditioned on. Other edge directions are set by acyclicity and by a causal order taken from the metadata.
  3. Debate-Coding Module (DCM) alg. 2 §3.4. Step (i): MDM runs in algorithm mode, with S, to choose an SCD algorithm A from 𝒜. Step (ii): a Causal Coding Executor writes, runs and debugs code that applies A to the full O with an existing causal-discovery library (causal-learn is named), and returns the data graph G_C §3.4.
  4. Meta Fusion §3.5. Converts the adjacency matrix of G_C into human-readable directed edges and implied orderings. These become causal metadata I_c, appended to I. The example is a 4-variable binary matrix over Hot, Sales, Swim and Attack, which becomes Hot→Sales, Hot→Swim and Swim→Attack §3.5.
  5. Refinement alg. 3 §3.5. MDM runs in graph mode on (V, I ∪ I_c) with S empty, and returns the final graph G_D.
  6. Rounds §4.3. The number of Affirmative–Negative exchanges in MDM is varied from one to five in the experiments. A single round still runs the full Affirmative–Negative–Judge exchange §4.3.

The overall procedure is in pseudocode below. Its three functions follow the paper's algorithms 1 to 3.

Pseudocode
# MAC, end to end  [alg. 3] [§3.5]
# Input:  variables; data (N, d); metadata text; subset; algorithm pool
# Output: final directed graph (n, n) over the variables

def mac(variables, data, metadata, subset, algorithm_pool):
    # Stage 1: data-grounded initial graph  [alg. 2] [§3.4]
    initial_graph = debate_coding_module(
        variables, data, metadata, subset, algorithm_pool)
    # Turn the data graph into text constraints  [§3.5]
    causal_constraints = meta_fusion(initial_graph)
    # Stage 2: refine with metadata plus constraints  [alg. 3] [§3.5]
    final_graph = meta_debate_module(
        variables,
        metadata + causal_constraints,
        subset=None,
        output_type="graph",
    )
    return final_graph
Pseudocode
# Debate-Coding Module  [alg. 2] [§3.4]
# Input:  variables; full data (N, d); metadata; subset; algorithm pool
# Output: initial graph (n, n), built from data only

def debate_coding_module(variables, data, metadata, subset, pool):
    # Choose an SCD algorithm by debate over (V, I, S)  [alg. 2] [§3.4]
    algorithm = meta_debate_module(
        variables, metadata, subset, output_type="alg", pool=pool)
    # Run that algorithm on the full data via a coding agent  [§3.4]
    initial_graph = causal_coding_executor(algorithm, data)
    return initial_graph
Pseudocode
# Meta-Debate Module, one operator for two output types  [alg. 1] [§3.3]
# Input:  variables; metadata; optional subset; output type; pool
# Output: a DAG over the variables, or one algorithm from the pool

def meta_debate_module(variables, metadata, subset, output_type, pool=None):
    # Context: graph mode uses (V, I); algorithm mode adds S  [alg. 1]
    if output_type == "graph":
        context = (variables, metadata)
    else:
        context = (variables, metadata, subset)
    # Affirmative proposes a candidate  [alg. 1] [§3.3]
    affirmative = propose(context, pool)
    # Negative proposes a plausible alternative to the candidate  [alg. 1]
    negative = propose_alternative(context, pool, affirmative)
    # Judge scores the disagreements and returns the winner  [alg. 1]
    return judge(context, pool, affirmative, negative)

Hyperparameters

NameValueWhereNotes
LLM backbonesGemini-2.0-Flash (Gemini API); DeepSeek-R1 (via TogetherAI); GPT-4o-2024-08-06 (OpenAI API)§4.1Main text names all three; DeepSeek-R1 has the stronger F1 on Child, Cancer and Survey §4.2.
Temperature0§4.1The paper says this makes outputs deterministic. Its tables still report std over 10 seeds.
Random seeds10 (mean ± std)§4.1Statistical baselines have std 0.00 in tab. 2.
Agent frameworkAutoGen (linked docs for v0.2)§4.1
Statistical baselinescausal-learn, default settings§4.1
Subset S size"a few sampled rows"; exact size not stated§3.1Appendix text giving five rows is commented out in the source.
Algorithm pool 𝒜PC, FCI and GES are named as examples; full pool not statedapp. A.2
Algorithm chosen per datasetSame for all three LLMs; the names are not stated in the textapp. EDCM rows are identical across backbones.
Debate rounds in MDM1 to 5 tested; default for tables not stated§4.3 fig. 4One round is said to suffice for efficiency.
Debugging attempts in code executor"limited debugging"; count not stated§3.4
Judge scoring metric"a quantifiable metric"; formula not statedapp. A.1
Prompt structureRole, Goal, causal principles, Procedure, Output Formatapp. A.1 app. A.2Full wording appears only in fig. 6 and fig. 7.
Output formatParsed by a format rule; the exact rule is not statedapp. A.1
MetricsF1 on directed edges; SHD; NHDapp. BSee Pitfalls for the counting convention.

Results

Author-reported. Setup: five benchmark datasets, three backbone LLMs, ten seeds, against nine baselines (five statistical, four LLM-based) §4.1 app. D.

DatasetVariablesTrue edgesObservationsType
Auto5not stated392continuous app. D
Child202510,000integer app. D
Cancer5410,000binary app. D
Earthquake5410,000binary app. D
Survey6610,000integer app. D

Headline numbers:

  • Averaged over datasets and backbones, MAC is first on every metric. Its mean rank is 1.4 for F1, 1.6 for NHD and 2.0 for SHD. The next best are LLM-based and statistical baselines fig. 2 §4.2.
  • Across the 15 evaluation points (five datasets × three metrics), MAC with Gemini-2.0-Flash is first on 10 and second on 4. MAC with DeepSeek-R1 is first on 9 and second on 5. MAC with GPT-4o is first on 7 and second on 7 §4.2.
  • Earthquake with Gemini-2.0-Flash: SHD 0, NHD 0, F1 1.00 §4.2 tab. 2. Exact Search has the same values on Earthquake for all three LLMs tab. 2.
  • The paper says GES has the lowest SHD on Auto and Cancer, LiNGAM on Survey, and Exact Search and ReAct tie on NHD for Child §4.2.

Ablations §4.3 tab. 3 tab. 4 tab. 5:

  • MAC beats DCM-only and MDM-only in most cases. On Earthquake, MDM alone is best. MDM alone beats DCM alone in general §4.3.
  • Rounds §4.3 fig. 4: performance is stable after one round for most datasets. On Survey and Auto it falls as rounds increase.

Single-agent variant (one MDM agent, no Negative agent or Judge) §4.4 tab. 6:

  • The single-agent variant is "competitive" on most datasets at about half the cost. Full MAC is much better on harder graphs: Survey with GPT-4o F1 0.36 → 0.79, Auto with Gemini F1 0.06 → 0.61, and Child with DeepSeek-R1 F1 0.49 → 0.65. Earthquake and Cancer are comparable §4.4.

Cost §4.4 fig. 5: the full system uses 16× to 25× more tokens than standard baselines. Coding and debugging account for up to half of that. GPT-4o is the most token-efficient backbone. The dollar figures are in fig. 5 only and are not given in the text.

Overall table tab. 2, mean ± std over 10 seeds. The source's bold (best) and underline (second) marks are omitted; read the ranks from the source table if needed.

DatasetMethodGemini SHDGemini NHDGemini F1DeepSeek SHDDeepSeek NHDDeepSeek F1GPT-4o SHDGPT-4o NHDGPT-4o F1
ChildExact Search25.00 ± 0.000.06 ± 0.000.00 ± 0.0025.00 ± 0.000.06 ± 0.000.00 ± 0.0025.00 ± 0.000.062 ± 0.0000.00 ± 0.00
ChildGES39.33 ± 1.700.15 ± 0.000.20 ± 0.0539.33 ± 1.700.15 ± 0.000.20 ± 0.0539.33 ± 1.700.150 ± 0.0000.20 ± 0.05
ChildPC30.67 ± 2.050.12 ± 0.000.36 ± 0.0330.67 ± 2.050.12 ± 0.000.36 ± 0.0330.67 ± 2.050.120 ± 0.0000.36 ± 0.03
ChildFCI39.67 ± 0.940.17 ± 0.000.33 ± 0.0239.67 ± 0.940.17 ± 0.000.33 ± 0.0239.67 ± 0.940.170 ± 0.0000.33 ± 0.02
ChildLiNGAM64.33 ± 2.620.19 ± 0.010.26 ± 0.0164.33 ± 2.620.19 ± 0.010.26 ± 0.0164.33 ± 2.620.190 ± 0.0100.26 ± 0.01
ChildZero-shot27.00 ± 0.000.08 ± 0.000.33 ± 0.0021.33 ± 1.700.06 ± 0.010.57 ± 0.0628.67 ± 2.360.080 ± 0.0100.35 ± 0.07
ChildReAct27.67 ± 2.360.06 ± 0.010.40 ± 0.0521.67 ± 5.730.06 ± 0.010.55 ± 0.1223.00 ± 2.940.061 ± 0.0100.35 ± 0.08
ChildLLM-SCD25.15 ± 2.500.08 ± 0.010.41 ± 0.0816.82 ± 3.150.06 ± 0.020.61 ± 0.0821.15 ± 1.300.070 ± 0.0200.39 ± 0.03
ChildILS-CSL26.50 ± 3.000.09 ± 0.020.39 ± 0.1017.54 ± 3.500.07 ± 0.030.59 ± 0.1022.40 ± 1.450.080 ± 0.0200.37 ± 0.04
ChildMAC24.33 ± 3.090.07 ± 0.010.44 ± 0.0915.67 ± 3.090.05 ± 0.010.65 ± 0.0720.33 ± 1.250.061 ± 0.0100.41 ± 0.02
AutoExact Search7.00 ± 0.000.44 ± 0.000.15 ± 0.007.00 ± 0.000.44 ± 0.000.15 ± 0.007.00 ± 0.000.44 ± 0.000.15 ± 0.00
AutoGES3.00 ± 0.000.32 ± 0.000.57 ± 0.003.00 ± 0.000.32 ± 0.000.57 ± 0.003.00 ± 0.000.32 ± 0.000.57 ± 0.00
AutoPC8.00 ± 0.000.48 ± 0.000.14 ± 0.008.00 ± 0.000.48 ± 0.000.14 ± 0.008.00 ± 0.000.48 ± 0.000.14 ± 0.00
AutoFCI5.00 ± 0.000.24 ± 0.000.25 ± 0.005.00 ± 0.000.24 ± 0.000.25 ± 0.005.00 ± 0.000.24 ± 0.000.25 ± 0.00
AutoLiNGAM8.00 ± 0.000.48 ± 0.000.14 ± 0.008.00 ± 0.000.48 ± 0.000.14 ± 0.008.00 ± 0.000.48 ± 0.000.14 ± 0.00
AutoZero-shot7.00 ± 0.000.32 ± 0.000.20 ± 0.007.00 ± 0.820.33 ± 0.050.29 ± 0.096.75 ± 1.090.32 ± 0.060.26 ± 0.08
AutoReAct7.67 ± 0.470.35 ± 0.020.32 ± 0.016.67 ± 0.470.32 ± 0.030.33 ± 0.026.33 ± 0.470.28 ± 0.030.37 ± 0.03
AutoLLM-SCD5.10 ± 0.500.22 ± 0.050.58 ± 0.074.95 ± 1.100.23 ± 0.050.53 ± 0.095.55 ± 1.700.25 ± 0.060.41 ± 0.19
AutoILS-CSL5.50 ± 0.600.25 ± 0.060.55 ± 0.095.41 ± 1.250.25 ± 0.060.51 ± 0.115.95 ± 1.850.27 ± 0.070.39 ± 0.21
AutoMAC4.33 ± 0.470.19 ± 0.040.61 ± 0.084.33 ± 0.940.21 ± 0.040.56 ± 0.085.00 ± 1.630.23 ± 0.050.43 ± 0.18
EarthquakeExact Search0.00 ± 0.000.00 ± 0.001.00 ± 0.000.00 ± 0.000.00 ± 0.001.00 ± 0.000.00 ± 0.000.00 ± 0.001.00 ± 0.00
EarthquakeGES4.00 ± 0.000.32 ± 0.000.00 ± 0.004.00 ± 0.000.32 ± 0.000.00 ± 0.004.00 ± 0.000.32 ± 0.000.00 ± 0.00
EarthquakePC4.67 ± 0.000.35 ± 0.000.00 ± 0.004.67 ± 0.000.35 ± 0.000.00 ± 0.004.67 ± 0.000.35 ± 0.000.00 ± 0.00
EarthquakeFCI4.33 ± 0.000.25 ± 0.000.00 ± 0.004.33 ± 0.000.25 ± 0.000.00 ± 0.004.33 ± 0.000.25 ± 0.000.00 ± 0.00
EarthquakeLiNGAM4.00 ± 0.000.28 ± 0.000.22 ± 0.004.00 ± 0.000.28 ± 0.000.22 ± 0.004.00 ± 0.000.28 ± 0.000.22 ± 0.00
EarthquakeZero-shot1.00 ± 0.000.04 ± 0.000.89 ± 0.001.00 ± 0.000.04 ± 0.000.89 ± 0.001.00 ± 0.000.04 ± 0.000.89 ± 0.00
EarthquakeReAct1.00 ± 0.000.04 ± 0.000.89 ± 0.001.00 ± 0.000.04 ± 0.000.89 ± 0.001.00 ± 0.000.04 ± 0.000.89 ± 0.00
EarthquakeLLM-SCD0.50 ± 0.100.01 ± 0.010.95 ± 0.020.45 ± 0.150.01 ± 0.010.96 ± 0.030.40 ± 0.500.02 ± 0.020.94 ± 0.06
EarthquakeILS-CSL0.80 ± 0.200.02 ± 0.010.92 ± 0.030.78 ± 0.250.02 ± 0.010.93 ± 0.040.50 ± 0.600.03 ± 0.030.92 ± 0.07
EarthquakeMAC0.00 ± 0.000.00 ± 0.001.00 ± 0.000.00 ± 0.000.00 ± 0.001.00 ± 0.000.33 ± 0.470.01 ± 0.020.96 ± 0.05
CancerExact Search2.33 ± 0.000.17 ± 0.000.44 ± 0.002.33 ± 0.000.17 ± 0.000.44 ± 0.002.33 ± 0.000.17 ± 0.000.44 ± 0.00
CancerGES1.33 ± 0.000.17 ± 0.000.62 ± 0.001.33 ± 0.000.17 ± 0.000.62 ± 0.001.33 ± 0.000.17 ± 0.000.62 ± 0.00
CancerPC2.00 ± 0.000.16 ± 0.000.50 ± 0.002.00 ± 0.000.16 ± 0.000.50 ± 0.002.00 ± 0.000.16 ± 0.000.50 ± 0.00
CancerFCI4.00 ± 0.000.16 ± 0.000.00 ± 0.004.00 ± 0.000.16 ± 0.000.00 ± 0.004.00 ± 0.000.16 ± 0.000.00 ± 0.00
CancerLiNGAM2.33 ± 0.000.17 ± 0.000.43 ± 0.002.33 ± 0.000.17 ± 0.000.43 ± 0.002.33 ± 0.000.17 ± 0.000.43 ± 0.00
CancerZero-shot3.00 ± 0.000.12 ± 0.000.73 ± 0.001.33 ± 0.470.05 ± 0.020.86 ± 0.042.00 ± 0.000.08 ± 0.000.80 ± 0.00
CancerReAct2.00 ± 0.000.08 ± 0.000.80 ± 0.000.67 ± 0.470.03 ± 0.020.93 ± 0.051.00 ± 0.000.04 ± 0.000.89 ± 0.00
CancerLLM-SCD2.50 ± 0.100.10 ± 0.010.75 ± 0.021.45 ± 0.900.06 ± 0.040.87 ± 0.091.85 ± 1.750.08 ± 0.080.81 ± 0.18
CancerILS-CSL2.80 ± 0.200.12 ± 0.020.72 ± 0.031.83 ± 1.100.07 ± 0.050.84 ± 0.112.10 ± 1.900.09 ± 0.090.79 ± 0.20
CancerMAC2.00 ± 0.000.08 ± 0.000.80 ± 0.001.00 ± 0.820.04 ± 0.030.90 ± 0.081.67 ± 1.700.07 ± 0.070.83 ± 0.17
SurveyExact Search4.33 ± 0.000.21 ± 0.000.28 ± 0.004.33 ± 0.000.21 ± 0.000.28 ± 0.004.33 ± 0.000.21 ± 0.000.28 ± 0.00
SurveyGES3.00 ± 0.000.17 ± 0.000.54 ± 0.003.00 ± 0.000.17 ± 0.000.54 ± 0.003.00 ± 0.000.17 ± 0.000.54 ± 0.00
SurveyPC4.33 ± 0.000.22 ± 0.000.42 ± 0.004.33 ± 0.000.22 ± 0.000.42 ± 0.004.33 ± 0.000.22 ± 0.000.42 ± 0.00
SurveyFCI5.00 ± 0.000.19 ± 0.000.22 ± 0.005.00 ± 0.000.19 ± 0.000.22 ± 0.005.00 ± 0.000.19 ± 0.000.22 ± 0.00
SurveyLiNGAM2.67 ± 0.000.11 ± 0.000.65 ± 0.002.67 ± 0.000.11 ± 0.000.65 ± 0.002.67 ± 0.000.11 ± 0.000.65 ± 0.00
SurveyZero-shot4.00 ± 0.000.11 ± 0.000.67 ± 0.007.00 ± 1.630.19 ± 0.050.55 ± 0.137.00 ± 0.820.19 ± 0.020.58 ± 0.10
SurveyReAct6.00 ± 0.000.17 ± 0.000.60 ± 0.048.00 ± 0.820.22 ± 0.020.45 ± 0.067.33 ± 1.250.20 ± 0.030.45 ± 0.04
SurveyLLM-SCD4.50 ± 0.800.16 ± 0.010.66 ± 0.024.67 ± 1.550.13 ± 0.050.68 ± 0.112.65 ± 0.500.07 ± 0.020.77 ± 0.02
SurveyILS-CSL4.90 ± 0.900.18 ± 0.020.63 ± 0.035.21 ± 1.800.15 ± 0.060.65 ± 0.132.90 ± 0.600.08 ± 0.020.75 ± 0.03
SurveyMAC4.00 ± 0.820.14 ± 0.000.69 ± 0.024.00 ± 1.410.11 ± 0.040.71 ± 0.102.33 ± 0.470.06 ± 0.010.79 ± 0.01

Single-agent ablation tab. 6, mean ± std over 10 seeds:

DatasetMethodGemini SHDGemini NHDGemini F1DeepSeek SHDDeepSeek NHDDeepSeek F1GPT-4o SHDGPT-4o NHDGPT-4o F1
ChildSingle-Agent MAC25.33 ± 0.580.07 ± 0.010.15 ± 0.2619.18 ± 3.980.05 ± 0.010.49 ± 0.2128.67 ± 1.530.09 ± 0.000.34 ± 0.01
ChildMAC24.33 ± 3.090.07 ± 0.010.44 ± 0.0915.67 ± 3.090.05 ± 0.010.65 ± 0.0720.33 ± 1.250.06 ± 0.010.41 ± 0.02
AutoSingle-Agent MAC5.33 ± 0.580.25 ± 0.090.06 ± 0.106.25 ± 1.500.35 ± 0.050.16 ± 0.126.67 ± 1.150.41 ± 0.020.11 ± 0.10
AutoMAC4.33 ± 0.470.19 ± 0.040.61 ± 0.084.33 ± 0.940.21 ± 0.040.56 ± 0.085.00 ± 1.630.23 ± 0.050.43 ± 0.18
EarthquakeSingle-Agent MAC0.00 ± 0.000.00 ± 0.001.00 ± 0.000.25 ± 0.900.02 ± 0.070.95 ± 0.210.00 ± 0.000.00 ± 0.001.00 ± 0.00
EarthquakeMAC0.00 ± 0.000.00 ± 0.001.00 ± 0.000.00 ± 0.000.00 ± 0.001.00 ± 0.000.33 ± 0.470.01 ± 0.020.96 ± 0.05
CancerSingle-Agent MAC1.67 ± 2.080.07 ± 0.080.63 ± 0.550.77 ± 1.510.03 ± 0.060.87 ± 0.300.00 ± 0.000.00 ± 0.001.00 ± 0.00
CancerMAC2.00 ± 0.000.08 ± 0.000.80 ± 0.001.00 ± 0.820.04 ± 0.030.90 ± 0.081.67 ± 1.700.07 ± 0.070.83 ± 0.17
SurveySingle-Agent MAC9.00 ± 1.410.28 ± 0.040.45 ± 0.048.77 ± 1.300.26 ± 0.040.28 ± 0.1211.67 ± 0.580.33 ± 0.000.36 ± 0.04
SurveyMAC4.00 ± 0.820.14 ± 0.000.69 ± 0.024.00 ± 1.410.11 ± 0.040.71 ± 0.102.33 ± 0.470.06 ± 0.010.79 ± 0.01

Paper vs code

No official code.

Searched, in order, with no official repository found:

  1. Links in the paper, abstract and arXiv page (arxiv.org/abs/2407.15073): none. The paper's own source has no repository link. The only URLs are AutoGen, causal-learn and model-provider docs §4.1.
  2. GitHub repository search (via the GitHub API): "multi-agent causal discovery", "MAC causal debate", "causal discovery LLM debate", "causal discovery autogen", "Meta-Debate causal" and "Hao Duong Le causal". Results were unrelated (for example a multi-agent drug-discovery debate app and a federated causal-discovery experiment repo, neither by the authors).
  3. The first author's GitHub repositories: unrelated (a campus RAG assistant and an e-commerce agent demo).

Pitfalls

  • Prompts are not in the text. The full agent prompts (Role, Goal, Causal Principles, Procedure, Output Format) are only in fig. 6 and fig. 7, which are images. The text gives the intent of each part but not the wording, and there is no code to check against. Implementers must write their own prompts and output parser app. A.1 app. A.2.
  • Judge scoring is underspecified. The live text says only that the Judge uses "a quantifiable metric" over the disagreements in skeleton, colliders and edge directions app. A.1. The source has commented-out text describing a point-per-difference rule. That text is not part of the paper and should not be used as the specification.
  • Algorithm pool. Only PC, FCI and GES are named as examples app. A.2. The text does not say which algorithms form the pool 𝒜, nor which algorithm each dataset selected app. E. The statistical baselines (PC, FCI, Exact Search, GES, DirectLiNGAM) are a separate list §4.1.
  • Subset S. Its size is not stated ("a few sampled rows", §3.1). The algorithm-selection prompt receives S, so the choice of S changes what the Negative agent can argue.
  • Debate rounds. The default number of rounds in the main tables is not stated. R3 tests one to five rounds and finds one sufficient §4.3.
  • Cyclic or invalid outputs. The method targets DAGs §6. The text does not say what happens when an LLM returns a cycle, a bad edge format or a non-parsable answer.
  • Meta Fusion format. The text gives an example with direct edges and "implied orderings" §3.5, but does not say how orderings are derived from the graph (for example transitive closure) or the exact text format.
  • SHD counting. The definition sums over ordered pairs i ≠ j of directed adjacency entries app. B. Taken literally, a reversed edge counts as 2 differences. The paper does not say whether it uses that convention or counts a reversal once.
  • NHD on directed graphs. NHD is defined for undirected graphs, normalised by the number of node pairs app. B. The text does not say how the directed output is converted to an undirected comparison.
  • The headline Earthquake result is shared. Exact Search also has SHD 0, NHD 0 and F1 1.00 on Earthquake for every backbone tab. 2. The abstract's "perfect reconstruction" is true for MAC with Gemini, but it is not unique to MAC.
  • Win counts. The 10/4, 9/5 and 7/7 counts are the authors' own §4.2. The text does not define how ties are counted, and several cells in tab. 2 are tied or near-tied.
  • Determinism claim. The paper says temperature 0 makes outputs deterministic §4.1, but it still reports std over 10 seeds for LLM methods tab. 2. Plan to repeat runs.
  • Small graphs. The benchmarks are 5 to 20 nodes §6. The paper says MAC's metadata results may partly reflect memorised knowledge of canonical networks §6. The DCM stage is meant to reduce that risk, but this is not tested on novel graphs §6.
  • Costs. The 16× to 25× token figure and "about half" single-agent cost are in the text. The dollar values are only in fig. 5, so no USD figures are given here.
  • Source version. This card uses arXiv v4 (updated 2026-05-26), as recorded in the arXiv metadata. Earlier versions may differ.
  • Figure and table numbers. These were counted from the source in order of appearance (Table 1 is the comparison table in §1; Figure 1 is the MAC overview in §2). They were not checked against the compiled PDF.

Lineage

  • Builds on: multi-agent debate, which the paper cites as Du et al. (2023) for debate improving reasoning and factuality §3.3; the causal-learn library §3.4; AutoGen §4.1.
  • Compared against: statistical baselines PC, FCI, Exact Search, GES and DirectLiNGAM; LLM baselines Zero-shot prompting, ReAct, LLM-SCD (Ban et al., 2023) and ILS-CSL (Takayama et al., 2024) §4.1. None of these has a card in this wiki.
  • Superseded by: not stated.

Source and license

Adapted from “Multi-Agent Causal Discovery Using Large Language Models” by Hao Duong Le, Xin Xia, Haijie Xu, Chen Zhang (arXiv:2407.15073), used under CC BY 4.0. Changes: condensed and restructured for implementation, with tables, equations and algorithms taken from the paper and its code, each cited to its source. Not affiliated with or endorsed by the authors.