r/clinicalinformatics 10h ago

A production miss in my PubMed-grounded tool: literal keyword retrieval walked past preeclampsia. What actually fixed it wasn't the model.

1 Upvotes

Third time posting about this project here — after the Ontario scribe-audit thread and the eval-bench re-run. This one's a specific production miss and the two fixes that came out of it, because the failure was more instructive than any benchmark I've run.

A real user typed one line into the tool: "mother presents with proteinuria, headache and lower bp."

The system confidently returned a differential led by ACE-inhibitor side effects. It missed the one thing you can't miss there: preeclampsia.

(Yes, "lower bp" is clinically backwards — preeclampsia is defined by HIGH bp, at least 140/90 with proteinuria. That line is verbatim from the production log. Real users type things that are ambiguous and partly wrong. That ambiguity is the whole point — a literal keyword match took "lower bp" at face value and let go of the pattern that proteinuria + headache in a pregnant woman should never let go of.)

Not a hallucinated citation. Every reference was a real, verifiable PubMed paper. The failure was upstream, in retrieval: one literal search built from the symptom string latched onto "proteinuria + headache + low BP" and pulled drug-side-effect papers. The lethal hypothesis was never even searched for. A confident, well-cited, wrong answer — worse than an obvious error because nothing about it looks wrong.

Two fixes:

  1. A pre-LLM red-flag gate (clinical design worked out with an IM physician). Triggers (passive pattern detection in the free text) and gate questions (findings the clinician has to actively confirm) are kept disjoint — that's what defeats alert fatigue. Answers live on a 2D matrix, not a single confidence score: "unknown" (never assessed) halts synthesis; "not performed" (a deliberate triage decision) proceeds but injects a stark [CLINICAL BLINDSPOT: ... DO NOT DISCHARGE] line rather than a filtered-out banner. Preeclampsia is now one of the patterns.

  2. Differential-first retrieval. Instead of one combined symptom query, generate the differential first, then run a separate PubMed search per hypothesis in parallel and merge. Each candidate diagnosis gets its own literature, so the lethal one can't be crowded out by a keyword match.

The humbling part was measuring it. Our eval cases weren't written in the language real users actually type, and that path quietly skipped the exact differential step we'd just rebuilt — so we'd have "validated" a fix the test never exercised. Rebuilt the bench on the real user path, added the failing cases. Honest numbers on that bench: 100% citation validity (0 fabricated PMIDs), ~80% relevance (not high enough yet), 97% diagnosis match, and the preeclampsia case now resolves correctly.

Deliberately narrow: the gate is a safety net for a handful of can't-miss diagnoses, not a diagnostic engine. Covering every diagnosis would both fail clinically and push it into regulated-medical-device territory (MHRA class 2+, FDA SaMD). It stays a research/education evidence tool.

Questions for this sub:

  1. For anyone running clinical NLP in production — how are you handling the eval-vs-production language/phrasing gap? Our bench was textbook-clean; the real miss came from a messy, self-contradictory input the bench never contained.

  2. The HALT-on-unknown behavior: is refusing to synthesize until a specific finding is confirmed realistic in a real workflow, or does it just get abandoned like every other hard-stop? Genuinely unsure.

  3. Per-claim / per-hypothesis retrieval traceability — is anyone asking for this in vendor eval yet, or still academic?

The red-flag pattern dictionary is going open source. I work on the tool (medevidence.pro) — linking the full write-up once as the concrete example: medevidence.pro/go/reddit?c=post-prod-miss. Happy to drop the link if it reads as self-promo for the sub; the architecture questions stand without it.


r/clinicalinformatics 2d ago

[Beta Testers Wanted] 30 people, 30 days, lifetime access — AI wellness app needs honest testers

Enable HLS to view with audio, or disable this notification

1 Upvotes

r/clinicalinformatics 4d ago

Masters in Infromatics

2 Upvotes

