XConf · eXperiential Confidence

Confidence Comes from Experience:
Experiential Confidence Estimation from Reasoning to Agents

Caiqi Zhang1   Xiaochen Zhu1   Chengzu Li1   Yulong Chen1   Dharshan Kumaran2   Nigel Collier1

1 University of Cambridge     2 Google DeepMind

📄 Paper 📚 arXiv Code 🔖 BibTeX

TL;DR

One record of experience, read twice

1 Solve & estimate

Task
Fix time-zone handling in recurring calendar events.
Response
“Patch submitted. Unit tests passed.”
Self-reflection
“Tests passed, so I’m confident the fix is correct.”

Stated confidence
0.90

2 Retrieve experience

Similar tasks, met with a similar stated confidence, drawn from the model’s own verified episodes.
Time-zone fix0.90
✓ success
Lesson: boundary checks mattered.
Date-import fix0.95
✗ failure, “tests passed, so I’m confident”
Lesson: general tests can miss edge cases.
✓ UTC conversion0.90
✗ DST parsing0.95
✓ Event sorting0.90
Experience bankown verified episodes

3 Recalibrate

Recall: historical success rate
0.60

Reflect: reading the record
“I have been overconfident when relying on general tests. I haven’t checked this patch’s boundary cases.”
0.90stated 0.50revised

Calibrated confidence

XConf
0.55
= ½ (0.60 + 0.50)
Ship
Escalate
Retry
LATER · AFTER VERIFICATION
✗ Outcome: failure, a daylight-saving case.
Lesson: “Check daylight-saving transitions explicitly.”
episode + lesson stored back into the bank

1 Solve & estimate

Task (OlympiadBench)
2500 chess kings on a 100×100 board so that no two kings attack each other and every row and column holds exactly 25 kings. Count the arrangements.
Answer
0
Self-reflection
“The deduction that kings in a row must be of the form c, c+2, …, c+48 is crucial and seems correct.”

Stated confidence
1.00

2 Retrieve experience

The 50 nearest bank episodes are olympiad problems about placing or counting things on boards and grids. The model succeeded on 19 of them. Three of the eight cards it will read (one of the eight was solved correctly):
Most dominoes on an m×2n board, no 2×2 block0.95
✗ incorrect
Lesson: “I incorrectly assumed that covering all cells was the goal.”
A winner rule on an infinite deck of cards0.85
✓ correct
Lesson: “My reasoning that the 100 rules satisfy all conditions was sound.”
Non-attacking knights on a 20×20 chessboard0.05
✗ incorrect
Lesson: “I failed to fully grasp the implications of the non-attacking condition across different colored squares.”
Experience bankGemini 2.5 Flash · fold 2

3 Recalibrate

Recall: 19 of 50 similar episodes went well
0.44
plain hit rate .38; .44 once neighbours are weighted by how close their stated confidence is to 1.00

Reflect: the model’s reply, verbatim
“I struggle with problems that involve complex combinatorial constraints or game theory, often making incorrect assumptions about optimality or the interaction of rules.”
1.00stated 0.50revised

Calibrated confidence

XConf
0.47
= ½ (0.44 + 0.50)
Ship
Escalate
Retry
LATER · AFTER GRADING
✗ Outcome: incorrect. The gold answer is 2, not 0.
Stated 1.00, track record said .47, and the track record was right.
episode + lesson stored back into the bank

Every field above is real, from the frozen Gemini 2.5 Flash OlympiadBench run (episode OE_TO_maths_en_COMP/0025, evaluation fold 2); long texts are abridged. The Reflect reply was re-elicited with the identical frozen prompt at temperature 0 and returned the stored value exactly.

Why the current inference is not enough

Every existing confidence estimator reads only the current inference: it introspects on the answer just produced, scores its token probabilities, or resamples it and counts agreement. Each estimate is made as if the model had never faced a similar task before. People do it differently: a student who has just solved yet another determinant exercise trusts the result without rechecking a step, because problems of this kind have never let them down. XConf gives a language model the same resource: its own track record.

Recall: the statistical reading

Retrieve the N most similar past episodes under a correctness-supervised key built from the task embedding and the stated confidence, and return their outcome hit rate: on tasks like this, met with a feeling like this, how often was I actually right?

Reflect: the verbal reading

Show the model the same episodes as short cards, each holding the task, the stated confidence at the time, the outcome, and the lesson. Have it name the recurring failure mode its record reveals, then restate a calibrated confidence. One short prompt; the task is never re-solved.

The final estimate is the mean of the two readings, one statistical and one verbal, with equal weight.

training-freeblack-box · no logits format-general1 generation + 1 short call 5-fold out-of-sample

Grounded in how humans calibrate

Five decades of metacognition research paint one picture, and each finding is a design choice here:

People judge their accuracy from remembered outcomes on similar tasks, not only the reasoning at hand→ an experience bank, consulted per episode
Delayed, cue-based judgments are markedly more accurate than in-the-moment feelings→ Reflect re-judges from the retrieved record
Agreement with oneself measures reliability, not validity→ no resampling votes
Hindsight bias cannot be instructed away, only prevented structurally→ lessons stay quarantined until the grade arrives

Every family before it reads the current inference

Verbalized confidence introspects on the answer; likelihood methods score its token probabilities; consistency resamples the same task ten times and counts votes; post-hoc calibrators remap one of those scores. None of them consults the model’s own history at inference time. XConf estimates confidence from that history: the model’s accumulated experience.

