PHASE 1
Mise à jour et Entraînement (Flux Synchrone)
Respect des normes UML : Notez l'usage strict des traits pleins pour les requêtes (Control Flow) et des traits pointillés pour les retours de données (Data Flow).
sequenceDiagram
autonumber
actor Admin as Administrateur
participant UI as Interface Web
participant API as Backend API
participant DB as Base de Données
participant IA as Module Training IA
%% Pré-condition visuelle
Note over Admin, UI: [Ref: Authentification System]
L'Admin doit posséder un Token valide
Admin->>UI: Cliquer "Mettre à jour & Entraîner"
activate UI
UI->>API: POST /api/train-model
activate API
%% Interaction Base de données
rect rgb(240, 248, 255)
Note right of API: Persistance des nouvelles données
API->>DB: INSERT (New Data)
activate DB
DB-->>API: Confirmation (Success)
deactivate DB
API->>DB: SELECT (All Training Data)
activate DB
DB-->>API: DataSet Complet (JSON/CSV)
deactivate DB
end
%% Interaction Module IA
API->>IA: initTraining(DataSet)
activate IA
IA->>IA: Pré-traitement & Normalisation
IA->>IA: Exécution Algorithme (Epochs)
IA-->>API: Modèle Serialisé (.pkl/.h5)
deactivate IA
API-->>UI: Statut 200 OK (Entraînement terminé)
deactivate API
UI-->>Admin: Afficher notification "Succès"
deactivate UI
PHASE 2
Processus de Diagnostic (Inférence)
Respect des normes UML : Utilisation d'un bloc alt (alternative) pour gérer le cas où l'IA ne trouve pas de correspondance fiable (Gestion d'erreur).
sequenceDiagram
autonumber
actor Doc as Docteur
participant App as Application Client
participant Engine as Moteur Inférence IA
Note over Doc, App: [Ref: Authentification]
Session active requise
Doc->>App: Saisir symptômes (Formulaire)
activate App
Doc->>App: Valider le diagnostic
App->>Engine: predict(SymptômesVectorisés)
activate Engine
Engine->>Engine: Chargement Modèle
Engine->>Engine: Calcul Probabilités (Softmax)
%% Bloc Alternative UML (Logique conditionnelle)
alt Confiance > Seuil (ex: 50%)
Engine-->>App: Liste Maladies {Nom, Score}
else Confiance Insuffisante
Engine-->>App: Exception: "Diagnostic non concluant"
end
deactivate Engine
App-->>Doc: Affichage Résultats ou Avertissement
deactivate App