Hey all! I’m looking at getting a masters in informatics. I have a background in tech operations with a mental health startup (5 years). And just got into Sutter as a medical assistant. I’ll be transferring to a different location working front desk for a bit then moving back office. By the time of finishing my masters I’ll be there for about 2 years. Plan is to learn as much about epic while I’m there and get an epic certification as well.

Heard it’s a little hard to break into. What’s some thoughts on it? Would love to hear the good, the bad or maybe a funny joke. Thank you!


r/clinicalinformatics 9d ago

patient expectations vs reality

1 Upvotes

working with patient communication systems showed me how much patient expectations have changed ,people expect fast replies instant updates and simple communication almost like the apps they use every day , using QuickBlox for real time communication helped improve that experiance but hospitals still have clinical workflows that cant always move that fast , finding the balance between patient expectations and hospital reality is harder than most people think , how are other teams dealing with this today


r/clinicalinformatics 12d ago

Mapping HL7 v2 to FHIR by hand - the parts that actually get tricky (status fields, event→state, DG1 action codes)

4 Upvotes

I've been learning how v2 → FHIR translation actually works, so I built the same ADT/ORU bridge twice - once as a channel in an integration engine (the open-source Mirth fork, OIE), and once from scratch in TypeScript. Building it by hand surfaced a few things the GUI quietly handles for you:

- The MSH offset trap. Because MSH-1 is the field separator, MSH field numbering is shifted by one versus every other segment - special-case it or every index is off by one. (Segment reference I kept open: Caristix HL7-Definition)

- Three required status fields. Observation.status, DiagnosticReport.status, and Encounter.status are all mandatory (1..1) in R4 - miss one and the whole transaction Bundle gets rejected. (FHIR R4 Observation, Encounter)

- Events vs. states. Encounter.status has no direct v2 source. You translate the ADT trigger event (A01/A03/A11…) into a FHIR state.

- DG1 action codes. DG1-21 (A/U/D) turns a diagnosis into a create / conditional PUT / conditional DELETE rather than plain data.

The official HL7 V2-to-FHIR Implementation Guide is the reference for the segment→resource mappings if anyone wants the authoritative version.

The engine got me ~80% there fast; the from-scratch version is what made me actually understand the mapping. Full write-up with the code and a live converter you can paste a message into: https://symbol-health.com/blog/hl7v2-to-fhir-bridge

For folks doing this in production - do you lean on an engine (Mirth/OIE/Rhapsody) or hand-roll the mapping? And do you map to base R4 first or straight to US Core?


r/clinicalinformatics 28d ago

Tried a cool project connecting AI tools to FHIR data

2 Upvotes

A coworker/friend recently showed me an open-source project he has been working on called fhirHydrant. I didn’t know he was building it, and I was honestly surprised by how natural the interaction felt.

I’m a physician, not a FHIR implementation expert, but from what I understand MCP is basically a way for AI tools to call external systems/tools. This project uses MCP to let an AI client query FHIR APIs through SMART Backend Services.

The demo I tried was against our Epic POC environment. What impressed me was being able to ask questions across different parts of the chart, like labs and observations, and have it pull the relevant FHIR data together into something closer to a useful clinical summary/report instead of just dumping raw JSON.

I can see the obvious caveats around PHI, auditability, governance, and making sure this is deployed safely. But as a clinical informatics concept, it seemed surprisingly practical.

Curious what people here think. Does MCP seem like a reasonable abstraction for AI + EMR/FHIR access if auth, audit, and security are handled carefully?

Repo: https://github.com/faulkj/fhirhydrant


r/clinicalinformatics 28d ago

OT to Clinical Informatics

2 Upvotes

Hi, im currently an inpatient rehab Occupational therapist that is burnt out and trying to delve into non clinical roles. I have been currently interetsed in earning a graduate certificate in Clinical or Healthcare informatics and want to know if the grad certificate route would be best or should I go for the masters. With my schedule now, it would be hard to delve into another masters program. If anyone has some tips for me or if any other routes to non clinical roles pls help me out. Thanks!


r/clinicalinformatics Jun 22 '26

Quick question on PCCP guidance and adherence

