2026-04-24 10:39:05 +02:00
2026-04-24 10:39:05 +02:00
2026-04-24 10:39:05 +02:00
2026-04-24 10:39:05 +02:00
2026-04-24 10:39:05 +02:00
2026-04-24 10:39:05 +02:00
2026-04-24 10:39:05 +02:00
2026-04-24 10:39:05 +02:00

Extraction OGC — Qwen3-VL 235B

Extraction automatique des fiches OGC (Organisme de Gestion du Contrôle) vers Excel. Modèle : qwen3-vl:235b-cloud (vision multimodal via Ollama).


Structure du dossier

testExtraction2/
├── extraction.py          ← script principal
├── README.md              ← ce fichier
├── PLAN_EXTRACTION.md     ← documentation technique détaillée
├── scanOgc/               ← 12 PDFs source (OGC 358 à 429)
└── output/
    ├── extraction_ogc.xlsx      ← résultat (4 onglets)
    └── extraction_ogc_raw.json  ← données brutes pour debug

Lancement

cd testExtraction2

# Tous les fichiers
python3 extraction.py

# Un seul fichier (relance partielle — fusionne avec le cache)
python3 extraction.py "358"

Ce que fait le script

  1. Convertit chaque page PDF en image (200 DPI)
  2. Envoie l'image à qwen3-vl:235b-cloud pour identifier le type de page
  3. Ignore la page "Séjour d'hospitalisation complète" (bloc manuscrit — phase 2)
  4. Pour chaque autre page, extrait les données en JSON via un prompt dédié
  5. Assemble tout en Excel (4 onglets)

Types de pages traités

Type Action
FICHE_RECUEIL Extrait (données séjour, codages, GHM/GHS)
ELEMENTS_PREUVE Extrait (tableau 17 documents)
FICHE_ADMIN_2_2 Extrait (GHS final, décision concertation)
FICHE_ADMIN_1_2 Extrait (argumentaire imprimé complet)
SEJOUR_MANUSCRIT Ignoré — commentaires manuscrits (phase 2)
FICHE_CONCERTATION_VIDE Ignoré — page vide

Sortie Excel (4 onglets)

Données principales — 1 ligne par OGC, tous les champs scalaires
Diagnostics — 1 ligne par code (DP/DR/DAS), établissement + recodage
Actes — 1 ligne par acte CCAM, établissement + recodage
Eléments de preuve — 1 ligne par type de document × OGC


Particularités techniques

  • Thinking mode : qwen3-vl génère ~4000 tokens de réflexion interne avant la réponse. num_predict=8192 est obligatoire pour avoir assez de budget tokens.
  • Rate limit : pause de 2s entre chaque requête + retry automatique sur 429 (attente 60s × tentative).
  • Ordre des pages variable : identification par titre, pas par numéro de page.
  • Relance partielle : python3 extraction.py "XXX" charge le cache JSON existant et ne réécrase que le fichier relancé.

Prérequis

pip install pdf2image pillow pandas openpyxl requests
# Ollama doit tourner (ollama serve)
# Modèle requis : qwen3-vl:235b-cloud
Description
No description provided
Readme 387 KiB
Languages
Python 100%