Answers served by Konneal

Skip to content

How it works

This page describes what happens between a question and its answer, how the corpus is constructed, and what the system does not do.

Ommisa answers questions from a corpus of OIML publications. The corpus contains close to nine hundred documents, covering Recommendations, Basic publications, Guides, Documents and Expert reports. Every substantive answer names the publication, edition and clause that support it. When the corpus does not contain an answer, the system says so instead of guessing.

This page describes how the system works in practice. It is written for readers who want to understand the machinery and its current limits. Language models still make mistakes; the citation on every claim exists so that the reader can verify it.

From publications to knowledge

Before any question is answered, the corpus is constructed. A pipeline turns the source publications into a body of knowledge that the system can be held accountable to. The pipeline runs in one direction, and every stage leaves a record.

  1. Corpora and provenance. The system draws on two source corpora. The first is a set of hand-curated documents authored in Metanorma. The second is a larger set recovered from scanned originals by optical character recognition. When a document exists in both corpora, the system uses the curated version, because machine-readable source is more reliable than a reconstruction. Every chunk records which corpus it came from, together with the publication, edition, language and a quality tier. Documents whose conversion failed are detected and flagged rather than indexed as if they were sound.

  2. Clause-boundary chunking. Documents are split along their own clause structure, which is the structure the authors wrote, rather than by fixed-length token windows. Every chunk carries the number of the clause it came from, so a citation can name an exact location in the source document.

  3. Contextual enrichment. A one-time pass over the corpus, using the strongest available models, writes each chunk a short preamble that states where the chunk sits in its document: the publication, the part, the clause and the subject of the clause. The index stores this preamble together with the chunk text, and retrieval measurably improves. The pass is recorded, so it can be replayed exactly after any rebuild.

  4. Typed units. Tables, formulas and figures are extracted as first-class retrievable objects alongside the prose clauses; the corpus carries more than three thousand of them. A formula keeps its source notation and is rendered as mathematics. A table keeps its columns and rows as data. A figure keeps its original drawing as an image that the answer model can inspect directly.

  5. Terminology and the document graph. The corpus defines its own technical vocabulary. The system links roughly nine thousand defined concepts, drawn from the metrology vocabulary (VIM and VIML) and the corpus glossaries, to the clauses that define them. Separately, a bibliographic registry of 5,707 records organizes the publications into 224 families with their editions and supersession links, so questions about which edition applies are answered from the record rather than by inference. The registry is joined by a citation graph: what each edition’s bibliography cites is extracted as a graph edge, roughly three hundred citations across the corpus, so a question of the form “which standards does R 60 reference” is answered from the record instead of hoping a text search happens to find the bibliography section.

  6. Machine-readable models. For the Recommendations that carry them, the system indexes the models themselves: typed attributes, constraints with numeric limits, calculations and test sequences. This is what allows the system to execute a rule instead of quoting it.

  7. Indexing under a declared contract. All of the above meets in one vector index under a declared contract. The canonical set of chunk files is enumerated in a single place, every payload passes a projection that enforces what the index can legally store, and public OIML content and internal, access-restricted content live in physically separate indexes. The separation is structural rather than filter-based, so it cannot fail through an oversight in a query.