0 Upvotes

I'm researching how AI medical device companies are approaching the FDA's December 2024 PCCP guidance — specifically whether teams are treating it as urgent now or watching how enforcement develops first.

Would anyone be willing to share 15 minutes on a call? Happy to share what I'm hearing across the industry


r/clinicalinformatics Jun 08 '26

Preceptor needed

Thumbnail
1 Upvotes

r/clinicalinformatics Jun 07 '26

Looking for a reliable medical speech-to-text API for a tool I’m building

3 Upvotes

I tried building a small tool around medical voice input, but the usual speech-to-text + LLM setup just isn’t reliable enough.

The biggest issue is medication names. LLMs will confidently mess them up, and with medical data that’s not something you can afford. Same goes for dosages, symptoms, abbreviations, and context.

I don’t mind paying for the right API if it’s actually accurate and built for medical data. In this field, “mostly correct” is not good enough.

Has anyone here used a medical speech-to-text API they’d actually trust?


r/clinicalinformatics Jun 03 '26

R/periop nurses: does anyone actually fix the scheduled case times, or do the templates just stay wrong forever?

Thumbnail
1 Upvotes

r/clinicalinformatics May 22 '26

Ontario AI scribe audit found 45% hallucination across 20 vendors. The X debate I got into about the fix actually changed my mind.

3 Upvotes

Ontario government dropped an AI scribe audit this week. Nick Kapur covered

