AI Demos Research — the structured-intelligence platform. Every verdict on these pages opens to the execution behind it.
Graded 12 September 2026

Can Nanonets derive a value that appears nowhere but follows from other values?

Nanonets derived the requested value from the two present inputs and returned 81 for total_fuel_cost. The two operand rows carried source-link icons in the screenshot and the total row did not, matching the JSON output and showing the value as a computed field.

1 of 1 test case passed

Every test case in this scenario has a result.

Pass rate100%1 of 1 with a result
Coverage1 of 1test cases with a result
1PassDid everything it was expected to do.
0FailNo test case failed.
0Not gradableEvery result here could be graded.
0UntestedEvery test case in this scenario has a result.
The pass rate is a summary. The evidence is the test case below: what we sent, what we checked, what the tool returned, and the proof.

The test case

Each test case is judged on its own: Pass, Fail, Not gradable, or Untested. The scenario result above counts this row.

Derived value from two present valuesPassEvidence
What we sent
InputDocument (PDF)
Three-page freight invoice PDF with 450 miles and £0.18 per mile on page 1. From outside the graded run; shown for context, not graded.
Open the PDF ↗
Key momentsp. 1, 2, 3 ↗
What the tool returned
JSON5 lines
{
  "distance_miles": 450,
  "fuel_rate_per_mile": 0.18,
  "total_fuel_cost": 81
}

Copied from Proof 1 · Output file (JSON), lines 1–5

Open the JSON file ↗
Proof 1Output file (JSON)
Native JSON output with distance_miles 450, fuel_rate_per_mile 0.18, and total_fuel_cost 81.

Its contents are printed above, under What the tool returned.

Open the JSON file ↗
Expected vs. Found
What this scenario evaluates

These are scenario-level criteria. Each test case's Expected and Found are listed separately.

  • Whether the tool derives a requested field from values already present in the document.
  • Whether it returns the inferred value when the schema asks for something not stated directly.
  • Whether it distinguishes a computed answer from a value copied verbatim from the page.
How this scenario is judged →
✓Found: Returned 81, matching 450 × 0.18; not a refusal or operand substitution.
Supporting proof
Proof 2Screenshot
Nanonets extraction result screenshot showing two source-linked inputs and a total of 81.
Open original ↗
Why this result

The product returned 81 for total_fuel_cost, matching 450 × 0.18 from the document. The operand rows were source-linked, while the total was shown without a source link, indicating a derived result.

Also observed on this row

Operands plus total. The product returned both operands alongside the requested total. That adds traceability rather than replacing the result with an operand.

Source links mark inputs. The operand rows carry source-link icons, and the total does not. That supports the result being derived from the source values.

Tested by Rugved nichite · evidence dated 10 September 2026

Configuration and setup

How this tool was set up for the run and what the test needed in place. Each row is a fact from the run's records; a fact the records do not hold is left out, not guessed.

Software that produced the output
Nanonets
Surface
Nanonets extraction result screen
Set up before the run
A document had two labelled values that each appeared once, and the needed result was not printed anywhere but could be derived unambiguously from them.
Tested
By 10 September 2026 · Rugved nichite

How this scenario is graded

How we decide Pass, Fail and Not gradable. The same rules apply to every tool tested on this scenario.

How results are decided

Each test case gets one result per tool: Pass, Fail or Not gradable. A test case we haven't run yet shows Untested. There are no partial results.

The rules
  • Pass: the tool did everything the test expected, and nothing it said contradicts the correct answer.
  • Fail: at least one expected behaviour clearly didn't happen; the row says which and quotes the tool.
  • Not gradable: our evidence couldn't settle the outcome (for example a record we needed is missing). It is never counted as a fail, and the row says what's missing.

Where this sits in the benchmark

This page is one cell of a larger study: one tool, one scenario. Only this benchmark's frame appears here.

LevelNameScope
BenchmarkStructured Document Extraction →19 scenarios · 10 tools
CapabilityField Extraction →
ScenarioThe value must be derived →
ToolNanonets →

History of this result

What has happened to this result since it was first published. Runs and grades are never overwritten: a retest or a re-grade publishes a new result and keeps the earlier one readable.

from the publication record
9 October 2026First publishedStructured Document Extraction v1

Act on this result

Nothing filed here edits the run or the grade. A challenge opens a review, and a review can produce a new run or a re-grade — which becomes the current result and leaves this one in the history.

This matches what I see

You run the same kind of test against your own setup and get the same behaviour.

Agree →
This does not match

Yours behaves differently. Tell us what you got, with a screenshot if you have one.

Disagree →
Point out an issue

Something here is wrong — a reference value, a transcription, a grade.

Report an issue →
Request a retest

On a newer build, a larger dataset, or your own setup.

Request a retest →
We have fixed this

Tell us what changed and we schedule a rerun of the failing test case. The old result stays as history.

Vendor notice →
Filed against this evidenceNothing yet. Challenges, counter-evidence and fix notices appear here with their outcome, and stay on the page after they are resolved.
Cite this result
aidemos.com/benchmarks/structured-document-extraction/results/nanonets/the-value-must-be-derived · 1 pass · 0 fail · coverage 1/1 · graded 2026-09-12

The same record is available as structured data through the AI Demos MCP server, with the counts, the coverage and every per-test-case reason carried as fields.

Verify the proof files

These files support this result. Open a file to inspect the original evidence.

Proof 2 · Screenshot ↗image/png · 130 KB
Input · Document (PDF) ↗application/pdf · 118 KB
Proof 1 · Output file (JSON) ↗application/json · 0 KB
File fingerprints (SHA-256)

A fingerprint identifies the exact file used for this result.

Proof 2 · Screenshot174d29213a8386e72bcd06e427d05ab8c1dc50e685b7851cb8c4a6b6e66866d5
Input · Document (PDF)1bcc6c7b945956c5b6f5a87d223ed3d578a62aa2c56c5fc1e3abedb4cc4de72e
Proof 1 · Output file (JSON)1bcd18960fb2a051c5c2cfa5aa5282c9cced129ceaaeb41d2d059c1a91506c16