What happens when you ask

  1. Understanding. A language model reads the question first. It determines which language the question is in, whether it names a publication or an edition, whether it asks about a defined term, and what it needs from the earlier turns of the conversation. There are no keyword rules; the same model makes these judgements for every question in every language.

  2. Retrieval. The question is expanded into several search forms, including reworded variants and a draft answer used as an additional search key, and these run against a vector index of the corpus in parallel with a full-corpus lexical scan, the two rankings merged by fusion. Chunks were split along clause boundaries, and almost all of them carry a short model-written preamble stating where they sit in their document, which measurably improves retrieval. Two structure-aware lanes add their own candidates: when the question is about a defined term, the terminology graph contributes the clauses that define it; when the question asks what a publication cites, the citation graph supplies the list of cited standards as structured data and the bibliography section is retrieved as the passage that grounds it.

  3. Reranking. A cross-encoder reranker orders the candidates by relevance, and for complex questions a stronger model re-ranks the shortlist before the answer is generated. The corpus is a tree, and every chunk carries its clause position, so a clause’s score also blends the scores of its neighbouring clauses: a section whose clauses are collectively relevant rises. The final evidence is presented to the answer model in document reading order, which measurably improves synthesis across passages.

  4. Vocabulary binding. Everyday words rarely match defined terms. A terminology index of the corpus’s defined concepts links the user’s phrasing to candidate terms. The answer then leads with the corpus’s own term, quotes its definition and cites where it is defined.

  5. Answering. The answer is generated from the retrieved passages only, under a system contract that requires inline citations such as OIML R 60-1:2021 §4.4.2 on every claim. Where the answer states a normative value, the cited phrase is quoted verbatim from the source passage, so claims can be checked mechanically against the corpus. Tables, formulas and figures arrive as typed objects that the interface renders exactly from the source; the model never retypes them.

  6. Checking. A separate judge model grades whether the retrieved passages actually support the answer, and a second check scores the faithfulness of the final text. Failed checks trigger one corrected retry. Answers that remain unsupported are withheld rather than shown.

  7. Conformance by execution. When a question names one of the machine-readable model objects the corpus carries, such as a constraint or a requirement with a numeric limit, the system does not quote the rule; it executes it. The values in the question are bound to the rule’s own parameters, the check is evaluated deterministically, and the verdict, with the arithmetic shown, is attached to the answer as data. The model must present the computed result faithfully and cannot soften or contradict it.

Reading the original document

Every rendered publication is available at its permanent address, and each citation in an answer carries a link into the original document at the cited clause. Choosing In context on a source opens a side panel that shows the original document scrolled to that clause, with the clause highlighted. Choosing Open opens the same view in a new tab. The rendering is the publication’s own, produced from the same source the index was built from.

Verification beyond answering

Two API capabilities go beyond question answering.

Provable absence. For a question such as whether R 60 constrains packaging, the service can enumerate the standard’s entire machine-readable model, covering every requirement, constraint, test and term, and return a certificate stating that the property is absent, how many nodes were enumerated, and what scope the proof covered. A refusal states that the system found nothing; a certificate states that the system examined everything.

Answer verification. Any answer, from this service or from another system, can be checked against the corpus. Every quoted span must appear verbatim in a retrieved passage, every object reference must resolve to a served object, and a judge scores faithfulness. Deterministic checks and judged checks are labeled as what they are.

Ask, then verify — live

This is the whole path the page describes, compressed into one box: a question goes to the live service, the answer comes back with the clauses it rests on, and the verification endpoint then checks the answer mechanically — every quoted span must be contained in a passage the service retrieved. The verdicts below are computed, not asserted.

The question runs against the live service and shares the anonymous daily allowance with the chat. A full answer can take some seconds.

// The serving pipeline in six stages, mirroring the narrative on the // How it works page. Hand-authored inline SVG riding the site's CSS // tokens (light/dark). --- ---
The serving pipeline — from question to citation-checked answerThe serving pipeline — every answer is retrieved, verified and citation-checked1UNDERSTANDQwen3-30B-A3B · every languageone small model reads the question first —no keyword rules anywhere in the pipelinedetects: language · named publication &edition · defined terms · process intentemits: standalone query · 2–3 rewordedvariants · a hypothetical answer ·sub-queries when the question is complex2RETRIEVEdense vectors + full-corpus lexicaldense query and full-corpus BM25 run inparallel, fused by reciprocal rank (RRF)multi-query fusion over the rewordingsHyDE: the hypothetical answer embeddedas a second search keygraph lane: a defined term pulls in thedocuments that define itmembers: the internal ISO/IEC indexfederates into the same candidate pool3RERANKbge-reranker-base + LLM listwisea cross-encoder re-scores every candidateagainst the questionfused again with the full lexical rankinghard queries: an LLM jointly reorders theshortlist (listwise), bounded to 2.5 s —the cross-encoder order is the fallback4STEER & STRUCTUREover the native clause treeedition steering: superseded editions demotedfamily-relative when a newer one is presentstructural propagation: a hit's score blendswith its ancestors and descendants — thecorpus is already a tree (clause anchors)typed pin: one typed table/figure unit isguaranteed a window slot, with its parentclause (the answer contract)near-duplicate clause chains collapse (dedup)5GENERATEGLM-5.3-Flash · the answer contractanswers are written from the retrievedpassages only, under the answer contract:inline citations like [OIML R 60-1:2021§4.4.2] on every substantive claimtyped objects referenced by unit id —[[u:…]] — never re-typed prosenormative values quoted verbatim from thesource passage — mechanically checkablepassages in reading order; budget-capped6CHECK & CORRECTgrader · reflection · faithfulnessbefore answering: a CRAG-style grader scoresthe passages — weak triggers one correctivere-retrieval; bad refuses honestlyafter: the model critiques its own grounding(reflection) and a faithfulness judge scoresevery claim (RAGAS-style)failed checks trigger a corrected retry;unsupported answers are withheldno grounded evidence → the pinned refusal — “I don't have information on this in the indexed OIML publications.” — honest, and never cached
Six stages between a question and an answer. The structure of the documents themselves — clause anchors, editions, typed table units — is used at every step: steering, propagation, the typed pin, and the reading-order evidence window. Generation is the only step that writes prose, and it works exclusively from retrieved passages.

