Read the latest blog: Powered by Lemma Series: How Ricoh Standardized Equipment-Investment Decisions with Production-Grade, Controlled AI.Powered by Lemma: The Ricoh case study. Learn more

Jen Hilibrand - VP, Applied AI and Strategy at Thread AI
Bhavana Jonnalagadda - Applied AI Engineer at Thread AI
Shun Tanaka - VP, R&D at Ricoh
September 3, 2026
In this installment of our Powered by Lemma series, we explore how Ricoh’s Facilities Management business is using a compound AI system in Lemma to turn an estate of unstructured inspection documents into consistent, auditable capital-investment decisions.
Ricoh’s Facilities Management business runs thousands of buildings and hundreds of thousands of assets: elevators, boilers, air handlers, water treatment. Each needs a repair-or-replace call (report) carrying real cost and risk.
Those calls run on documents: inspection checklists, repair histories, statutory certifications, drawings, site photos. Most is unstructured, much is Japanese, some is handwritten, and a great deal lives in decades-old Excel templates and scanned PDFs never meant to be machine-read. Meaning hides in a merged cell, a marginal note, or a photograph.
That rules out generic AI summarization. Errors are expensive, and a recommendation is only useful if a reviewer can see what it rests on. The system Ricoh adopts to tackle these problems must be able to handle everything described and more, in order to succeed and thrive as production workflows.
Labor-intensive. Field engineers manually aggregate inspection results, trouble history, and hard-won expert knowledge into proposal materials for every single piece of equipment being considered for repair or renewal. The load per asset is very high, and it is repeated across the estate every planning cycle. A single month’s catalog at one representative site in Japan held 87 usable files, which extrapolates to 13,500+ files per year across multiple sites in scope.
Limited data. The original prototype only reached Ricoh’s structured asset-management system of record. Everything living in unstructured files (inspection reports, photos, drawings, trouble notes) was missed entirely, because interpretation accuracy for inspection tables, photos, and drawings was too low to rely on. The system was, in effect, making judgments about equipment it could not actually see.
Inconsistent. There was no shared framework for comparing investment proposals. Judging criteria varied by reviewer and by site. As Ricoh’s management framed it, there was “no know-how to judge proposals from departments, and the standards are ambiguous.” Two equivalent assets could be scored differently depending on who reviewed them and where.
The input corpus makes the difficulty concrete. Inspection files arrive at a rate of over 80 files per month, in formats and layouts that are not standardized and vary widely. These range from structured Excel checklist templates with merged cells and multi-row headers of which there are: tens of template variants, diverse PDF formats, macro-enabled .xls/.xlsm files, GPS-tagged photographs, embedded tables, and handwriting, most of which is in Japanese. Behind them sits the master data: hundreds of projects and thousands of work tickets of accumulated history. The real business metrics here are time saved and consistency of judgment, not model benchmarks.

In general, production-ready enterprise workflows have hard requirements of the following; not nice-to-haves, but needed for a system to be trusted and deployed at a global scale.
All of the above apply in our particular scenario, with additional challenges unique to the two major development efforts:
Where most of the hidden work lives
1
Entity resolution (detecting which records refer to the same real-world object) is a core data-integration task that is naively complex and requires intelligent engineering to make efficient 1. In Ricoh’s case, every extracted record has to be matched to the specific asset it describes to be usable.
2
The data extractor and its consumers need an explicit, versioned agreement about shape, types, and permitted values. A strict and structured approach may seem over-engineered for simple data ingestion, but “data cascades are downstream failures triggered by practices that undervalue data quality” 2, and they matter most in high-stakes settings.
3
Handwritten text recognition remains an active research area with open challenges rather than a solved one 4, and the gap widens for Japanese: research on Japanese handwriting recognition lags English work substantially 5. Photos can compound on that issue by containing handwritten text within them, while also containing extremely meaningful but also context-dependent information wrapped up within an obscure image.
Multi-modal data synthesis by generative AI into actionable reports
1
The generation step is a retrieval problem before it is a writing problem. What the report can say is bounded by what was retrieved, and synthesis across multiple retrieved records is where value is added, combining a measurement trend, a repair history, details from an inspection photo, and an equipment record into one assessment no single source contains.
2
Retrieval and fluency do not substitute for knowing the domain. The data-cascades study found that high-stakes AI is disproportionately built at the intersection of two or more disciplines, which raises the collaboration burden between application-domain experts and the people building the system 2. The institutional knowledge living in the heads of experts must be brought into the digital realm for AI to properly do its job.
3
Every claim needs to tie to a source record or measurement, and the absence of evidence should be stated rather than filled in.
Two workflows. AI when required, deterministic code everywhere else.
Ricoh’s problem splits cleanly into two pipelines with different failure modes, and therefore different designs. Data extraction turns an unstructured file dump into linked, queryable records. Report generation turns those records into a defensible investment recommendation.