it on X (https://x.com/nick_kapur/status/2056108360580104697). 20 approved

AI scribe vendors got tested on turning doctor-patient conversations into

structured notes. The numbers are bad:

- 9 of 20 vendors (45%) just fabricated stuff. Referrals for therapy that

weren't mentioned. "Anxiety in patient" with nothing about it in the

transcript. "No masses found" in notes where masses never came up.

- 12 of 20 (60%) recorded a different drug than what the doctor prescribed.

- 17 of 20 (85%) missed key clinical context, especially mental health.

Full breakdown with the figure is in Kapur's tweet linked above.

I dropped a comment under that thread saying what felt like the obvious fix:

generate only from what was actually recorded. Never from training data.

Retrieve-first, synthesize-from-retrieved.

Another engineer pushed back. Hard. And he was right.

His point: whole-cloth NL synthesis can't avoid training weights. You need

parameter weights for grammar, syntax, coherent phrasing. Without them you'd

just get a list of relevant strings, not a clinical note.

This forced me to refine. The discipline isn't about ALL tokens. It's about

claim-carrying tokens specifically.

"Patient's HbA1c is 6.4%" is a claim. Has to come from the transcript.

"Based on lab results, the patient demonstrates..." is connective tissue.

Weights handle this fine.

"Recommend follow-up in 3 months" is a claim if the doctor said it. Hallucination

if not.

The 45% fabrication rate in the audit? That's training weights filling in

claim-positions. Same mechanism that invents citations in literature retrieval

(which is what I work on). An entailment check at the claim level catches

the drift before the note gets filed.

LFZ then drew a block diagram of a maximally formal version

(https://x.com/LastFraction0/status/2057319630910128417). Worth a look.

The pipeline: source documents get chunked with unique IDs. A first-pass LLM

builds structured tables of claims (what was said, by whom, about what).

Symbolic audit checks those tables against the original chunks. If it fails,

an "abductive remediator" swaps wrong tokens with correct ones from source.

Only after passing audit does grammar-restricted synthesis produce the final

note. Even that's constrained by formal EBNF grammar so output structure can

be verified.

Every piece of that diagram exists somewhere in literature. Logit-Gating

(constrained decoding at the logit level) lives in libraries like outlines

and xgrammar. CFG guardrails are in OpenAI's structured outputs feature.

Abductive token-swapping has academic precedent in info extraction.

I work on PubMed-grounded clinical AI

(https://medevidence.pro/go/reddit?c=ci-rag-debate). My system tries to

implement the same principle with much softer mechanics. Heuristic relevance

guards. Coverage checks on retrieved abstracts. Prompt-enforced output

structure. Post-hoc LLM-judge against a 32-case eval bench. Last run: 96.9%

diagnosis match, 100% citation validity, 90.9% PMID relevance.

Works for clinical literature retrieval. I'm honestly less sure it would work

for scribe-note generation. Structure is more rigid there, and the cost of

a wrong drug dose making it into the chart is a regulatory event, not just

a bad answer.

Questions for this sub:

  1. Anyone working with AI scribes or clinical doc AI in production - what

    verification actually runs before notes hit the chart? Are vendors moving

    toward formal grammar-constrained synthesis, or mostly relying on

    post-hoc human review?

  2. Ontario-style external audit is reactive. By the time auditors review,

    the notes have been generated and filed already. Is continuous in-line

    claim-verification realistic at scale? Anyone seen it work?

  3. For clinical informaticists doing vendor evaluation - what verification

    evidence are you asking for beyond accuracy benchmarks? Is per-claim

    traceability showing up in RFPs yet, or still mostly an academic concept?

Original X thread for context if anyone wants to read the full debate:

https://x.com/ILYA_babay/status/2056440461917630806

Edit: I work on one of the tools mentioned (medevidence.pro). Linking it

once above as the concrete example of the soft-mechanics approach. Happy to

remove if it crosses self-promo for the sub - the architectural question

stands without it.


r/clinicalinformatics May 17 '26

Has anyone seen LAP 2026

6 Upvotes

Spoiler Alert: I'm not going to discuss any of the actual questions on the ABPM's 2026 LAP, but I found that the quality of the questions was so poor, I can't even tell what they were measuring.

Some questions were incredibly technology-specific and required knowledge of different transmission protocols. That's great if you happen to use those protocols, but most don't.

Some were completely opinion-based, like "what's the best way to get people to do what you want?". It was then followed by a scientific article which says "we solved this by doing XXX -- so it must be the best"

My complaint is that I don't think this test measures anything other than my ability to copy and paste into Claude.


r/clinicalinformatics May 17 '26

Neurology resident interested in informatics

4 Upvotes

I’m a neurology resident that is interested in clinical informatics. Unfortunately I think it is too late for me to apply to the fellowship and start after residency, but looking for advice on how to get into this/ if this could be a viable hybrid career. What projects could I get into while finishing residency? Is fellowship necessary (for example if I wanted to work in informatics 0.5 FTE? What if later on I wanted majority like 0.8 FTE informatics?) I was thinking of possibly getting a job at the VA eventually, do you know if it would be possible to pursue informatics there? instead of fellowship, would working part time for a year or two and doing a masters make any sense?


r/clinicalinformatics May 14 '26

Re-running my own eval bench 2 weeks later: the audit pass found a whitelist that was quietly mirroring my test cases

3 Upvotes

Two weeks back I ran a systematic eval on a tool I've been building (PubMed-grounded LLM, returns answers with citable PMIDs, target user is clinicians who want sources). 30 textbook cases across 9 specialties, scored on PMID validity, diagnosis match, and latency.

Just ran the same bench again. 3 pipeline fixes shipped in between, plus 2 community-submitted cases for 32 total. Numbers below, but the part I actually want to talk about is the audit pass I did afterward.

Quick numbers:

PMID validity stayed at 100% (the foundational claim - every citation resolves to a real indexed paper). Diagnosis match (yes + partial) went 93% → 96.9%. PMID relevance 82% → 90.9%. Latency p50 28s → 24.4s, which I didn't expect because the fixes added prompt content.

What got fixed:

  1. Named-concept retrieval. The query-rewrite step was stripping user-named entities. Someone asks about "Randle Cycle", the rewriter swaps it for generic MeSH terms, and the specific paper that's actually relevant never enters the retrieval pool. Now there's a secondary PubMed search just for named entities and the results get merged.
  2. Auto-mode routing. Research-style queries (no patient, just a topic question) were being forced through the clinical-differential pipeline and coming back with "Most Likely Diagnoses" blocks that made no sense. Small input classifier now routes by intent.
  3. Language-aware routing. This one I didn't see coming. The pipeline has a guard that compares the generated PubMed query against the original topic and discards if they don't share keywords. Profiling showed it firing on 60% of non-English cases. Not because the differential was bad. Because the topic was in one language, the query was in English, and a basic stemmer can't bridge that gap. Now it skips the guard when the topic is in non-Latin script. About 5 seconds saved per affected request.

The part I want to discuss:

After the re-run I went back through my own diff. One of the helper functions in the pipeline uses a whitelist of clinical terms to detect when the model has produced a completed assessment (vs still asking the user clarifying questions). The original whitelist had non-English translations of clinical terms in it. Plasmapheresis. Thrombocytopen. Infarct. Translated versions.

Then I looked at the eval bench. Several cases were also translated. The whitelist words mapped to the bench cases almost one to one.

Not intentional. I'd been adding terms one at a time as I noticed marker bugs on specific cases. Each addition felt local. Together they were a mirror of the bench. The bench was "passing" partly because the whitelist had quietly absorbed the bench's vocabulary.

I cleaned it up. English-only generic patterns now (pneumonia, meningit, endocarditis, aneurysm, hemorrhag, carcinoma, lymphoma, fracture, etc.) - these show up in tens of thousands of clinical writeups and aren't specific to anything in my bench. Cases still pass. Next week I'm replacing the whole whitelist with an LLM-based check anyway (about a hundredth of a cent per triggered case, no list to maintain).

The reason I'm bringing it up: this is exactly the kind of thing eval numbers can't catch. The bench can only tell me the bench is passing. Reading my own diff is what caught it.

Two design questions for anyone who's been here:

  1. How do you structure hold-out test sets when you're the same person writing the cases and the pipeline? My next move is 10 fresh cases I won't see during development, run only at release-eval. But that still wouldn't have caught the whitelist thing.
  2. How are you handling the bench-vs-production gap? My 32 cases are textbook-grade. Real logs are messier. Planning to sample random production queries, grade them with the same LLM-judge methodology, and compare. Curious if anyone's done this and what fell out.

Full writeup with all numbers and the case-by-case breakdown: https://medium.com/@babay_24116/two-weeks-later-what-the-test-bench-caught-and-what-im-honest-about-1cd8589634ed

Happy to share the eval runner if anyone wants to look at the judge methodology. It's a pretty simple LLM-as-judge setup with a structured rubric - open to feedback on whether the dx_match scoring is too lenient.


r/clinicalinformatics May 12 '26

How health systems are using workforce data to get ahead of the staffing crisis operationally

Thumbnail
1 Upvotes

r/clinicalinformatics May 07 '26

Question for aesthetic and dental clinic owners

0 Upvotes

Hi everyone,

I am building a clinic management software for aesthetic clinics and dental clinics.

I am not here to sell anything. I just want to understand if this type of software is actually useful for clinic owners and clinic teams.

The software helps clinics manage things like:

  • Appointments
  • Patients
  • Doctors
  • Leads and follow-ups
  • Treatment sessions and follow-ups
  • Consultation notes
  • Before and after photos
  • Consent forms
  • Billing and invoices
  • Pending payments
  • Revenue reports
  • Lead conversion
  • Staff/team management

The main goal is to help clinics keep everything in one place instead of using many different tools, papers, Excel sheets, or WhatsApp messages.

I wanted to ask clinic owners and managers:

What is the biggest problem you face in managing your clinic every day?

Is it appointments, patient records, billing, follow-ups, staff tasks, reports, or something else?

Also, if you already use clinic management software, what do you like or dislike about it?

Your feedback would really help me understand what clinic owners actually need.

Thank you.


r/clinicalinformatics May 05 '26

What roles should I target next in health IT (non‑clinical, Epic-focused)?

Thumbnail
1 Upvotes

r/clinicalinformatics Apr 24 '26

Clinicians Who Code unConference - York, UK, 20th June 2026

Thumbnail
1 Upvotes

r/clinicalinformatics Apr 20 '26

Where do healthcare communication systems usually break down in real workflows?

0 Upvotes

I’ve been exploring discussions around healthcare systems, especially communication workflows between patients and providers.

One thing I keep noticing is that many systems seem technically capable, but still struggle in real-world usage.

From your experience:

Where do communication systems usually break down?

Is it more about:

– Poor integration between systems (EHR, messaging, notifications)?

– Lack of real-time communication?

– Workflow design issues?

– Or something else entirely?

I’m particularly interested in patient communication before and after visits, and how that impacts outcomes and operational efficiency.

Would really value insights from people working directly in this space.


r/clinicalinformatics Apr 20 '26

Clinical informatics fellows…does your program pay you attending rate for clinical shifts?

Thumbnail
2 Upvotes

r/clinicalinformatics Apr 13 '26

Career accessibility concerns

Thumbnail
1 Upvotes

r/clinicalinformatics Apr 09 '26

`sct` - a local-first, file-based SNOMED-CT toolset for the rest of us

3 Upvotes

I've been involved in healthtech and clinical informatics for a fair old while now, and have always found the lack of simple tooling for SNOMED-CT quite frustrating. Everything is either a janky online Web Term Browser with limited functionality, or it's a REST API which requires you to **fully understand** FHIR, ECL ***and*** SNOMED before you can even start.

I have no idea how people learn SNOMED completely in the abstract without anything to actually tinker with and learn from. In the UK we have the TRUD which makes even the process of obtaining the RF2 files a challenging and bewildering experience. (Hint: you have to 'Subscribe' before the Download button even be visible!)

Anyway, rants aside (more in the video though), I decided to build something more suited to tinkering and learning in the terminal with SNOMED-CT and came up with this:

https://github.com/pacharanero/sct

In simple benchmarking it's between 6x and 60x faster than Snowstorm or Ontoserver for all queries I've tried.

I'm sure it will be of use to many in the Clinical Informatics community. Here's a video on my Everything Digital Health channel that walks through the main features so far.

https://youtu.be/f-gz-MKtU44

Would love to get feedback of the Clinical Informatics community. If you find it useful let me know, if you find bugs let me know, and if you want new features - let me know! Give it a GitHub Star if you like it!


r/clinicalinformatics Apr 08 '26

Clinic owners in India — are you still managing appointments and patient records manually in 2026?

2 Upvotes

Spent some time recently visiting a few clinics across Pune and Mumbai, and was genuinely surprised by how many still rely on paper registers, WhatsApp messages, and basic Excel sheets to manage daily operations.

With patient volumes increasing significantly post-pandemic, the cracks are starting to show. Common problems I noticed:

  • Double-booked appointments causing waiting room chaos
  • Patient medical history scattered across physical files
  • Billing errors and delayed payment tracking
  • No visibility into daily clinic performance or revenue
  • Staff spending more time on paperwork than patient care

From what I understand, cloud-based clinic management software can address most of these pain points — automating appointment scheduling, digitizing patient records, streamlining billing, and giving clinic owners real-time data access from anywhere.

A few honest questions for this community:

  • Have you or your clinic made the switch from manual to digital clinic management?
  • What were the biggest challenges during the transition?
  • Is affordable clinic software genuinely accessible for solo practitioners or small clinics in Tier 2/3 cities?
  • Did going digital actually improve patient retention and satisfaction at your clinic?
  • Are there any open-source or free clinic management tools worth exploring?

Would really appreciate genuine experiences — both positive and negative — from doctors, clinic administrators, or healthcare tech professionals who have dealt with this firsthand.


r/clinicalinformatics Apr 06 '26

Patient summary

1 Upvotes

Hey all!! I’ve been looking around Reddit threads about patient information summaries and came across a question that asked about condensing information. I was wondering what type of condensing would be helpful? Or if there any others who wonder about condensing information? I’m a student who’s developing a system intended for this and I would love feedback on what you would want to see!!