Most teams have already tried to automate this work at least once, usually with rule-based tooling or robotic process automation, and the experience tends to follow the same arc. The pilot goes well because the sample documents were consistent, and then reality arrives in the form of a supplier who reformats their invoice, a broker who sends a scanned PDF instead of a structured file, or a field that is sometimes blank and sometimes contains a note explaining why it is blank. The automation handles the clean cases and escalates everything else, and before long the exception queue is large enough that somebody is doing the original job again, only now with a system to maintain on top of it.
What changed is that language models can handle variation without somebody writing a rule for each case in advance. A model reading an invoice does not need a template describing where the total sits, because it can understand the document the way a person does, which means the supplier who reformats their layout on Tuesday stops being an incident. The same capability applies to classification, summarisation, extraction, and the countless small judgments that sit between two systems and were previously either hard-coded or done by hand.
That flexibility introduces a different problem, and it is the one worth taking seriously. A rule-based system fails loudly and predictably, whereas a model can produce an answer that is confidently wrong and entirely plausible, which is considerably harder to notice at scale. Everything we build is therefore designed around verification: something mechanical checks the output before it counts, a person approves anything irreversible, and every run leaves a trace you can inspect afterwards. The automation is the easy part, and the checking is what makes it safe to rely on.