All research

    How fast can a
    medical model run
    and stay accurate?

    Specialisation as inference optimisation: domain-aware quantisation and drafting for open medical LLMs

    Technical report · Published 31 October 2026
    Page reviewed 31 October 2026

    Edward Xi Yang (Ertas AI)

    On this page

    Knowing the domain buys speed and keeps the accuracy.

    We frame specialisation as inference optimisation: a model served for one domain runs faster when its serving stack is fitted to that domain. Our lightweighting study pulls two levers. Domain-aware quantisation calibrates 4-bit compression on domain text and keeps higher precision in the layers the domain's own tasks are most sensitive to, so the speed of lighter weights comes with accuracy held close to full precision. Domain-aware drafting trains the speculative decoder on domain answers, so it predicts more of each answer and adds speed directly. We apply both to medicine and release MedErtas v0.1, two 4-bit models.

    In our lightweighting study, existing published 4-bit builds of the same models report near-full recovery on general benchmarks but lose 4 to 6 points on clinical calculation in paired tests on 12 medical evaluation sets. MedErtas-v0.1-31B-LS, from Gemma 4 31B, keeps 99.6% of its base's mean score with no set significantly below it; our calibration and keeping attention in FP8 together recover most of the calculation loss. MedErtas-v0.1-27B-LS, from Qwen3.8-27B, keeps 98.2% and sits above both existing published 4-bit builds. At one user on one RTX PRO 6000, both answer calculation questions about 8 times faster than their full-precision bases without speculative decoding. Of that, the 31B's medical drafter adds 13% over Google's general drafter.

    Key findings

    99.6% and 98.2%

    of the full-precision mean score across 12 sets

    MedErtas-v0.1-31B-LS averages 78.1 against Gemma 4 31B's 78.4, with no set significantly below it after correction. MedErtas-v0.1-27B-LS averages 77.0 against Qwen3.8-27B's 78.4, above both existing published 4-bit builds of that model (76.4 and 76.7).

    1.4 points

    clinical calculation gap on the 31B

    Existing published 4-bit builds of Gemma 4 31B lose 4.1 to 6.4 points on MedCalc-Bench. In our lightweighting study, our medical calibration recovers about half of that loss, and keeping attention in FP8 most of the rest (+1.8 points, 95% interval −0.5 to +4.1): 63.9 against 65.3 at full precision.

    About 8x

    per-user speed on calculation

    With a single user on one RTX PRO 6000, the 31B answers calculation questions at 189 tokens/s and the 27B at 207, against 22 to 26 tokens/s for the full-precision models without speculative decoding. Exam-style questions run 6 to 7 times faster.

    +13%

    per user from the 31B's medical drafter

    Fine-tuning Google's assistant drafter on medical answers raised accepted tokens per step on calculation from 4.75 to 5.39 and per-user speed from 168 to 189 tokens/s. In one run at 64 concurrent users, aggregate calculation throughput rose 38%, against a spread of about 15% between identical builds at that load.

    The big picture

    Figure 1 places both MedErtas models among comparable builds of the same open models: full precision, and the existing published 4-bit builds from Red Hat and NVIDIA, each served with the fastest public drafter in our runs. Accuracy is the average of the 11 medical sets the Medmarks leaderboard shares with our runs; speed is per user on clinical calculation.

    MedErtas is the fastest build in each family at close to full-precision accuracy: 79.6 against 79.7 for the 31B, and 77.1 against 78.2 for the 27B. MedGemma 27B, a medical model of similar size, averages 63.6 on the same sets, about 13 points below every build of either family.

    Figure 1. Speed against accuracy, with MedGemma 27B for reference

    Scatter plots of average accuracy on 11 medical sets against per-user speed on clinical calculation. The top panel shows both families at full scale, all eight builds between 76.5 and 79.7, with a dashed reference line for MedGemma 27B at 63.6, whose speed was not measured. The lower panels zoom in on each family. Gemma 4 31B family: full precision with Red Hat's drafter 89 tokens/s, 79.7; NVIDIA NVFP4 with Red Hat's drafter 135, 79.0; Red Hat NVFP4 with Google's drafter 185, 78.5; MedErtas 31B LS with its medical drafter 189, 79.6. Qwen3.8-27B family: full precision with Red Hat's drafter 98, 78.2; Red Hat NVFP4 with Red Hat's drafter 164, 76.5; NVIDIA NVFP4 with Qwen's MTP head 173, 76.8; MedErtas 27B LS with its medical drafter 207, 77.1.

    Accuracy is the average of the 11 medical sets the Medmarks leaderboard shares with our runs, thinking off; MedGemma 27B's average comes from the leaderboard snapshot of 26 October 2026, and its speed was not measured. Each build is served with the fastest public drafter in our runs, and MedErtas with its medical drafter. Speed is measured with a single user on the server, on one RTX PRO 6000 Blackwell with vLLM 0.32.0. Full-size image

    Specialisation as inference optimisation

    Specialisation as inference optimisation fits the serving stack to the domain a model serves. Our lightweighting study, the method behind the LS profile, pulls two levers, each with prior work in other settings (see References).

    Domain-aware quantisation decides how the weights are compressed. Post-training quantisation sets each layer's scales from the activations of a calibration set. The existing published builds calibrate on general chat and instruction data. Ours calibrate on medical text with a general share, and the precision layout, which layers keep more than 4 bits, is chosen by measured sensitivity on medical tasks. The lighter weights supply the speed; the domain-aware choices keep the accuracy.

    Domain-aware drafting trains the speculative decoder on medical answers. Speculative decoding speeds up a model in any domain, and a drafter that knows the domain's wording adds speed directly. Only the drafter is trained; the model keeps its released training.

    Every calibration and drafter prompt comes from training splits, checked against the evaluation items so that none is reused.

    Models and builds compared

    Both MedErtas models start from the instruction-tuned releases of two open models under Apache-2.0: Gemma 4 31B from Google and Qwen3.8-27B from Qwen. Every build is compared against its full-precision (BF16) model and against the two existing published NVFP4 builds of the same model, from Red Hat and NVIDIA.

    NVFP4 stores weights in 4-bit floating point with fine-grained scales and runs natively on NVIDIA Blackwell GPUs. The builds differ in which layers keep higher precision, and each build's shipped configuration shows it. For Gemma 4 31B, Red Hat's existing build quantises attention to 4-bit and NVIDIA's keeps attention in BF16. For Qwen3.8-27B, both existing published builds keep attention in FP8.

    Domain-aware quantisation: where 4-bit loses clinical accuracy

    Across the 12 sets, the existing 4-bit builds lose most on clinical calculation: 4.1 to 6.4 points on MedCalc-Bench, each significant after correction (Figure 2). Their vendors report near-full recovery on general benchmarks, so only a medical evaluation shows the gap. Our lightweighting study therefore chose the precision layout on this task.

    Figure 2. Clinical calculation across existing and MedErtas 4-bit builds

    Dot plot of the change in MedCalc-Bench 1.2 accuracy against full precision, in points with 95% intervals. Gemma 4 31B, full precision 65.3: existing Red Hat NVFP4 with 4-bit attention minus 6.4 (minus 8.7 to minus 4.0); NVIDIA NVFP4 with BF16 attention minus 4.1 (minus 6.5 to minus 1.7); medical calibration with 4-bit attention minus 3.2 (minus 5.5 to minus 0.9); MedErtas-v0.1-31B-LS with medical calibration and FP8 attention minus 1.4 (minus 3.7 to plus 1.0). Qwen3.8-27B, full precision 80.9: Red Hat NVFP4 minus 5.5 (minus 7.9 to minus 3.2); NVIDIA NVFP4 minus 4.3 (minus 6.5 to minus 2.0); MedErtas-v0.1-27B-LS minus 3.6 (minus 5.9 to minus 1.4).

    MedCalc-Bench 1.2, 1,100 items, thinking off, each build paired against its full-precision model on the same items. The hollow marker is an internal step, medical calibration in Red Hat's all-4-bit layout, shown to separate the effect of calibration from the effect of FP8 attention. Full-size image

    On Gemma 4 31B we separated the two effects in steps: our medical calibration in Red Hat's all-4-bit layout, then the same calibration with attention in FP8, for 0.9 GB more weight than Red Hat's build. MedErtas-v0.1-27B-LS uses the layout of NVIDIA's existing build, with attention already in FP8, and our medical calibration; its remaining calculation gap is the target of the next version.

    We can simplify the source of the 31B's recovery into these steps, each measured on the same 1,100 MedCalc-Bench items. Because every step is paired on the same items, the steps add up exactly. What each step is attributed to is the simplification.

    Δ existing is Red Hat's existing build against full precision. δ calibration is our calibration in the same all-4-bit layout: +3.2 points, 95% interval +0.8 to +5.6, p 0.013. It differs from Red Hat's build in quantiser settings as well as calibration data, so it measures our calibration as a whole. δ layout is keeping attention in FP8 with the same calibration: +1.8 points, 95% interval −0.5 to +4.1, p 0.14. Together the two steps are clearly significant (+5.0 points, p 0.0001); the layout step on its own is an estimate within the noise of a single run.

    Accuracy across 12 medical sets

    Away from calculation, both builds stay close to full precision (Figure 3). MedErtas-v0.1-31B-LS has no set significantly below Gemma 4 31B after correction and averages 78.1 against 78.4 (Table 1). MedErtas-v0.1-27B-LS averages 77.0 against 78.4, above both existing published builds of Qwen3.8-27B at 76.4 and 76.7 (Table 2).

    Figure 3. All 12 sets, paired against full precision

    Two panels of dot plots, Gemma 4 31B and Qwen3.8-27B, showing the change in accuracy against full precision with 95% intervals for the existing Red Hat NVFP4 and NVIDIA NVFP4 builds and MedErtas LS on 12 medical sets. The largest losses for the existing builds are on MedCalc-Bench and MedCalc with tools. MedErtas LS sits closest to zero on MedCalc-Bench in both panels; exact values are in Tables 1 and 2.

    Medmarks harness, thinking off, 400 to 2,000 items per set. Each build is paired against its full-precision model on the same items. Accuracy for every set is in Tables 1 and 2. Full-size image

    Table 1. MedErtas-v0.1-31B-LS against Gemma 4 31B on 12 sets

    Set (items)BF16Red Hat NVFP4NVIDIA NVFP4MedErtas 31B LS
    MedCalc-Bench 1.2 (1,100)65.358.9*61.2*63.9
    MedCalc with tools (1,100)63.859.0*61.761.1
    MedQA (1,273)93.293.192.593.0
    MetaMedQA (1,373)70.469.769.570.4
    MedConceptsQA easy (2,000)98.898.798.798.5
    MedConceptsQA medium (2,000)71.770.070.470.5
    MedConceptsQA hard (2,000)69.266.768.069.1
    MedHallu easy (548)83.683.283.985.0
    MedHallu medium (636)80.278.580.881.1
    MedHallu hard (816)64.163.562.664.1
    LongHealth task 1 (400)90.290.890.890.2
    LongHealth task 2 (800)89.889.990.189.8
    Mean of 12 sets78.476.877.578.1

    Accuracy in %, Medmarks harness, thinking off. Every build is paired against BF16 on the same items.

    * significant against BF16 after Holm correction. MedConceptsQA tests ICD-10 coding.

    Table 2. MedErtas-v0.1-27B-LS against Qwen3.8-27B on 12 sets

    Set (items)BF16Red Hat NVFP4NVIDIA NVFP4MedErtas 27B LS
    MedCalc-Bench 1.2 (1,100)80.975.4*76.6*77.3
    MedCalc with tools (1,100)79.575.676.176.3
    MedQA (1,273)88.285.788.186.7
    MetaMedQA (1,373)65.665.063.765.4
    MedConceptsQA easy (2,000)97.696.696.997.5
    MedConceptsQA medium (2,000)67.267.463.1*65.4
    MedConceptsQA hard (2,000)64.561.860.5*60.9
    MedHallu easy (548)82.779.782.381.6
    MedHallu medium (636)76.474.277.475.5
    MedHallu hard (816)59.257.558.559.9
    LongHealth task 1 (400)89.288.588.288.5
    LongHealth task 2 (800)89.289.789.489.4
    Mean of 12 sets78.476.476.777.0

    Accuracy in %, Medmarks harness, thinking off. Every build is paired against BF16 on the same items.

    * significant against BF16 after Holm correction. MedConceptsQA tests ICD-10 coding.

    Domain-aware drafting: medical drafters

    Speculative decoding pairs the model with a small drafter that proposes several tokens at once. The model checks them in a single pass and keeps only tokens it would have produced itself, so the output follows the main model. With a draft of γ tokens, each accepted with probability α, one verification step yields τ tokens on average (Leviathan et al.):

    A drafter trained on general text guesses medical wording less well, so α is lower on medical prompts. For the 31B we fine-tuned Google's Gemma 4 assistant drafter on medical answers and serve it at 8 draft tokens. That raised α from about 0.83 to 0.87 on clinical calculation, taking τ from 4.75 to 5.39. The drafter's size and draft length are unchanged, so speed should rise in proportion to τ:

    We measured 12.5% against the 13.5% predicted, from 168 to 189 tokens/s. For the 27B we trained a DSpark speculative decoder on medical answers, served at 7 draft tokens. It accepts 0.2 to 0.35 more tokens per step on calculation than Red Hat's general drafter, for 207 against 188 tokens/s. On long patient records both medical drafters accept slightly fewer tokens than the general ones, which is the drafter work still open.

    We release both medical drafters under the name Perigee, as MedErtas-v0.1-31B-LS-Perigee and MedErtas-v0.1-27B-LS-Perigee.

    Where the speed-up comes from

    We can simplify the source of the speed-up into three factors, each measured by changing one thing at a time on the same card, server and prompts: lighter weights, speculative decoding, and a drafter trained on the domain. The breakdown is illustrative and leaves other serving factors aside, such as batching, kernels, the KV cache and prompt length, which are held fixed here.

    For the 31B, per-user speed on clinical calculation rises from 22.5 tokens/s at full precision to 51 with the 4-bit weights, 168 with Google's drafter and 189 with the medical drafter: 2.27 × 3.29 × 1.13 ≈ 8.4. For the 27B it rises from 26 to 60, 188 and 207: 2.31 × 3.13 × 1.10 ≈ 8.0 (Figure 4).

    Figure 4. Speed for a single user

    Horizontal bars of output tokens per second for a single user on the server, for calculation and exam questions. Gemma 4 31B: full precision without a drafter 23 and 23; 31B LS weights with Google's drafter 168 and 140; MedErtas-v0.1-31B-LS with its medical drafter 189 and 141. Qwen3.8-27B: full precision without a drafter 26 and 26; 27B LS weights with Red Hat's drafter 188 and 179; MedErtas-v0.1-27B-LS with its medical drafter 207 and 188.

    A single user on the server, one RTX PRO 6000 Blackwell, vLLM 0.32.0, medical prompts, one run per configuration. Full precision runs 22 to 23 tokens/s on Gemma 4 31B, shown as 23. Full-size image

    The weights factor follows from how decoding works. Generating each token reads every weight from GPU memory, so per-user speed v is bounded by memory bandwidth B over the bytes read per token M:

    With about 1.8 TB/s on the RTX PRO 6000, the bound predicts a 2.6x gain for the 31B as its weights shrink from 62.6 GB to 24.2 GB. We measured 2.3x; activations, attention over the context and kernel overheads account for the rest.

    Choosing between the two models

    The two models suit different work (Table 3). The smaller 27B leads clinical calculation by 13 to 15 points. The 31B leads medical knowledge, ICD-10 coding and hallucination detection by 3 to 8 points on most sets. Long-record reading is level between them.

    Table 3. Which model for which job

    SetMedErtas 31B LSMedErtas 27B LS
    MedCalc-Bench 1.263.977.3
    MedCalc with tools61.176.3
    MedQA93.086.7
    MetaMedQA70.465.4
    MedConceptsQA medium / hard70.5 / 69.165.4 / 60.9
    MedHallu easy / medium / hard85.0 / 81.1 / 64.181.6 / 75.5 / 59.9
    LongHealth task 1 / task 290.2 / 89.888.5 / 89.4

    Accuracy in % for the two MedErtas builds on the same sets, from Tables 1 and 2.

    Evaluation and speed protocol

    We score on the Medmarks harness with thinking off, on 12 sets: clinical calculation (MedCalc-Bench 1.2, with and without a calculator tool), exam questions (MedQA), recognising when a question cannot be answered (MetaMedQA), ICD-10 coding (MedConceptsQA at three difficulty levels), hallucination detection (MedHallu at three levels) and facts from long patient records (LongHealth, two tasks). Sets run 400 to 2,000 items. Every run serves on vLLM 0.32.0 on one RTX PRO 6000 Blackwell. Our full-precision Gemma 4 31B run lands within 1.2 points of the public Medmarks leaderboard on all 11 sets the board shares, and the harness reproduces the board for Qwen3.8-27B as well.

    Each build is paired against its full-precision model on the same items. We report the difference in accuracy with a 95% interval for a paired difference, test it with an exact McNemar test, and apply Holm correction across every set and build compared for that model. The harness samples at temperature 1.0: two full-precision runs of Qwen3.8-27B differ by under 1 point on 11 sets and by 3.0 on the hardest coding split.

    Speed runs use the same card and vLLM version on three medical workloads: clinical calculation, exam questions and long patient records. We report output tokens per second with a single user on the server, the speed one person sees when nobody else is using it, and also measured 8, 32 and 64 concurrent users. Each configuration ran once. Throughput at 64 users varied by up to 15% between identical builds, so we read smaller differences at that load as noise. Long-record speeds stay out of the headline figures, since with inputs of about 12,000 tokens they fall sharply as concurrency rises.

    Why it matters

    Our lightweighting study points to one practice for teams serving medical models: measure a compressed model on the domain's own tasks, paired against full precision. Existing published 4-bit builds pass their vendors' general benchmarks and still give up ground on clinical calculation, which only a medical evaluation shows. Calibrating the compression and choosing its layout on those tasks is what holds the accuracy.

    Throughput sets the price of a hosted model. 4-bit weights and a drafter trained on the domain raise per-user speed about eightfold over full precision without a drafter, which is what lets us offer the hosted beta below the going rate for the full-precision models.

    Each model needs under 26 GB of weights, less than half the memory of its full-precision checkpoint, which brings single-card on-premises and air-gapped deployment within reach. Speed so far is measured on the RTX PRO 6000 only.

    Limitations

    All scores are single runs of the Medmarks startup subset with thinking off, sampled at temperature 1.0. A paired test on about 1,100 MedCalc items resolves a change of roughly 3.5 points, so a difference that is not significant still allows a loss smaller than that. The 27B sits 3.6 points below its base on MedCalc-Bench, significant before correction, and the 31B 2.7 points below on MedCalc with tools.

    Each speed configuration ran once, on medical prompts. Throughput at 64 users varies by up to 15% between identical builds. Long patient-record prompts slow sharply at high concurrency, and the drafters have not been measured on general-domain prompts. The weights use NVFP4, which needs an NVIDIA Blackwell GPU.

    MedErtas models are beta research releases. They are not medical devices and are not intended for diagnosis or treatment decisions without qualified clinical oversight.

    Report, code and models

    Also on: MedErtas model family

    Common questions

    Is 4-bit quantization safe for medical models?

    Every medical model, including one at full precision, should be built into a carefully engineered and reviewed system before production use. MedErtas aims to match its full-precision base on medical capability while making the model faster and cheaper to serve, and each release publishes the comparison with full precision for every set we test. Compressed builds from other publishers can still lose accuracy on particular medical tasks. Test any model against full precision on your own clinical tasks before relying on it.

    What does specialisation as inference optimisation mean?

    It is the idea behind MedErtas: a model served for one domain runs faster when its serving stack is fitted to that domain. LS models pull two levers. Domain-aware quantisation calibrates the compression on domain text and chooses which layers keep higher precision by their sensitivity on the domain's tasks. Domain-aware drafting trains the speculative decoder on domain answers. Each lever has prior work. The LS profile combines them and is measured against full precision on the domain's own evaluations.

    Which MedErtas model should I use?

    Use MedErtas-v0.1-27B-LS for clinical calculation, where it leads by 13 to 15 points. Use MedErtas-v0.1-31B-LS for medical knowledge questions, ICD-10 coding and hallucination detection, where it leads on most sets. Long-record reading is level between them.

    Does the speculative decoder change the answers?

    Speculative decoding checks every drafted token against the main model and keeps only tokens that model would produce itself, so answers follow the 4-bit model's own distribution. The drafter changes how quickly they arrive.

    What does LS mean in the model name?

    LS, for Lightweight Study, is the build profile. An LS build compresses the weights with domain-aware quantisation and pairs them with a drafter trained on the domain, with the model's own training unchanged. Later profiles will cover models post-trained on domain data.

    What hardware do the models need?

    The weights use NVFP4, which runs on NVIDIA Blackwell GPUs. MedErtas-v0.1-31B-LS is 24.2 GB with a 1.0 GB drafter, and MedErtas-v0.1-27B-LS is 22 GB. The speeds in this report were measured on one RTX PRO 6000 with vLLM 0.32.0.

    Can MedErtas be used for clinical decisions?

    MedErtas models are beta research releases and are not medical devices. They suit building and testing medical software, with qualified clinicians responsible for any clinical decision.

    About the authors

    Edward Xi Yang, Founder & CEO, Ertas AI

    Edward Xi Yang is the founder and CEO of Ertas AI, which builds custom small language models that run on-device, in customers' own cloud or on Ertas-managed infrastructure. He leads the company's research into training small specialist models for long-document tasks.

    Cite this work

    @techreport{ertas2026medertas,
      title       = {Specialisation as Inference Optimisation: Domain-Aware Quantisation and Drafting for Open Medical {LLMs}},
      author      = {Yang, Edward Xi},
      institution = {Ertas AI},
      year        = {2026},
      month       = oct,
      note        = {MedErtas v0.1},
      url         = {https://www.ertas.ai/research/medertas-v01-specialisation-inference-optimisation}
    }

    References

    Ertas AI builds custom small models trained on your data, deployed on-device, in your own cloud or on Ertas-managed infrastructure. See how Ertas AI works.