Files
t2a_v2/output/structured/146_23099769/trackare-17023408-23099769_17023408_23099769_cim10.json
dom 13fe9fa666 chore: mise à jour output pipeline (anonymized + structured)
Résultats de re-traitement pipeline v2 sur 261 dossiers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 23:14:42 +01:00

414 lines
16 KiB
JSON

{
"source_file": "trackare-17023408-23099769_17023408_23099769.pdf",
"document_type": "trackare",
"sejour": {
"sexe": "M",
"age": 75,
"date_entree": "23/05/2023",
"date_sortie": "26/05/2023",
"duree_sejour": 3,
"imc": 23.0,
"poids": 76.0,
"taille": 182.0
},
"diagnostic_principal": {
"texte": "Sepsis",
"cim10_suggestion": "A41.9",
"cim10_confidence": "high",
"cim10_final": "A41.9",
"cim10_decision": {
"action": "PROMOTE_DP",
"final_code": "A41.9",
"reason": "DAS promu en DP (score (2, 3, 4))",
"needs_info": [],
"applied_rules": [
"RULE-DAS-TO-DP"
]
},
"sources_rag": [],
"preuves_cliniques": [],
"source": "regex"
},
"dp_final": {
"verdict": "REVIEW",
"evidence": [],
"reason": "Aucun DP disponible",
"candidates": []
},
"quality_flags": {
"rag_status": "error",
"no_dp_source": true
},
"diagnostics_associes": [
{
"texte": "Anémie",
"cim10_suggestion": "D64.9",
"cim10_confidence": "medium",
"cim10_final": "D64.9",
"sources_rag": [],
"preuves_cliniques": [],
"est_cma": true,
"niveau_severite": "non_evalue",
"niveau_cma": 2,
"source": "regex",
"source_page": 3,
"source_excerpt": "...ansit Normal Absence Absence Absence Absence Absence\nNotes paramédicales\nType de note Nom Date Note\nAnémie: 1 CGR ce matin\nAlexandra\n26/05/2023 → RAS transfu ok\nNote IDE MASCHIO-\n12:21\nESPOSITO\nDevenir: dép..."
},
{
"texte": "Thrombocytopénie",
"cim10_suggestion": "D69.9",
"cim10_confidence": "high",
"cim10_final": "D69.9",
"justification": "Plaquettes 9 [N: 150-400] - valeur très basse (thrombocytopénie sévère). Mention de transfusions de CGR et suivi hématologique. Diagnostic ayant mobilisé des ressources supplémentaires pendant le séjour.",
"sources_rag": [],
"preuves_cliniques": [],
"niveau_severite": "non_evalue",
"niveau_cma": 1,
"source": "llm_das"
},
{
"texte": "Infection à Proteus vulgaris",
"cim10_suggestion": "B96.4",
"cim10_confidence": "high",
"cim10_final": "B96.4",
"justification": "EBU positif à Proteus vulgaris documenté dans les observations. Infection confirmée ayant justifié l'antibiothérapie (Tazocilline) et mobilisé des ressources. Diagnostic précis et pertinent pour le séjour.",
"sources_rag": [],
"preuves_cliniques": [],
"est_cma": true,
"niveau_severite": "non_evalue",
"niveau_cma": 3,
"source": "llm_das"
},
{
"texte": "Hypochlorémie",
"cim10_suggestion": "E87.8",
"cim10_confidence": "high",
"cim10_final": "E87.8",
"justification": "Chlore 110 [N: 135-145] - valeur basse significative. Anomalie électrolytique ayant potentiellement mobilisé des ressources de surveillance et correction pendant le séjour.",
"sources_rag": [],
"preuves_cliniques": [],
"est_cma": true,
"niveau_severite": "non_evalue",
"niveau_cma": 2,
"source": "llm_das"
}
],
"actes_ccam": [],
"antecedents": [],
"traitements_sortie": [],
"biologie_cle": [
{
"test": "CRP",
"valeur": "89",
"valeur_num": 89.0,
"anomalie": true,
"quality": "ok",
"source_page": 13,
"source_excerpt": "...l/l\nBilirubine totale 26 µmol/l\nASAT 32 U/l\nGamma GT 472 U/l\nChlore 110 mmol/l\nCréatinine 53 µmol/l\nCRP 89 mg/l\nCompte-rendu laboratoire Labo230525114212-1.pdf\nPolynucléaires neutrophiles\n9,0 %\n(%)\nPolyn..."
},
{
"test": "ASAT",
"valeur": "32",
"valeur_num": 32.0,
"anomalie": false,
"quality": "ok",
"source_page": 13,
"source_excerpt": "...irubine conjuguée calculée 10 µmol/l\nBilirubine non conjuguée 16 µmol/l\nBilirubine totale 26 µmol/l\nASAT 32 U/l\nGamma GT 472 U/l\nChlore 110 mmol/l\nCréatinine 53 µmol/l\nCRP 89 mg/l\nCompte-rendu laboratoire..."
},
{
"test": "ALAT",
"valeur": "35",
"valeur_num": 35.0,
"anomalie": false,
"quality": "ok",
"source_page": 13,
"source_excerpt": "...ui\nbiologiste\nBlastes (%) 2,0 %\nBlastes (#) 0,01 10.9/l\nErythroblastes (%) 2,7 %\nGlucose 5,0 mmol/l\nALAT 35 U/l\nréalisée sur frottis\nFormule sanguine\nsanguin au microscope\nHématocrite (%) 22,5 %\nIndice de..."
},
{
"test": "Sodium",
"valeur": "143",
"valeur_num": 143.0,
"anomalie": false,
"quality": "ok",
"source_page": 13,
"source_excerpt": "...,75 10.9/l\nHématies 2,48 10.12/l (t/l)\nHémoglobine 7,4 g/dl\nVGM 90,7 fl\nTCMH 29,8 pg\nCCMH 32,9 g/dl\nSodium 143 mmol/l\nDiscordance\nNon conformité TrakCare / étiquettes \"\nheure prélèvement\"\nOsmolarité sang 29..."
},
{
"test": "Chlore",
"valeur": "110",
"valeur_num": 110.0,
"quality": "ok",
"source_page": 13,
"source_excerpt": "...µmol/l\nBilirubine non conjuguée 16 µmol/l\nBilirubine totale 26 µmol/l\nASAT 32 U/l\nGamma GT 472 U/l\nChlore 110 mmol/l\nCréatinine 53 µmol/l\nCRP 89 mg/l\nCompte-rendu laboratoire Labo230525114212-1.pdf\nPolynuc..."
},
{
"test": "Hémoglobine",
"valeur": "7.4",
"valeur_num": 7.4,
"anomalie": true,
"quality": "ok",
"source_page": 13,
"source_excerpt": "...ibution des\n14,8 %\nhématies\nPotassium 3,3 mmol/l\nLeucocytes 0,75 10.9/l\nHématies 2,48 10.12/l (t/l)\nHémoglobine 7,4 g/dl\nVGM 90,7 fl\nTCMH 29,8 pg\nCCMH 32,9 g/dl\nSodium 143 mmol/l\nDiscordance\nNon conformité TrakC..."
},
{
"test": "VGM",
"valeur": "90.7",
"valeur_num": 90.7,
"quality": "ok",
"source_page": 13,
"source_excerpt": "...maties\nPotassium 3,3 mmol/l\nLeucocytes 0,75 10.9/l\nHématies 2,48 10.12/l (t/l)\nHémoglobine 7,4 g/dl\nVGM 90,7 fl\nTCMH 29,8 pg\nCCMH 32,9 g/dl\nSodium 143 mmol/l\nDiscordance\nNon conformité TrakCare / étiquet..."
},
{
"test": "Plaquettes",
"valeur": "9",
"valeur_num": 9.0,
"anomalie": true,
"quality": "ok",
"source_page": 13,
"source_excerpt": ".../l\nDiscordance\nNon conformité TrakCare / étiquettes \"\nheure prélèvement\"\nOsmolarité sang 291 mOSM/l\nPlaquettes 9 10.9/l\nValidation et diffusion sous la\nresponsabilité du biologiste\nVolume plaquettaire moyen Non..."
},
{
"test": "Leucocytes",
"valeur": "0.75",
"valeur_num": 0.75,
"anomalie": true,
"quality": "ok",
"source_page": 13,
"source_excerpt": "...u microscope\nHématocrite (%) 22,5 %\nIndice de distribution des\n14,8 %\nhématies\nPotassium 3,3 mmol/l\nLeucocytes 0,75 10.9/l\nHématies 2,48 10.12/l (t/l)\nHémoglobine 7,4 g/dl\nVGM 90,7 fl\nTCMH 29,8 pg\nCCMH 32,9 g/d..."
},
{
"test": "Créatinine",
"valeur": "53",
"valeur_num": 53.0,
"anomalie": false,
"quality": "ok",
"source_page": 13,
"source_excerpt": "...non conjuguée 16 µmol/l\nBilirubine totale 26 µmol/l\nASAT 32 U/l\nGamma GT 472 U/l\nChlore 110 mmol/l\nCréatinine 53 µmol/l\nCRP 89 mg/l\nCompte-rendu laboratoire Labo230525114212-1.pdf\nPolynucléaires neutrophiles\n9..."
},
{
"test": "Glycémie",
"valeur": "5",
"valeur_num": 5.0,
"anomalie": false,
"quality": "ok"
},
{
"test": "Glycémie",
"valeur": "5.0",
"valeur_num": 5.0,
"anomalie": false,
"quality": "ok"
}
],
"biologie_discarded": [],
"imagerie": [],
"complications": [],
"alertes_codage": [
"QUALITE DEGRADEE : erreur RAG — codage sans référentiels",
"4 CMA probables détectées — impact potentiel sur le niveau de sévérité GHM",
"CMA niveau 3 : 'Sepsis' (A41.9) — sévérité non_evalue",
"CMA niveau 2 : 'Anémie' (D64.9) — sévérité non_evalue",
"CMA niveau 3 : 'Infection à Proteus vulgaris' (B96.4) — sévérité non_evalue",
"CMA niveau 2 : 'Hypochlorémie' (E87.8) — sévérité non_evalue",
"QC: DAS A41.9 (Sepsis) à reconsidérer — AUCUNE PREUVE CLINIQUE. Pas de mention de sepsis, de foyer infectieux systémique, ni de critères SIRS/qSOFA dans le dossier. La CRP élevée seule ne justifie pas un sepsis. Le diagnostic d'infection documenté est limité à une infection urinaire à Proteus (B96.4). Codage non justifié.",
"QC: DAS E87.8 (Hypochlorémie) à reconsidérer — ERREUR CRITIQUE : Chlore 110 [N: 135-145] = HYPOCHLORÉMIE (valeur BASSE), mais E87.8 code les 'autres anomalies de l'équilibre hydro-électrolytique'. Le code correct est E87.8 (acceptable) OU plus spécifiquement E87.6 (hypochlorémie). CEPENDANT : anomalie électrolytique mineure, sans mention de symptomatologie ou de traitement spécifique. Codage discutable. À justifier cliniquement ou supprimer si non pertinent pour la prise en charge.",
"QC: 🔴 ALERTE MAJEURE : Absence totale de diagnostic principal (DP). Le séjour doit avoir un DP justifiant l'hospitalisation. Candidats : infection urinaire à Proteus (N39.0 + B96.4) ? Aplasie médullaire (D61.9) ? À clarifier IMMÉDIATEMENT.",
"QC: 🔴 ALERTE MAJEURE : Triade anémie + leucopénie + thrombopénie sévères = APLASIE MÉDULLAIRE probable. Aucun code D61.x présent. Vérifier si diagnostic établi et coder en conséquence.",
"QC: 🟡 ALERTE MODÉRÉE : Justifications incomplètes pour A41.9 (sepsis) et E87.8 (hypochlorémie). Aucune preuve clinique documentée. Réviser ou supprimer.",
"QC: 🟡 ALERTE MODÉRÉE : Manque de codes associés potentiels : Z92.3 (transfusions), codes de complications si présentes, diagnostic principal manquant.",
"QC: 🟡 ALERTE MODÉRÉE : Créatinine 53 µmol/L (basse) + Chlore 110 (bas) = possible insuffisance rénale chronique ou hémodilution. À explorer pour justifier les anomalies biologiques.",
"QC: ⚠️ Durée séjour 3 jours : cohérente avec prise en charge d'infection aiguë ou complication hématologique.",
"RULE-DAS-TO-DP: DP absent → DAS A41.9 (Sepsis) promu en DP",
"DECISIONS[PDF]: 1 ligne(s)",
"DECISION: diagnostic_principal A41.9 promu en DP (RULE-DAS-TO-DP)",
"VETOS[PDF]: NEED_INFO (score=40)",
"VETO-02 [MEDIUM] diagnostics_associes[0]: DAS A41.9 sans preuve exploitable",
"VETO-02 [MEDIUM] diagnostics_associes[2]: DAS D69.9 sans preuve exploitable",
"VETO-02 [MEDIUM] diagnostics_associes[3]: DAS B96.4 sans preuve exploitable",
"VETO-02 [MEDIUM] diagnostics_associes[4]: DAS E87.8 sans preuve exploitable",
"Aucun DP extrait (ni Trackare ni CRH)"
],
"source_files": [],
"ghm_estimation": {
"cmd": "18",
"cmd_libelle": "Maladies infectieuses et parasitaires",
"type_ghm": "M",
"severite": 3,
"ghm_approx": "18M??3",
"cma_count": 3,
"cms_count": 0,
"alertes": []
},
"controles_cpam": [],
"veto_report": {
"verdict": "NEED_INFO",
"score_contestabilite": 40,
"issues": [
{
"veto": "VETO-02",
"severity": "MEDIUM",
"where": "diagnostics_associes[0]",
"message": "DAS A41.9 sans preuve exploitable",
"citation": "Principe de preuve : tout diagnostic/acte doit être étayé par une trace dans le dossier médical (Guide Méthodologique MCO)"
},
{
"veto": "VETO-02",
"severity": "MEDIUM",
"where": "diagnostics_associes[2]",
"message": "DAS D69.9 sans preuve exploitable",
"citation": "Principe de preuve : tout diagnostic/acte doit être étayé par une trace dans le dossier médical (Guide Méthodologique MCO)"
},
{
"veto": "VETO-02",
"severity": "MEDIUM",
"where": "diagnostics_associes[3]",
"message": "DAS B96.4 sans preuve exploitable",
"citation": "Principe de preuve : tout diagnostic/acte doit être étayé par une trace dans le dossier médical (Guide Méthodologique MCO)"
},
{
"veto": "VETO-02",
"severity": "MEDIUM",
"where": "diagnostics_associes[4]",
"message": "DAS E87.8 sans preuve exploitable",
"citation": "Principe de preuve : tout diagnostic/acte doit être étayé par une trace dans le dossier médical (Guide Méthodologique MCO)"
}
]
},
"completude": {
"checks": [
{
"code": "A41.9",
"libelle": "Sepsis",
"type_diag": "DP",
"items": [
{
"categorie": "biologie",
"element": "CRP",
"statut": "present_confirme",
"valeur": "89",
"importance": "obligatoire",
"impact_cpam": "Marqueur inflammatoire essentiel pour documenter un sepsis",
"confirmation_detail": "CRP > 50 mg/L confirme le syndrome inflammatoire"
},
{
"categorie": "biologie",
"element": "Leucocytes",
"statut": "present_confirme",
"valeur": "0.75",
"importance": "obligatoire",
"impact_cpam": "Leucocytose ou leucopénie attendue dans le sepsis",
"confirmation_detail": "Leucocytes hors norme (< 4 ou > 10 G/L) : compatible avec sepsis"
},
{
"categorie": "biologie",
"element": "Procalcitonine",
"statut": "absent",
"importance": "recommande",
"impact_cpam": "Marqueur spécifique d'infection bactérienne, renforce la preuve"
},
{
"categorie": "biologie",
"element": "Hémocultures",
"statut": "absent",
"importance": "recommande",
"impact_cpam": "Documentation bactériologique du sepsis"
}
],
"score": 70,
"verdict": "defendable",
"resume": "2/2 obligatoires (2 confirmés), 0/2 recommandés"
},
{
"code": "D64.9",
"libelle": "Anémie",
"type_diag": "DAS",
"items": [
{
"categorie": "biologie",
"element": "Hémoglobine",
"statut": "present_confirme",
"valeur": "7.4",
"importance": "obligatoire",
"impact_cpam": "Hémoglobine indispensable pour confirmer et qualifier une anémie",
"confirmation_detail": "Hémoglobine basse confirme l'anémie"
},
{
"categorie": "biologie",
"element": "Ferritine",
"statut": "absent",
"importance": "recommande",
"impact_cpam": "Permet de typer l'anémie (carentielle vs inflammatoire)"
},
{
"categorie": "biologie",
"element": "VGM",
"statut": "present",
"valeur": "90.7",
"importance": "recommande",
"impact_cpam": "Oriente l'étiologie (microcytaire/macrocytaire)"
}
],
"score": 85,
"verdict": "defendable",
"resume": "1/1 obligatoires (1 confirmé), 1/2 recommandés"
},
{
"code": "E87.8",
"libelle": "Hypochlorémie",
"type_diag": "DAS",
"items": [
{
"categorie": "biologie",
"element": "Sodium",
"statut": "present_non_confirme",
"valeur": "143",
"importance": "obligatoire",
"impact_cpam": "Ionogramme obligatoire pour justifier un trouble électrolytique",
"confirmation_detail": "Sodium ≥ 135 mmol/L : hyponatrémie non confirmée"
},
{
"categorie": "biologie",
"element": "Potassium",
"statut": "absent",
"importance": "obligatoire",
"impact_cpam": "Ionogramme obligatoire pour justifier un trouble électrolytique"
}
],
"score": 38,
"verdict": "fragile",
"resume": "1/2 obligatoires"
}
],
"score_global": 64,
"verdict_global": "fragile",
"documents_presents": [
"trackare"
],
"documents_manquants": []
},
"processing_time_s": 41.88,
"metrics": {
"das_total": 4,
"das_active": 4,
"das_excluded": 0,
"das_removed": 0,
"das_ruled_out": 0,
"das_no_code": 0,
"actes_total": 0,
"actes_with_code": 0,
"dp_has_code": true
},
"rules_runtime": {
"router_version": 1,
"mode": "strict",
"enabled_packs": [
"bio_electrolytes",
"decisions_core",
"vetos_core"
],
"always_on_rules": [],
"triggers_fired": [
"TRG-ELECTROLYTES"
]
}
}