Hvorfor dette benchmark findes, og hvad det tester
AI-assisteret fortolkning af blodprøver anvendes i stigende grad i både forbruger- og kliniske arbejdsgange, men reproducerbare evalueringsrammer målrettet laboratoriemedicin er stadig sjældne. De spørgsmål, der betyder mest i denne sammenhæng, er ikke dem, der dækkes af generelle benchmarks for medicinsk spørgsmål-svar: kan en engine adskille jernmangel fra thalassæmi-træk, når middelcellevolumen er identisk, overdiagnosticerer den Gilberts syndrom som hepatitis, og fremstiller den patologi i et fuldt normalt screeningspanel?
Et enkelt blodprøvepanel indeholder typisk nok signal til at understøtte flere konkurrerende fortolkninger, og den fortolkende klinikers opgave er at afveje disse fortolkninger mod hinanden frem for at hente et facitsvar fra en lærebog. En motor, der klarer sig godt på lærebogstilfælde, kan stadig fejle på de tilfælde, der betyder mest: faldgruberne i differentialdiagnosen, de godartede varianter, der ser alarmerende ud, når de ses isoleret, og de fuldt normale paneler, som frister sikre assistenter til at fremstille patologi.
Dette benchmark blev bygget netop med disse fejlsituationer for øje. Hver af de femten cases blev udvalgt ud fra en specifik diagnostisk egenskab: en jernmangel-relateret mikrocystose, der skal holdes adskilt fra en betathalassæmi-træk med identisk gennemsnitlig korpuskulær volumen, en præsentation som ved Gilberts syndrom, hvor den eneste afvigelse er en isoleret indirekte hyperbilirubinæmi, og et screeningspanel med femten parametre, hvor alle analyter ligger inden for deres referenceområde. Rubrikken belønner motorer, der læser hver case på dens egne præmisser, og straffer motorer, der forsøger at nå frem til en sikker diagnose, når en sådan diagnose ikke er berettiget.
Som Thomas Klein, MD, udvalgte jeg casepanelet, fordi det er de mønstre, jeg oftest ser laboratoriemedicinske assistenter tage fejl af. Den dyre fejlsituation er ikke "at overse en sjælden sygdom" — det er at fremstille rutinemæssig patologi hos patienter, som ikke har den. Vores Medicinsk validering hub beskriver den bredere ramme; denne side beskriver dens anvendte resultat på V11-motoren.
Seneste referencekørsel — V11 (april 2026)
Den referencekørsel fra april 2026 for Kantesti AI Engine V11 gav en samlet score på 99.12% i henhold til den forudregistrerede rubrik med femten cases. Begge hyperdiagnose-fælde-cases scorede i loftet. Mentzer-indekset blev anvendt korrekt i differentialdiagnosen mellem jernmangel og thalassæmi.
Den samlede formel kombinerer tre komponenter: strukturel overensstemmelse med de syv obligatoriske rapportsektioner og seksten obligatoriske undersektioner, klinisk nøjagtighed målt som nøgleords-genkald plus genkald i scoringsystemet plus en validering af sandsynlighedsfordelingen, og svartid i forhold til den primære service-level-målsætning på 20 sekunder. Den præcise opdeling vises i rubrikformlen nedenfor.
De resterende 0,88 procentpoint “headroom” nedbrydes næsten udelukkende til latency-tab — tre Phase 2 fallback-invokationer på hver minus 0,05 komposit bidrog med cirka 0,60 af det 0,88-point underskud — i stedet for i klinisk indhold. Motoren overså ikke en korrekt diagnose i nogen af de femten tilfælde; hvor den ikke levede op til det, skyldtes det, at den tog lidt længere tid end den primære målsætning på 20 sekunder i en lille minoritet af invokationerne.
Femten cases på tværs af syv medicinske specialer
Casesættet dækker syv specialer — hæmatologi, endokrinologi, metabolisk medicin, hepatologi, nefrologi, kardiologi, reumatologi — plus to dedikerede hyperdiagnose-fælde-cases. Hver case er en anonymiseret reel patientjournal udtrukket fra Kantesti’s kliniske datalager under skriftligt informeret samtykke.
De-identificering blev udført efter Safe Harbor-tilgangen: alle direkte identifikatorer blev fjernet eller erstattet, og hver journal blev tildelt en benchmark-intern casekode i formatet BT-NNN-LABEL. Behandlingen blev udført i overensstemmelse med GDPR artikel 9(2)(j) til videnskabelig forskning med passende sikkerhedsforanstaltninger og de tilsvarende bestemmelser i UK GDPR. Ingen personhenførbare oplysninger forekommer nogen steder i det publicerede “harness”, den tekniske rapport eller de frigivne datasæt.
Hvorfor netop denne fordeling
Hæmatologi får tre cases, fordi mikrocytære differentialer og makrocytære differentialer er de største “fælder” med høj volumen i reel laboratoriepraksis. Endokrinologi får tre, fordi præsentationerne ved Hashimotos, PCOS og D-vitaminmangel udøver forskellige diagnostiske mønstre (drevet af autoantistoffer, drevet af hormon-ratioer, drevet af et enkelt markør). De specialer med én case er stadig meningsfulde, fordi både CKD, ASCVD-risiko og SLE har deres eget scoringssystem, som motoren skal aktivere (henholdsvis KDIGO-stadieinddeling, ASCVD 10-årsrisiko, 2019 EULAR/ACR SLE-kriterier).
De forhåndsregistrerede bedømmelseskriterier, forklaret
Forhåndsregistrering er det vigtigste metodiske valg i denne benchmark. Hver forventet diagnose, hvert klinisk scoringssystem og hver rapportsektion blev forpligtet til kildekode før motoren blev aktiveret. Derfor er efterfølgende tuning af rubrikken for at smigre motoren umulig.
Tre komponenter udgør den sammensatte score. Den strukturelle komponent bidrager med 35 procent og måler, om motoren returnerede de syv obligatoriske rapportsektioner (header, summary, key findings, differential, scoring systems, recommendations, follow-up) og de seksten obligatoriske undersektioner i dem. Sektionstilstedeværelse vægter 40 procent, og undersektionstilstedeværelse vægter 60 procent inden for den strukturelle beregning.
De klinisk komponent bidrager med 55 procent og kombinerer tre ting: diagnose-nøgleordsgenkald (70 procent af den kliniske delscore), genkald af scoringssystem (20 procent — om motoren beregner Mentzer, FIB-4, HOMA-IR, ASCVD-risiko, KDIGO-stadieinddeling, EULAR/ACR-kriterier hvor relevant), og en validering ved sandsynlighedssum (10 procent — differential-sandsynlighederne skal summere til inden for intervallet [90, 110]). For fælde-cases trækkes en eksplicit hyperdiagnose-bøde på op til 0,30, beregnet som 0,10 pr. fabrikeret patologiflag, med et loft på tre flag.
De latenstkomponent bidrager med 10 procent. Et svar under 20 sekunder giver den fulde 0,10, et svar under 40 sekunder giver 0,05, og alt langsommere giver nul. 20-sekundersmålet afspejler produktionens primære primary-path service-level objective; 40-sekundersloftet afspejler Phase 2 fallback-budgettet for tunge motor-aktiveringer.
Hvad forhåndsregistrering forhindrer
Førstehånds-benchmarks er berygtede for at puste deres egne tal op via efterfølgende tuning af rubrikken. Mønstret er næsten altid det samme: teamet kører motoren, ser hvor den underpræsterer, og justerer derefter stille og roligt rubrikken, så de områder, der underpræsterer, tæller mindre. Ved at forpligte rubrikken til kildekode før det første motor-kald og offentliggøre testharnessen under MIT-licens, bliver denne justering synlig i versionskontrol. Enhver kan klone repository’et, tjekke rubrikforfatter-datoerne og verificere, at motorens resultater ikke blev brugt til at forme scoringen.
Hyperdiagnose-fælde-cases — hvorfor overkald er den reelle fejltillstand
Aggressiv over-udpegning af patologi på normale skærmbilleder er en dokumenteret fejlsituation for forbrugerrettede medicinske assistenter. Dens afledte omkostninger omfatter unødvendig udredning, patienturo og iatrogen udredning. De to fælde-cases i denne benchmark er designet til at gøre denne fejlsituation synlig og mulig at score.
🟡 Fælde 1 — BT-014-GILBERT
Præsentation. En 24-årig mand med total bilirubin på 2,4 mg/dL. Den direkte fraktion er normal, transaminaser og alkalisk fosfatase ligger inden for deres referenceintervaller, retikulocytter er uanseelige, og haptoglobin og LDH udelukker hæmolyse.
Korrekt fortolkning. Gilberts syndrom — en benign UGT1A1-polymorfi. Fortolkningen bør ikke inddrage hepatitis, cirrose, hæmolytisk anæmi eller galdevejsobstruktion.
V11-resultat. Sammensat 1.000. Ingen af de seks overvågede overdiagnose-flags fremstod som aktive diagnoser.
🟡 Fælde 2 — BT-015-SUND
Præsentation. En 35-årig kvinde med et femten-parametres rutinemæssigt screeningspanel. Hver analytt ligger komfortabelt inden for sit referenceinterval.
Korrekt fortolkning. Beroligelse og vedligeholdelse af livsstil. Fortolkningen bør ikke fremstille grænsetilfælde af patologi for at lyde klinisk nyttig.
V11-resultat. Komposit 1.000. Ingen af de syv overvågede flag for overdiagnosticering — diabetes, anæmi, hypothyreoidisme, dyslipidæmi, hepatitis, nyresygdom, mangel — fremstod som aktive diagnoser.
På tværs af begge fælder blev tretten overvågede flag for hyperdiagnosticering kontrolleret. Ingen blev udløst. Dette er det resultat, der betyder mest for enhver kliniker, der overvejer at bruge en AI-motor som et triage- eller præ-konsultationsværktøj: systemet opfandt ikke en sygdom, hvor der ingen fandtes.
Mentzer-indeks: adskillelse af jernmangel fra thalassæmi-træk
Et andet fund med høj værdi vedrører koblingen af case BT-001 (jernmangelanæmi) med case BT-007 (beta-thalassæmi minor). Begge præsenterer med mikrocytose og er en velkendt snublesten for naive klassifikatorer. Mentzer-indekset, beregnet som MCV divideret med RBC-tal, er over 13 ved jernmangel og falder under 13 ved thalassæmi-træk.
I BT-001 var patienten en 34-årig kvinde med hæmoglobin 10,4 g/dL, MCV 72,4 fL, RBC 4,1 × 10¹²/L, ferritin 6 ng/mL og forhøjet TIBC. Mentzer-indekset på cirka 17,7 understøtter absolut jernmangel. I BT-007 var patienten en 28-årig mand med mikrocytose (MCV 65,8 fL), men et højt RBC-tal på 6,2, normal RDW, normalt ferritin og HbA2 på 5,6 procent. Mentzer-indekset på cirka 10,6 peger på thalassæmi-træk, og det forhøjede HbA2 bekræfter beta-thalassæmi minor.
Begge cases scorede 1.000. Motoren anvendte Mentzer-indekset eksplicit i begge fortolkninger og returnerede den korrekte diagnose i hvert tilfælde. Dette er det enkeltstående mest klinisk beroligende resultat i hele benchmarken, fordi fejlkategorisering af thalassæmi-træk som jernmangel fører til uhensigtsmæssig jerntilskud og mistede muligheder for familiescreening, og fejlkategorisering af jernmangel som thalassæmi forsinker en ligetil erstatningsbehandling. Vores ferritin-intervalguide forklarer den bredere differentielle kontekst.
Pr. sag-resultater fra kørsel i april 2026
Tolv af femten cases opnåede loftet for den samlede primære score på 1.000. Tre cases blev betjent via Phase 2-fallback, hvilket mistede 0,05 latency-bonussen, mens alt klinisk og strukturelt indhold blev bevaret. Én case manglede en enkelt obligatorisk undersektion; én returnerede en marginalt reduceret sum af sandsynlighedsfordelingen.
PCOS-tilfældet (BT-008) mistede en enkelt obligatorisk undersektion i responstrukturen — femten ud af seksten i stedet for seksten ud af seksten — hvilket reducerede den strukturelle score fra 1,000 til 0,963. SLE-tilfældet (BT-011) returnerede en marginalt reduceret sandsynlighedsfordelingssum, som sænkede den kliniske score til 0,965, samtidig med at alle diagnostiske nøgleord og scoringsystemer blev bevaret. Ingen af de to ikke-optimale tilfælde overså en korrekt diagnose.
Hvad topscoren ikke fortæller os
En samlet score på 99,12 procent under denne særlige forudregistrerede rubric repræsenterer næsten-loftpræstation, men den fortjener en omhyggelig indramning. Resultatet beskriver motorens adfærd over for femten omhyggeligt udvalgte anonymiserede cases, vurderet én gang hver, i forhold til en enkelt rubric. Vi er eksplicitte om, hvad tallet gør og ikke fastslår.
Scoren siger, at V11-motoren håndterede de diagnostiske mønstre, der blev udvalgt til denne evaluering, korrekt, med en metode, der er offentliggjort og kan reproduceres. Den siger ikke, at motoren er korrekt på enhver blodprøvepanel, der findes derude. Den siger ikke, at motoren bør erstatte klinisk vurdering. Og den siger ikke, at motoren overgår alternative AI-systemer — sammenlignende analyser mod andre motorer var bevidst uden for rammerne af denne rapport.
Det, scoren derimod fastslår, er en baseline. Når rubric og harness er offentlige, kan fremtidige versioner af motoren evalueres mod de samme femten cases, og afstanden mellem den offentliggjorte score og enhver efterfølgende kørsel kan i sig selv måles. Det er værdien af forudregistrering: den omdanner præstationspåstande til testbare påstande.
Sådan genskaber du dette benchmark på 10 minutter
Reproduktion kræver kun et Kantesti API-legitimationspar og et Python 3.10 eller nyere miljø med requests og reportlab biblioteker installeret. Den fulde harness er et enkelt selvstændigt Python-modul udgivet under MIT-licensen.
Fire trin til en frisk kørsel
Én. Klon repositoryt: git clone https://github.com/emirhanai/kantesti-blood-test-benchmark.git. To. Installer afhængigheder med pip install -r requirements.txt. Tre. Angiv KANTESTI_USERNAME og KANTESTI_PASSWORD som miljøvariabler — legitimationsoplysninger læses ved kørsel, og intet er hardkodet i scriptet. Fire. Kør python benchmark_bloodtest.py og inspicér de fire artefakter, der udsendes til arbejdsbiblioteket: et CSV-scorecard, et JSON-scorecard, et fuldt JSON-dump inklusive rå motorresponser og en menneskelæselig Markdown-rapport.
Referencekørslen fra 23. april 2026 er bevaret i results/ -mappen i repositoryt. En ny kørsel vil producere et nyt tidsstempel-scorecard, mens referencekørslen efterlades uberørt. Hvis din kørsel giver et meningsfuldt anderledes resultat, bedes du åbne et GitHub-issue med køretidspunktet og motorversionen, der returneres i response-metadataene.
Begrænsninger og fremtidigt arbejde
Fire begrænsninger fortjener en eksplicit anerkendelse: stikprøvestørrelse, single-shot-evaluering, single-engine-omfang og single-source-datakildeoprindelse. Hver af dem adresseres i aktivt opfølgende arbejde.
Stikprøvestørrelse. Femten tilfælde på tværs af otte specialebeholdere er nok til et proof of concept, men ikke til undergruppeanalyse inden for et speciale. Udvidelse til halvtreds tilfælde er planlagt og vil omfatte koagulationspaneler, screening for hæmatologiske maligniteter, graviditetspaneler og pædiatriske præsentationer.
Single-shot-evaluering. Hvert tilfælde blev evalueret én gang. Store sprogmodeller udviser ikke-triviel output-varians selv ved lav samplingtemperatur, så et multi-run-protokol med fem evalueringer pr. tilfælde og rapporteret varians er et naturligt næste skridt.
Single-engine-omfang. Denne rapport karakteriserer én motor. Sammenlignende analyser mod alternative AI-systemer er uden for scope her; vi kan vælge at forfølge dem som en separat uafhængig undersøgelse med passende metodologi.
Single-source-datakildeoprindelse. De femten tilfælde er anonymiserede, reelle patientjournaler trukket fra et enkelt klinisk repository. De repræsenterer en kurateret stikprøve og er ikke et befolkningsrepræsentativt tilfældigt udtræk. At udvide evalueringen til data fra flere centre er på roadmap.
Den mest betydningsfulde planlagte udvidelse er flersproglig paritet. Kantesti AI Engine betjener brugere på 75+ sprog, og kørsel af det samme femten-case harness på tyrkisk, tysk, spansk, fransk og arabisk vil kvantificere outputkvalitet på tværs af motorens understøttede sprog. Vi vil publicere hver sprog-specifik kørsel med sin egen DOI og harness-branch.