Field teams upload files to cloud storage. A Lemma worker detects new or changed files via content fingerprinting, extracts findings with an AI agent, matches each record to the right building and equipment, and stores results with full provenance.
Refinement in layers
Extraction is not one step, it’s a progression. The pipeline follows a medallion architecture, a layered design pattern whose goal is to incrementally and progressively improve the structure and quality of data as it flows through each layer 8. The layering is what makes cleaning a platform responsibility instead of a per-consumer one: the same defense against the compounding downstream failures that undervalued data quality produces 2.
Deterministic parsers where they fit, AI everywhere else
Exact match means exact. A parser that mostly fits a document is the worst outcome possible: it succeeds loudly and produces silent garbage. This is the wrapper-drift problem, and the established defense is verification: monitor whether the extractor’s output still matches its expected shape, and repair or escalate when it doesn’t 3. Here, escalation is free. A near-miss doesn’t fail the run; it falls through to the AI path.
Today, the AI path carries most of the volume by design. Ricoh’s corpus is a long tail of formats that were never designed to be machine-read, and hand-writing a parser for a format seen only three times is wasted engineering. Every agentic session runs with a restricted, explicitly granted toolset. This path is also where the genuinely hard documents live; for handwritten text and images, vision-language models win over traditional OCR due to context-importance and generalization ability 6, 7.
The deterministic path (algos meant to parse specific re-occurring data shapes) gets added thoughtfully over time. The result is a cost and accuracy curve that improves with operational age rather than degrading, and the decision to add a parser is Ricoh’s to make, not a re-engineering request.
Cheap first, smart second, human third
An extracted reading is worthless until it attaches to the right pump in the right building. Linkage runs as a three-tier cascade:
Deterministic linkage algorithm. Reference tables of IDs and known aliases resolve the majority of records with zero AI calls.
Agentic session, triggered only on a miss. If no linkage reference or alias exists, an agent is invoked with read-only access to SQL data and the reference tables, and proposes a candidate mapping.
Handoff to a human. When a new alias or linkage rule is proposed, a person approves it before it is written.
Approved rules are written back to the reference tables, so the expensive path gets rarer over time. The tables are versioned and auditable: for any linked record, you can reconstruct exactly which rule matched, when it was created, and who approved it.
Future implementation
A separate Lemma worker patrols the datastore continuously, independent of ingestion. It catches duplicate records, empty records, other questionable data, and processing failures surfaced from run logs, then queues affected files for reprocessing. Extraction quality is measured, not assumed, and through the natural auditability built into Lemma, the watchdog will provide easily-understandable and traceable info for improving the main workflow over time.