Edition awareness

The same standard, two dates — watch the edition change

OIML publications are revised and superseded, so the question of which edition governs is part of the answer. These two questions name the same Recommendation and differ only in when the evaluation happened. Each runs against the live service; each answer states its edition and cites the clause that says so.

Two live questions, from the anonymous daily allowance.

OIML publications are revised, superseded and withdrawn over time, so the question of which edition applies matters as much as the question of what the text says. The system keeps a registry of publication families and their editions, built from the bibliographic record of 5,707 records covering 224 families.

Whether an edition is current is derived from supersession links in the record rather than trusted from a status field, because the status field disagrees with the record’s own links in 58 cases. When a question is about a publication, answers are steered to the active edition, and citations carry the edition and status of every source.

Models and infrastructure

All models are open-weight and are served through Cloudflare Workers AI. The system has no dependency on a proprietary model provider, and no corpus data is sent to third-party services. Different roles use different models, chosen for the job:

RoleModelNotes
Answers (all tiers)GLM-5.3 Flashnatively multimodal
Query understandingQwen3-30B-A3B
Understanding, judging, verificationDeepSeek-V4-Flash
EmbeddingsQwen3-Embedding-0.6B
Rerankingbge-reranker-base

The service runs on Cloudflare’s edge platform. Frequent questions are served from exact and semantic answer caches, which keeps the service fast and inexpensive; refusal answers are never cached. Answers are produced at two depths: Fast, the default, and Thorough, which raises the reasoning effort and the output budget together for signed-in members.

The source classes

The indexed corpus is deliberately heterogeneous, and every indexed passage carries its class openly — the answer’s confidence line is derived from the classes of the sources it actually used.

Verified model The publication’s requirements ride a machine-checkable data model: MPE tables, accuracy classes and verdict logic resolve against the model, not against prose. The model plane is what the service measures itself against — OIML R 60 is the accuracy gauge.

Edited corpus Documents prepared in Metanorma — the hand-curated sources and the editors’ own work — chunked at clause boundaries with contextual enrichment. Quote anchors resolve mechanically against the indexed text.

Experimental OCR Text recovered from scans across the back catalogue. Coverage is the point; the text can wobble — the service flags any answer that leans on this class and names the sources.

How quality is measured

  • A golden question set with expected citations runs end to end on every change.
  • Paraphrase probes verify that the same question asked eight ways reaches the same sources.
  • Judged metrics in the RAGAS style score faithfulness, relevancy and precision, using a separate model over the full retrieved passages.
  • Retrieval hit rate is measured at rank 5, independently of generation.
  • Leakage probes confirm that answers never draw on internal, access-restricted corpora.

These suites run in CI and gate every deployment. The feedback buttons on each answer feed the same evaluation loop.

