Docling — Lab Component
Lab component — not in the Synedrix OS tech stack·Evaluated under LAB-002·Not required in any deployment mode
Not a Synedrix OS platform. Docling is not one of the twelve platforms and holds no OS layer. It appears here only as the structural-parsing engine Semantica wraps (
semantica[parse-docling],>=2.107.0per Semantica’s ownpyproject.toml) — the one capabilityLAB-002actually scoped as “in scope — the main event.” This page is lab reference material underLAB-002, evaluated in structural isolation from production — not a stack platform page, and not citable as authority by any canonical document.
What Docling is
Docling (docling-project/docling, MIT) is a document-conversion library that parses PDFs, Office documents,
HTML, and Markdown into a unified structural representation — preserving tables, nested headings, reading
order, and layout, rather than flattening a document straight to plain text.
| Concept | What it is |
|---|---|
DocumentConverter | Docling’s own top-level entry point — takes a file path or URL, returns a structured DoclingDocument |
DoclingDocument | The structural output: a tree of headings, paragraphs, and tables, each table carrying real row/column structure rather than a flattened text blob |
| Table Structure Recognition (TSR) | The specific capability this lab exists to test — Docling’s layout model detects table boundaries and reconstructs header/row association, confirmed under LAB-002’s stand-up to correctly parse a real 14×7 table |
| Backends | Multiple parse backends per format (e.g. PDF via its own layout/OCR pipeline); format detection is automatic from file content, not just extension |
What Docling is normally used for
- RAG ingestion pipelines — converting heterogeneous source documents (PDF reports, Office docs, HTML) into a structure a chunker can reason about, rather than raw text a chunker has to re-infer structure from
- Table-heavy document processing — financial reports, technical specs, anything where a table’s header/row association is load-bearing information that plain-text extraction destroys
- Multi-format normalization — one converter across PDF/DOCX/PPTX/HTML/Markdown, rather than a different bespoke parser per format
The common thread: Docling’s value is preserving a document’s real structure through the parse step, so whatever consumes its output (a chunker, an embedder, a retrieval pipeline) doesn’t have to reconstruct that structure from degraded plain text.
How Synedrix OS uses it
Synedrix OS does not use Docling in production. It is evaluated only inside LAB-002’s isolated environment, reached exclusively through Semantica’s DoclingParser wrapper class — this lab never depends on Docling directly, and never installs it outside the semantica[parse-docling] extra.
flowchart LR
n1([Docling]):::term
subgraph What it owns
n2[Nothing in production]:::agent
end
n1 --> n2
subgraph What it does not own
n3[Semantic retrieval and similarity search]:::warn
n4[Qdrant]:::term
n3 --> n4
end
n1 --> n3
subgraph Why Docling is evaluated and what would justify adopting the capability
n5[It is the one concrete testable claim in Semantica s whole capability bundle]:::term
n6[The mechanism is real and independently verified]:::term
n7[The result is measured not assumed]:::term
n8[Adoption if it ever happens is scoped narrowly]:::term
end
n1 --> n5
What it owns
Nothing in production. Inside LAB-002’s isolation boundary, DoclingParser runs inside the synedrix-lab-semantica container and structurally parses the same docs/openwiki/academy corpus the production KB ingests, feeding a separate, additive Qdrant collection (synedrix_os_kb_semantica_v1 on qdrant-lab) built specifically to compare against production’s existing chunker.
What it does not own
| Concern | Owner |
|---|---|
| The production chunking/ingestion pipeline itself | The existing Markdown → Qdrant chunker in synedrix-os-website/agent (production, unmodified by this lab) |
| Semantic retrieval and similarity search — the single vector substrate for Layer 7 | Qdrant (Layer 7); Docling’s lab collection is additive, never a replacement |
| Anything a registered agent may recall as memory | The governed memory fabric (Memory Fabric Spec), never a lab component directly |
Why Docling is evaluated, and what would justify adopting the capability
- It is the one concrete, testable claim in Semantica’s whole capability bundle. Everything else Semantica ships — RDF triple store, self-implemented graph algorithms, OWL/SHACL ontology — was pre-judged out of scope by the
LAB-002charter as substrate duplication or a bigger question than the lab’s timebox supports. Structural parsing is the exception: a falsifiable, measurable question (does it improve retrieval?), not an architectural judgment call. - The mechanism is real and independently verified.
DoclingParsercorrectly extracted a genuine 14×7 table underLAB-002’s stand-up — confirmed by inspection, not assumed from Docling’s own documentation. - The result is measured, not assumed.
LAB-002’s retrieval-quality harness (recall@k/MRR) found recall@10 on multi-hop queries went 0.25 → 0.75 with Docling’s table-aware chunking, table-heavy and simple-lookup categories staying tied — at n=4 per category, a real first signal, not yet a robust one. See theLAB-002charter for the full breakdown. - Adoption, if it ever happens, is scoped narrowly. Even a positive result would justify adopting Docling’s table-aware parsing as a preprocessing step ahead of the existing chunker — not adopting Semantica, and not any of the capabilities this charter already pre-judged out of scope.
Official documentation
docling-project/docling— source andLICENSE(MIT)- Docling documentation
Synedrix OS · Lab component reference · Docling