backup: snapshot post-démo GHT 2026-05-19
Backup état complet après enregistrement vidéo démo de bout en bout. À utiliser comme point de référence pour la consolidation post-démo. Changements majeurs de la session 18-19 mai : - AIVA-URGENCE : page autonome avec preset URL + auto-focus chain - Workflow Demo_urgence_3_db : merge linux_db + steps AIVA + pause humaine NoMachine - Bypass LLM (static_result / static_text) dans replay_engine pour démos déterministes sans appel Ollama - Fix api_stream:3013 — replay_paused au premier polling /next - dag_execute : lift duration_ms vers top-level pour wait runtime - NPM bypass auth /aiva-urgence/ via location ^~ (proxy_host/10.conf hors git) - scripts/cancel-replays.sh — workaround Stop VWB qui ne purge pas la queue Anchors visuels (468) forcés dans le commit pour garantir restorabilité. DB workflows actuelle + ~12 .bak DB de la journée incluses. Sujets identifiés pour consolidation post-démo (TODO) : 1. Bug VWB recapture anchor ne régénère pas le PNG 2. Léa client accumule état mémoire (restart périodique requis) 3. Stop VWB ne purge pas la queue serveur (lien manquant vers /replay/cancel) 4. Bug coord client mss tronqué 2560x60 → mapping Y cassé 5. delay_before/delay_after ignorés au runtime (fix partiel duration_ms) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
40
demo/facturation_urgences/run_qwen3_only.py
Normal file
40
demo/facturation_urgences/run_qwen3_only.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Re-tourner qwen3-next:80b-cloud uniquement, et merger dans resultats_v2.json."""
|
||||
|
||||
import json
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
sys.path.insert(0, str(Path(__file__).parent))
|
||||
from run_simulation_v2 import run_one_model, fmt_decision, stats_for_results # noqa: E402
|
||||
|
||||
MODEL = "qwen3-next:80b-cloud"
|
||||
|
||||
results = run_one_model(MODEL)
|
||||
s = stats_for_results(results)
|
||||
print(f"\nRésultat : {s['correct']}/{s['n']} ({100*s['accuracy']:.0f} %)")
|
||||
print(f" Simple : {s['by_type'].get('simple', (0, 0))}")
|
||||
print(f" Complexe : {s['by_type'].get('complexe', (0, 0))}")
|
||||
print(f" Borderline: {s['by_type'].get('borderline', (0, 0))}")
|
||||
print(f" Confiance : {s['confiance_distribution']}")
|
||||
print(f" Latence : {s['avg_latency_s']:.1f} s/cas")
|
||||
print(f" Parse err : {s['parse_errors']}")
|
||||
|
||||
# Merger dans resultats_v2.json
|
||||
results_path = Path(__file__).parent / "resultats_v2.json"
|
||||
all_data = json.loads(results_path.read_text(encoding="utf-8"))
|
||||
all_data[MODEL] = [
|
||||
{
|
||||
"id": r["cas"]["id"],
|
||||
"titre": r["cas"]["titre"],
|
||||
"type": r["cas"]["type"],
|
||||
"verite_terrain": r["cas"]["verite_terrain"],
|
||||
"criteres_attendus": r["cas"]["criteres_cles"],
|
||||
"prediction": r["out"],
|
||||
"decision": r["decision"],
|
||||
"match": r["match"],
|
||||
}
|
||||
for r in results
|
||||
]
|
||||
results_path.write_text(json.dumps(all_data, ensure_ascii=False, indent=2), encoding="utf-8")
|
||||
print(f"\nMerge effectué dans {results_path}")
|
||||
Reference in New Issue
Block a user