Files
t2a_v2/config/reference_ranges.yaml
dom 909e051cc9 feat: architecture multi-modèles LLM + quality engine + benchmark
- Multi-modèles : 4 rôles LLM (coding=gemma3:27b-cloud, cpam=gemma3:27b-cloud,
  validation=deepseek-v3.2:cloud, qc=gemma3:12b) avec get_model(role)
- Prompts externalisés : 7 templates dans src/prompts/templates.py
- Cache Ollama : modèle stocké par entrée (migration auto ancien format)
- call_ollama() : paramètre role= (priorité: model > role > global)
- Quality engine : veto_engine + decision_engine + rules_router (YAML)
- Benchmark qualité : scripts/benchmark_quality.py (A/B, métriques CIM-10)
- Fix biologie : valeurs qualitatives (troponine négative) non filtrées
- Fix CPAM : gemma3:27b-cloud au lieu de deepseek (JSON tronqué par thinking)
- CPAM max_tokens 4000→6000, viewer admin multi-modèles
- Benchmark 10 dossiers : 100% DAS valides, 10/10 CPAM, 243s/dossier

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 00:21:09 +01:00

31 lines
1.2 KiB
YAML

# Références biologiques (fallback) pour règles de qualité (VETO-09 / ruled_out)
# Ordre de priorité recommandé:
# 1) Normes du document (ex: "[N: 135-145]")
# 2) Fallback ci-dessous (par bande d'âge)
# 3) Safe zones conservatrices si âge inconnu (évite les faux "barrés")
version: 1
age_bands:
adult_min_years: 18
fallback_ranges:
adult:
platelets: { low: 150, high: 450, unit: "G/L" }
sodium: { low: 135, high: 145, unit: "mmol/L" }
potassium: { low: 3.5, high: 5.0, unit: "mmol/L" }
# Pédiatrie: à affiner par tranches d'âge si besoin.
# NB: pour les décisions "ruled_out" avec âge inconnu, on applique plutôt les safe zones.
child:
platelets: { low: 150, high: 450, unit: "G/L" }
sodium: { low: 135, high: 145, unit: "mmol/L" }
potassium: { low: 3.5, high: 5.0, unit: "mmol/L" }
# Seuils "safe" quand l'âge n'est pas connu (plus conservateurs que les bornes normales)
safe_zones_unknown_age:
platelets_ruled_out_low: 170 # si PLT >= 170 -> thrombopénie ruled_out
sodium_ruled_out_low: 138 # si Na >= 138 -> hyponatrémie ruled_out
potassium_ruled_out_high: 4.9 # si K <= 4.9 -> hyperkaliémie ruled_out
potassium_ruled_out_low: 3.7 # si K >= 3.7 -> hypokaliémie ruled_out