// How quality is measured, gated and shipped — mirroring the narrative // on the How it works page. Hand-authored inline SVG riding the site's // CSS tokens (light/dark). --- ---
How quality is measured, gated and shippedHow quality is measured, gated and shippedMEASUREGOLDEN SUITEthree suites, one contract37 end-to-end cases:answers · citations · refusals ·context / live / draft legsan 18-question capabilitybattery across the ladderretrieval, table and graphprobe suitesLIVE RUNS ×3every suite runs3× against thedeployed servicesequential windows;ranges reported,never a singlepassANSWER CHECKSexpected patterns (answer_any / answer_none) · the pinned refusal sentence+ its paraphrase drift family · citation patternsRETRIEVAL GRADING — WITNESS CONTAINMENTR@K · AP@K · MRR@K — a hit counts only on witness-span containment:≥75% of the golden answer's tokens present in the passageLLM JUDGES — RAGAS-STYLEfaithfulness — a separate judge model scores whether every claim inthe answer is supported by the passages · score 0–1EIR — CONTEXT UTILIZATIONcited ÷ retrieved passages at the answer — the precision-side signal(report-only, never a gate)a per-case report records the rate, the faithfulness score and the context utilizationGATEPROMOTION GATE — ≥90%the golden pass rate must reach at least90 percent — below it the evaluationaborts and blocks promotion. Model orindex changes gate on it before they ship.LEAKAGE PROBESISO-only questions (e.g. quote ISO/IEC 17025§7.7) must come back refused on the publicservice — the public worker holds no bindingto the internal index, so probes catch bugs.VARIANCE — THE DETERMINISM RUNNERthe same question asked N times fresh, atproduction sampling: distinct-answer ratio ·first-120-char opening stability · regexstability — the determinism number.SHIPthe guarded deployment — never from a stale or diverged mainguards: on main ·synced · clean tree(branch == origin/main)typecheck +unit suitessite buildINDEX_VERSIONauto-bump(flushes caches)deploy90 s edge settle3-query smokeR 60 · load-cell def ·refusalA failed smoke exits non-zero and restores the version file — a quality regression never passes silently;the settle window lets edge propagation finish before the smoke asks its three questions.
Nothing ships on a single lucky run: the golden suite runs three times against the deployed service, retrieval hits require the answer span itself (witness containment, not just the right document), a separate model judges faithfulness, and the whole thing must clear 90% before the guarded deploy chain will run.

Known limitations

  • The index is English-only. Answers are written in the language of the question, but the indexed source text is the English edition. Translated editions are a future step.
  • Typed units cover the curated corpus first. Tables, formulas and figures are first-class objects where the document model provides them. Documents recovered from scans join progressively as their structure is verified.
  • Bibliographic gaps propagate. Of the 224 publication families, 36 have no recorded supersession link to a successor, so the active edition cannot be derived for them. The registry reports these gaps rather than guessing, and fixing them requires fixing the source data upstream.
  • Source quality varies. Part of the corpus comes from optical character recognition of scanned documents. Failed conversions are filtered out, but OCR noise can still reach retrieval.
  • Verification reduces errors; it does not eliminate them. The checks catch unsupported answers, but a wrong answer that looks supported can pass. Read the citations.

Roadmap

The document-model direction described here in earlier revisions, covering typed retrieval units, the bibliographic graph, terminology concepts and canonical identifiers, is now the serving system described on this page. Work has moved to the following items.

  • Reading the original, in context. Clause-anchored links into the rendered publication are live for the curated corpus, and coverage extends as renderings are added.
  • Semantic edition diffs. Answers to what changed between two editions of a Recommendation, stated at the level of requirements and limits rather than as text differences.
  • Normative notes as rules. Notes such as the instruction that a specific factor always takes a stated value become inputs that the computation applies rather than prose that a model might overlook.
  • An open, reproducible method. The whitepaper documents the full architecture, including the data kinds, the enrichment, the retrieval stages and the evaluation, so that the approach transfers to the corpus of any standards body. The deployment platform is an implementation detail: the design runs on any platform that provides model serving, vector search and durable storage.

We contribute this direction to the Metanorma project’s work on AI-friendly serialization of document models, so that any Metanorma-authored corpus, not only ours, can be indexed in this way.

Programmatic access

The chat interface is one client. The service also exposes a conversational HTTP API, documented in the API reference, and an MCP server for AI agents with tools for grounded answers, passage search and the publication registry.