DocuStore.io

Domain-Aware Extraction

Extract chemical structures, entities, and relationships from unstructured documents.

/ The problem

Chemical structures in research documents are images — invisible to traditional text search. Compound identifiers like SACC-3060 or BMS-986158 are opaque to general-purpose embeddings. Named entities (genes, targets, assays) and their relationships are buried in prose, lost to any system that only indexes raw text.

/ How DocuStore solves it

DocuStore combines Optical Chemical Structure Recognition (OCSR) with hybrid Named Entity Recognition to extract domain structure from every page. The OCSR pipeline uses YOLO-based structure detection, neural template matching, and DECIMER to convert molecular diagrams into canonical SMILES strings. The NER system runs in dual mode: dictionary-based for exact matches (compounds, genes, targets) and LLM-powered for contextual extraction (diseases, measurements, compound-target-assay relationships).

Figure 2a. Example 14EXTRACTEDCC(=O)Oc1ccccc1C(=O)Oconfidence 0.97BMS-986158 · compoundBRD4 · targetIC50 0.4 nM · assaystructflo OCSR + NER

/ Pipeline

PDF Page Image
  ↓ YOLO structure detection
Molecular Region Crops
  ↓ Neural template matching
Matched / Unmatched Structures
  ↓ DECIMER SMILES extraction
Canonical SMILES + Confidence Score
  ↓ Parallel: Dictionary NER + LLM NER
Entities: compounds, genes, targets, assays, measurements
  ↓ Relationship extraction
Compound-Target-Assay-Value records

/ Key capabilities

  • OCSR via structflo-cser: YOLO detector + DECIMER SMILES extraction
  • Hybrid NER: dictionary-based exact matching + LLM contextual extraction
  • Multi-level summarization: page-level (text+image hybrid) and document-level
  • Relationship extraction: compound-target-assay triples with quantitative values
  • Automatic workflow orchestration via Temporal with retry and error handling
  • Configurable LLM providers: Ollama (local), OpenAI, or Gemini