9 1 week ago

ollama run kadirify/medlocal-lab-explainer

Details

1 week ago

b4b27d3ffc20 · 4.3GB

qwen3
·
4.02B
·
Q8_0
{ "num_ctx": 4096, "stop": [ "<|im_end|>" ], "temperature": 0 }
{{- range .Messages }}<|im_start|>{{ .Role }} {{ .Content }}<|im_end|> {{ end }}<|im_start|>assistan

Readme

MedLocal Lab Explainer

A fine-tuned Qwen3-4B model that summarises laboratory report results in plain language for patient communication. Part of MedLocal, a clinical support tool for physicians.

This model is a research artifact. It is not a medical device. The clinical decision is always the physician’s.

What it does

Given a list of lab results with out-of-range flags and vetted background notes, the model writes a plain-language summary suitable for patient communication. It supports both English and Turkish.

The model does not decide whether a value is abnormal — that is done by deterministic code. It only restates vetted catalog notes in plain language.

Quick start

ollama pull kadirify/medlocal-lab-explainer

For the full application with PDF parsing, reference-range flagging, and a web interface, see the MedLocal repository.

Training details

  • Base: Qwen3-4B-Instruct-2507 (Apache 2.0)
  • Method: QLoRA (rank 16, alpha 16)
  • Data: 2,113 synthetic lab reports with teacher-generated summaries (Qwen3-14B), half Turkish
  • Hardware: Single RTX 5070 (12 GB), ~80 minutes
  • Quantisation: Q8_0 GGUF

Every training example passes eleven rule-based safety checks. The model is grounded: it receives the catalog’s vetted background for every flagged result and restates it, rather than recalling medicine from memory.

Evaluation (262 held-out synthetic reports)

English Turkish
Qwen3-4B, untuned 63.9% 20.0%
Fine-tuned 89.3% 92.1%

Rule compliance on synthetic data, not medical accuracy.

Limitations

  • Not clinically validated
  • Turkish phrasing can be stiff
  • No coverage for result combinations, only individual analytes
  • Reference ranges are general adult values

License

Apache 2.0

Links