File size: 4,294 Bytes
1bca98b
 
c9e8958
 
 
1bca98b
 
c9e8958
1bca98b
 
67df1ef
c9e8958
67df1ef
c9e8958
67df1ef
c9e8958
67df1ef
c9e8958
67df1ef
 
 
 
 
c9e8958
67df1ef
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c9e8958
 
67df1ef
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c9e8958
67df1ef
 
 
 
 
c9e8958
67df1ef
c9e8958
67df1ef
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c9e8958
 
67df1ef
 
 
 
 
 
 
 
 
 
 
 
 
 
c9e8958
67df1ef
 
 
 
 
 
 
 
 
 
 
 
 
 
c9e8958
67df1ef
c9e8958
67df1ef
 
 
 
 
 
 
c9e8958
 
67df1ef
 
 
 
 
 
 
c9e8958
67df1ef
c9e8958
67df1ef
c9e8958
67df1ef
 
 
 
 
 
 
 
c9e8958
67df1ef
c9e8958
67df1ef
 
 
 
c9e8958
67df1ef
c9e8958
67df1ef
c9e8958
67df1ef
 
 
 
 
 
 
 
c9e8958
67df1ef
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
---
title: MedWin Analyzer
emoji: 🏥
colorFrom: blue
colorTo: purple
sdk: docker
pinned: false
license: mit
---

# MedWin-Analyzer - Hugging Face Space

Ce repository contient une application FastAPI déployée sur Hugging Face Spaces pour l'analyse de rapports médicaux.

## 🚀 Modèles Utilisés

L'application utilise trois modèles hébergés sur Hugging Face :

1. **HendSta/analyse_medicale** - Modèle d'analyse médicale pour la classification des paramètres
2. **HendSta/analyse_row** - Modèle d'analyse de risque pour évaluer les niveaux de risque
3. **HendSta/biomistral-finetuned-fullv3** - Modèle LLM pour l'analyse textuelle avancée

## 📋 Endpoints Disponibles

### 1. Health Check
```
GET /health
```
Vérifie que tous les modèles sont chargés correctement.

**Réponse :**
```json
{
  "status": "healthy",
  "models_loaded": {
    "analyse_medicale_model": true,
    "analyze_risk_model": true,
    "llm_model": true,
    "llm_tokenizer": true
  },
  "message": "Tous les modèles sont chargés"
}
```

### 2. Prédiction Simple
```
POST /predict
```
Effectue une prédiction sur un seul paramètre.

**Body :**
```json
{
  "CodeParametre": "glucose",
  "ValeurActuelle": 120.0,
  "Unite": "mg/dL",
  "ValeursUsuelles": "70-100",
  "ValeurUsuelleMin": 70.0,
  "ValeurUsuelleMax": 100.0,
  "ValeurAnterieure": 110.0,
  "DateAnterieure": "01/01/2024"
}
```

### 3. Upload PDF/XML
```
POST /upload-pdf
```
Traite un fichier PDF ou XML et retourne l'analyse de tous les paramètres.

**Body :** `multipart/form-data` avec le fichier

### 4. Analyse de Risque
```
POST /analyze-risk
```
Analyse le niveau de risque d'un paramètre médical.

**Body :**
```json
{
  "CodeParametre": "glucose",
  "ValeurActuelle": 120.0,
  "Unite": "mg/dL",
  "ValeursUsuelles": "70-100",
  "ValeurUsuelleMin": 70.0,
  "ValeurUsuelleMax": 100.0,
  "ValeurAnterieure": 110.0,
  "CodParametre": "GLU"
}
```

**Réponse :**
```json
{
  "parametre": "glucose",
  "valeur_actuelle": 120.0,
  "unite": "mg/dL",
  "valeur_anterieure": 110.0,
  "valeurs_usuelles": "70-100",
  "statut_risque": "ÉLEVÉ",
  "degre_risque": "Modéré",
  "tendance": "En hausse",
  "conseil": "Surveillance recommandée. Le glucose est élevé avec un risque modéré."
}
```

### 5. Analyse LLM
```
POST /llm-analysis
```
Utilise le modèle LLM pour fournir une analyse textuelle détaillée.

**Body :**
```json
{
  "CodeParametre": "glucose",
  "ValeurActuelle": 120.0,
  "Unite": "mg/dL",
  "ValeursUsuelles": "70-100",
  "ValeurAnterieure": 110.0
}
```

**Réponse :**
```json
{
  "parametre": "glucose",
  "analyse_llm": "Analyse détaillée générée par le LLM...",
  "prompt_utilise": "Prompt utilisé pour la génération"
}
```

## 🔧 Configuration

### Variables d'Environnement
- `HF_TOKEN` : Token Hugging Face (optionnel pour les modèles publics)

### Dépendances
Voir `requirements.txt` pour la liste complète des dépendances.

## 🚀 Déploiement

Cette application est configurée pour être déployée automatiquement sur Hugging Face Spaces.

### Structure des Fichiers
```
MedWin-Analyzer/
├── app.py              # Application FastAPI principale
├── requirements.txt    # Dépendances Python
├── Dockerfile         # Configuration Docker
└── README.md          # Documentation
```

## 📊 Utilisation

1. **Démarrage automatique** : Les modèles sont chargés automatiquement au démarrage
2. **Health check** : Utilisez `/health` pour vérifier l'état des modèles
3. **Upload de fichiers** : Supporte les formats PDF et XML
4. **Analyse en temps réel** : Tous les endpoints fournissent des réponses immédiates

## 🔍 Dépannage

### Erreurs Courantes

1. **Modèles non chargés** : Vérifiez la connexion internet et les permissions
2. **Erreur de format** : Assurez-vous que les fichiers PDF/XML sont valides
3. **Timeout** : Les modèles LLM peuvent prendre du temps pour la première génération

### Logs
Les logs de chargement des modèles sont affichés au démarrage de l'application.

## 📝 Notes

- Les modèles sont téléchargés automatiquement depuis Hugging Face au premier démarrage
- Le cache des modèles est conservé pour les démarrages suivants
- L'application gère automatiquement les erreurs de chargement des modèles