Research prototype. Not for clinical use. Not a medical device. TraceCDS does not provide medical advice and is not a substitute for professional judgment.

Traceable, source-checked
answers to healthcare questions

TraceCDS answers from FDA drug labeling first, and a trust-checked web search when the labels don't cover a question. Every statement cites its source, every number is verified against that source, and directive language is removed — enforced in code, on every answer.

How it works

A hybrid retrieval and reranking pipeline grounds every open-source model response in a cited passage, then verifies the response before it's shown.

01

Screen the question

Images, patient identifiers, and time-critical questions are declined before any retrieval.

02

Retrieve & rerank

BM25 + BAAI/bge-m3 dense retrieval, reranked by BAAI/bge-reranker-v2-m3.

03

Generate

Extractive quotes, or a summary from a self-hosted open-source LLM (BioMistral).

04

Verify & report

Every statement is checked against its source; failures are removed and logged.

Built to stay within FDA's non-device CDS criteria

Prompting an LLM to follow FDA's non-device clinical decision support criteria isn't reliable on its own — these checks run in code, on every statement, regardless of which generator produced it.

01

Every statement cites its source

Label section, DailyMed link, and label effective date — or a trust-checked web source.

02

Numbers must appear in the source

A dose, frequency, or threshold that isn't in the cited source is removed.

03

Directive statements are removed

"Give 500 mg" fails. "The label states the starting dose is 500 mg [S1]" passes.

04

Sources are ranked by trust

Approved healthcare sources are marked; anything else is clearly flagged, never hidden.

05

Abstains when unsure

When nothing can be verified against a source, TraceCDS says so instead of guessing.

06

Label tables are preserved

Dosing tables are converted to Markdown and quoted row by row with their column headers.

See it in action

Output from the synthetic test label in the project's test suite.

Q: How is exampledrug dosed for kidney function and eGFR?

  • According to the exampledrug label (Dosage and Administration (table), Table 1. Dosing by kidney function): "eGFR (mL/min): 45 or more, Recommendation: No adjustment; eGFR (mL/min): 30 to 44, Recommendation: Do not initiate" S1
  • According to the exampledrug label (Contraindications): "Exampledrug is contraindicated in patients with severe renal impairment (eGFR below 30 mL/min)." S2
S1 FDA label: exampledrug · Dosage and Administration (table) · effective 2025-01-15
S2 FDA label: exampledrug · Contraindications · effective 2025-01-15
PASS C1 No analysis of medical images or signals — text-only input.
PASS C2 Uses well-understood medical information — all sources are FDA labels.
PASS C3 Supports, does not direct, clinical judgment.
PASS C4 Basis is available for independent review.

Everything here is open source

No question is sent to an outside AI service. The model, the search engine, and the web app all run on infrastructure TraceCDS controls.

BioMistral-7B-DAREApache-2.0
BAAI/bge-m3 (retrieval)MIT
BAAI/bge-reranker-v2-m3Apache-2.0
OllamaMIT
SearXNGAGPL-3.0
GradioApache-2.0
CaddyApache-2.0
openFDA / DailyMed dataU.S. gov't data

Ask a question grounded in FDA labeling

Free, self-hosted, and open source. Not a substitute for clinical judgment.

Use TraceCDS →