FamilySingle generationBlack-boxTraining-freeScales with experienceFormat-general
Verbalized
Trained verbalized
Likelihood / P(True)
Consistency (SC@10)
Post-hoc / conformal
Experiential (XConf)
○ = partially, or only after retraining or refitting; † = inherited from the base score being remapped. Consistency sharpens by resampling the same task; XConf sharpens as graded episodes of other tasks accumulate.

Results

23 / 24
beats or matches SC@10 in AUROC, across 9 benchmarks × 4 models
×10
cheaper than ten-sample self-consistency: one generation, one short call
3–8×
lower calibration error (ECE) than SC@10 on MMLU-Pro; lower throughout
12 / 12
agent cells best or on par (ScienceWorld, AppWorld, SWE-bench Verified); ahead of a trained verifier on SWE-bench
AUROC and ECE across nine benchmarks: XConf leads or ties on discrimination and has the lowest calibration error
The same recipe across reasoning, code, multimodal QA, and interactive agents (ScienceWorld, AppWorld, SWE-bench Verified), on Gemini 2.5/3.5 Flash, Claude Sonnet 4.6, and Qwen3.5‑397B. The margin is largest exactly where self-consistency does not naturally apply: code and agents. On AppWorld, where a failed rollout looks clean, verbalized confidence averages .72 across the four models while XConf reaches .86.

Explore the full matrix

Every method the paper compares, on every model column. Pick a dataset; within each group, rows sort by mean AUROC. Bold marks the best AUROC in a column and anything within .01 of it, the paper’s on-par band. ECE is not bolded: labeled calibrators that flatten scores reach a degenerate near-zero ECE.

Experience travels, and mixing banks is safe

Banks for different benchmarks can be merged without curation and without penalty: pouring every other dataset’s bank into the target’s changes AUROC by at most .01. A bank of the same kind transfers outright. A bank built from a different coding corpus (R2E-Gym) calibrates SWE-bench Verified as well as SWE-bench’s own bank, and merging the two beats either bank alone.

Borrowing has a measurable cost in two cases. Another model’s bank on the very same tasks loses .03 to .06 AUROC: what a record shares is which problems are hard, and what it cannot share is a model’s own failure pattern. This is the self versus other asymmetry found in human metacognition, and the reason XConf defaults to the actor’s own record. Across task families the median cost is .08, and the worst target is code, for the plain reason that non-code banks contain no code experience.

AUROC lost when Recall retrieves from another dataset's bank or another model's bank
The cost of borrowing a bank. AUROC lost relative to the target’s own bank, retrieving from another dataset’s bank (left) or another model’s bank on the same tasks (right).

More experience, better calibration

Holding everything else fixed and growing the bank from a hundred episodes to the full pool traces a rising curve on all three agent domains; on AppWorld with Claude Sonnet 4.6, AUROC climbs from .628 to .810. Where a curve flattens, it flattens because the bank is already dense: MMLU-Pro levels off at twelve thousand episodes, while BBEH and the agent domains, where episodes are fewest, are still climbing at the full pool. More deployment therefore keeps buying better calibration exactly where experience is scarce today.

Drag the bank size. Each bar is XConf’s AUROC for one model when the bank holds that many graded episodes, under the same five-fold protocol as the paper; the grey figure is the change since 100 episodes.
AUROC as the experience bank grows, on agent domains and reasoning sets, for all four models
AUROC as the bank grows (log scale), all four models: two agent domains, plus BBEH and MMLU-Pro under the same protocol.

Selective prediction

Rank episodes by estimated confidence and act on the score: ship the confident set, hand off the tail. Abstaining on the least-confident 10% raises delivered accuracy by 4.8 points, averaged over all thirty-six model and dataset cells, and every cell gains. The largest gain is 8.7 points on AppWorld with Gemini 3.5 Flash, from .805 to .892. Drag the slider to see what each estimator delivers.

Accuracy of what is delivered, as more is abstained

Accuracy by confidence decile

The same six panels as the paper (main figure: Claude Sonnet 4.6; appendix: Gemini 3.5 Flash). Left: accuracy of the kept set as the lowest-confidence fraction is abstained, kept set at least 5%. Right: episodes sorted into ten equal bins by each estimator’s confidence; each point is the accuracy inside one bin. When XConf is high the answer is almost always right (top decile .98); when it is low the failures really are there (bottom decile .28).

What else holds

It estimates more than question difficulty. Hold each question’s difficulty fixed, by how the other three models did on it, and XConf still separates correct from incorrect attempts: stratified AUROC .79, above chance in 35 of 36 cells, and still .05 ahead of verbalized confidence.

It survives the actor shrinking. On Qwen3.5 at 397B, 27B, 9B and 4B, task accuracy falls steeply while the estimate barely moves. The statistical Recall reading is nearly size-invariant; only the verbal Reflect reading degrades below 27B. The split has a plain reason: Recall counts outcomes in the record and asks nothing of the model’s self-knowledge, whereas Reflect asks the model to read its own record, and smaller models are markedly weaker at assessing their own outputs.

It tolerates noisy labels, but not the model’s own. A weak but independent grader, an LLM judge that agrees with gold labels .91 of the time, keeps most of the value: the judge-labeled bank still ties ten-sample self-consistency at a fifth of the cost. A bank labeled by the model itself scores below a bank with no outcome labels at all.

BibTeX

@article{zhang2026xconf,
  title  = {Confidence Comes from Experience: Experiential Confidence
            Estimation from Reasoning to Agents},
  author = {Zhang, Caiqi and Zhu, Xiaochen and Li, Chengzu and Chen, Yulong
            and Kumaran, Dharshan and Collier, Nigel},
  journal = {arXiv preprint arXiv:2609.17708},
  year   = {2026}
}