Your document parser is blind to what it is parsing!
A loan packet lands as one PDF carrying pay stubs, bank statements, tax returns, and IDs. The parser reads every page the same way, so it pulls fields that fit none of them.
The parser needs to know what it is reading before it reads it.
The fix is classification before extraction, not after. Each page needs a label before any schema gets applied to it.
Agentic Document Extraction (ADE) fixes this.
ADE Classify evaluates every page concurrently and assigns a label per page. Pay stubs route to the pay stub pipeline. Bank statements route to their own. Pages that do not fit get flagged with a suggested class.
ADE Extract then applies the matching Pydantic schema per type. A pay stub returns employee name, pay period, gross pay, and net pay. A bank statement returns bank name, account number, and balance. The schema follows the page, not the other way around.
Every value comes back with a chunk reference and a page-level bounding box, so each number traces back to its source.
Full working notebook example in the comments.