Formulation Deterministic: Every "this is wrong because…" cross-check Compliance QA, product stewardship, SDS authors
Detect when a Safety Data Sheet has drifted out of date — a component became SVHC, a classification changed, or a Section 9 value is implausible.When it applies: you need recurring, automated compliance QA where the LLM reads the document and a deterministic engine verifies every claim.

Scenario

An existing Safety Data Sheet drifts out of date: a component became SVHC, a classification changed, or a Section 9 physical value is implausible. Catching this is recurring, manual, and painful.

Agent workflow

  1. Ingest the SDS (PDF) together with the linked recipe.
  2. LLM extraction — parse Section 2 (classification), Section 3 (composition), and Section 9 (physical properties).
  3. Deterministic cross-check — each listed substance versus current ECHA classification / SVHC status; Section 9 values versus the recipe roll-up; declared composition versus the actual recipe.
  4. Emit a flagged diff — outdated H-statements, newly-listed components not declared, and implausible physical values.

Demo output

An SDS with three highlighted inconsistencies, each annotated with the authoritative source it contradicts. This showcases the philosophy cleanly: the LLM reads the document, the deterministic engine verifies every claim.

Deterministic vs LLM

  • Deterministic — every "this is wrong because…" is a lookup or calculation.
  • LLM — PDF reading and structured extraction.

Data sources

  • Native (offline): RDKit, CoolProp, and PDF/text extraction.
  • Public reference layer: the same ECHA + CLP layer as the substitution and roll-up use cases; optionally a REACH Annex II (SDS 16-section) schema for structural validation.

Limits

The output is a flagged diff for human review, not an authoritative re-issue of the SDS. A qualified author remains responsible for the final document.