- Configuration de l'Environnement et Démarrage Rapide
Avant d'utiliser MedGemma-X, assurez-vous que votre système répond aux prérequis suivants :
- Système d'exploitation : Linux (Ubuntu 18.04+ ou CentOS 7+)
- GPU : Carte graphique NVIDIA (conseillée : RTX 3080 ou supérieur)
- Mémoire vidéo : Au moins 8 Go de VRAM
- Mémoire vive : 16 Go de RAM ou plus
- Stockage : 20 Go d'espace libre
Procédure de lancement rapide : Ouvrez un terminal et exécutez la commande suivante pour démarrer le service :
cd /root/demarrage
bash script_initialisation.sh
Ce script d'amorçage effectue automatiquement :
- La vérification de l'environnement Python et des dépendances.
- Le test de l'état du GPU et de CUDA.
- Le chargement du modèle MedGemma-1.5-4b-it.
- Le lancement de l'interface web Gradio.
- L'exécution en arrière-plan avec journalisation.
Un message de confirmation apparaîtra :
Écoute sur l'URL locale : http://0.0.0.0:7860
Service MedGemma-X actif. Accédez via votre navigateur à l'adresse indiquée.
- Navigation dans l'Interface Utilisateur
Après le démarrage, accédez à l'interface via http://ADRESSE_IP_SERVEUR:7860.
La vue principale comporte plusieurs zones fonctionnelles :
- Zone de dépôt d'images : Permet le glisser-déposer des fichiers radiologiques.
- Sélection de tâches : Liste des protocoles d'analyse prédéfinis.
- Champ de requête personnalisé : Saisie de consignes spécifiques.
- Bouton d'exécution : Lance le processus d'analyse.
- Affichage des résultats : Présente le rapport d'analyse finalisé.
Pour une première prise en main, utilisez les images de démonstration disponibles dans le répertoire /root/demarrage/exemples/.
- Chargement et Préparation des Images
MedGemma-X accepte plusieurs formats d'imagerie :
- DICOM (.dcm) – Standard en imagerie médicale.
- JPEG (.jpg, .jpeg) – Format photo courant.
- PNG (.png) – Format sans perte.
- NIfTI (.nii) – Utilisé en neuro-imagerie.
Le système applique une préparation automatique aux images chargées, incluant la normalisation du format, l'ajustement de la taille, l'optimisation du contraste et la réduction du bruit.
- Définition de la Tâche et Interrogation
Deux méthodes permettent de définir l'objectif de l'analyse :
a) Utilisation de tâches prédéfinies
Des modèles intégrés couvrent des scénarios courants :
- Détection d'anomalies sur les radiographies thoraciques.
- Dépistage et description des nodules pulmonaires.
- Analyse de la silhouette cardiaque.
- Évaluation des fractures costales.
- Identification des signes de pneumonie.
b) Interrogation par requête libre
Pour des besoins spécifiques, formulez votre demande en langage naturel. Des exemples efficaces :
- "Décrivez les opacités anormales dans les champs pulmonaires."
- "Vérifiez si la taille cardiaque est dans les normes."
- "Évaluez la présence de signes de pneumothorax."
- "Détaillez l'intégrité des structures osseuses."
- Lancement de l'Analyse et Suivi en Temps Réel
Après avoir cliqué sur le bouton d'exécution, le processsu suit ces étapes :
- Encodage de l'image : Conversion de l'image en représentation vectorielle.
- Compréhension multimodale : Raisonnement basé sur les données visuelles et les consignes textuelles.
- Extraction de caractéristiques : Repérage des structures anatomiques et des anomalies potentielles.
- Production du rapport : Organisation des constats en une description structurée.
Vous pouvez observer la progression avec les commandes suivantes :
# Journal d'activité en direct
tail -f /root/demarrage/journaux/app_gradio.log
# Surveillance de la charge GPU
nvidia-smi
# Vue d'ensemble des ressources système
htop
La durée de traitement varie généralement de 10 à 30 secondes par image, selon la complexité et la configuration matérielle.
- Consultation et Export du Rapport
L'analyse produit un rapport diagnostique détaillé. Sa structure typique comprend :
- Technique d'examen : Paramètres d'acquisition et qualité de l'image.
- Comparaison : Mise en relation avec un examen antérieur si disponible.
- Observations : Description détaillée par zone anatomique.
- Conclusion / Impression : Synthèse des découvertes clés.
- Recommandations : Suggestion d'examens complémentaires ou de suivi.
Options d'exportation
- Copie texte : Coller le contenu du rapport ailleurs.
- Génération PDF : Créer un document PDF standardisé.
- DICOM SR : Générer un rapport structuré DICOM pour intégration dans un PACS.
- Interface API : Récupérer les données structurées via une requête.
# Exemple de récupération des données via l'API (Python)
import requests
requete = requests.get('http://localhost:7860/api/resultat_final')
donnees_rapport =requete.json()
# Écriture dans un fichier
with open('compte_rendu_medical.pdf', 'wb') as document:
document.write(donnees_rapport['contenu_pdf'])
- Entretien du Système et Résolution de Problèmes
Commandes de maintenance courante
# Vérification de l'état du service
bash /root/demarrage/etat_service.sh
# Arrêt propre du service
bash /root/demarrage/arret_service.sh
# Consultation du fichier journal
less /root/demarrage/journaux/app_gradio.log
Solutions pour les incidents fréquents
Incident : Échec du démarrage du service
# Identifier les processus utilisant le port 7860
ss -tlnp | grep 7860
# Terminer le processus conflictuel
kill -9 $(cat /root/demarrage/pid_app_gradio)
Incident : Mémoire GPU insuffisante
# Tenter de libérer la mémoire cache du GPU
nvidia-smi --gpu-reset
# Redémarrer le démon de persistance NVIDIA
systemctl restart nvidia-persistenced
Incident : Lenteur de l'analyse
# Vérifier la disponibilité et le chargement de CUDA
nvidia-smi
python3 -c "import torch; print(torch.cuda.is_available())"
Automatisation avec systemd (recommandé)
# Créer un fichier de service
sudo nano /etc/systemd/system/medgemma-x.service
# Contenu type :
[Unit]
Description=Service d'Imagerie Médicale MedGemma-X
After=network.target
[Service]
User=root
WorkingDirectory=/root/demarrage
ExecStart=/bin/bash script_initialisation.sh
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
# Activer et démarrer le service
sudo systemctl enable medgemma-x
sudo systemctl start medgemma-x