The input is deterministic: a fixed single “project” with pre-determined associated entities.
That single design decision removes an enormous class of failure. There is no open-ended agent deciding what to look at.
Everything before the first prompt is purely algorithmic:
1
All data relevant to the associated entities across every source: structured data records, extracted inspection findings, measurement histories, and any saved human feedback from previous runs of this same project.
2
The records into full objects.
3
Into a fixed-upper-bound data package, so context can never be overrun by a data-rich project.
4
Ratios, trends, thresholds, and scores, computed deterministically before the model ever sees them.
Doing the arithmetic in code rather than in a prompt is what makes the same inputs produce the same scores, run after run. The models narrate, and do not calculate.
Sequential and tightly-controlled AI prompting with prompts and domain constants held as version-controlled configuration.
Prompts, domain constants, target lifespans, and category weights live outside the workflow definition as configuration. Ricoh’s subject-matter experts can edit the language and the thresholds without touching the worker.
This is a compound AI system: state-of-the-art results increasingly come from systems with multiple interacting components (multiple model calls, retrievers, and tools) rather than from a single monolithic model 9.
Every run (inputs, prompt version, model version, outputs, internal state, and more) is written to an audit log, and any past report can be replayed and explained from its stored inputs and configuration. For a capital-investment decision, that log is the deliverable’s defensibility.
The next step is for the report to land where the work already happens: integrated into a Ricoh internal application where the end user can give structured feedback. Feedback would re-enter the pipeline on the next run for the same project, thus completing the integration of institutional knowledge and closing the self-improving feedback loop.
Additionally, feedback implementation would enable large-scale end-to-end operationalization; as Lemma workers are composable and “forkable”, different feedback systems for different facilities and operational knowledge could be quickly scaled up in sub-linear time.
At Thread AI, the 3 pillars of controlled autonomy do not represent additional challenges because their solutions are baked-into the operability of Lemma.
Wrapping legacy and undocumented systems as reusable, credentialed functions. Structured data stores and API calls (Snowflake, SharePoint, internal APIs, and more) become composable steps, and vendor spec gaps get solved once instead of once per workflow.
Immutable, versioned workers, so any past report can be replayed and explained from its stored inputs and configuration.
Per-run tracing with cost and token accounting, making unit economics per report a known number rather than a surprise.
Handoff states that pause a run for human approval and resume with the human’s input captured in context.
Fan-out/fan-in over thousands of documents with per-item failure isolation: no custom queue infrastructure, no partial-batch corruption.
Credentialed functions with least-privilege scoping for all API calls. Secrets referenced, never inlined.
This built-in functionality in Lemma is what enables trust and usage to bring a system past the trial, into a full-blown production workhorse.
As with every Lemma deployment, the value shows up at two distinct levels: accelerating the work Ricoh already does, and unlocking work that was previously out of reach.
The most immediate win is speed. What was a manual, per-asset assembly of inspection results, trouble history, and expert knowledge becomes a report generated from a single project identifier.
From hours of manual assembly to ~3 minutes of generation per report across thousands of completed runs spanning configurations and projects.
Cut generation latency by 43%, from 224 seconds to 127 seconds per report.
89.6% of reports showed improved generation quality, driven by incorporating unstructured data and systematic, model-agnostic optimization through Lemma.
Run-to-run score variance dropped 74%, from 0.312 to 0.080.
Adding unstructured data further reduced variance by 52%, from 0.168 to 0.080.
Proven at scale, running across thousands of buildings, tens of thousands of pieces of equipment, hundreds of projects, thousands of work tickets, and various document types.
Consistent judgments across reviewers and sites. Investment decisions now run on the same rubric and the same evidence standards, every time. That directly addresses the “ambiguous standards” problem Ricoh’s management named.
Unstructured evidence now reaches the decision. Real inspection findings are cited in place of age-based defaults, so the system now judges equipment it can actually see.
Data gaps became a managed asset. Because every field is source-tagged and threshold flips are computed explicitly, the report can say “if this unknown fact were known, the score would shift by N points,” turning missing data from an invisible risk into a quantified, trackable one.
Entity ID linkage means unusable files are now programmatically- and AI-accessible source insights, for even the most obscure documents.
If your own high-stakes decisions are buried in documents that were never built to be read by a machine, contact our team to learn how Lemma can help.