# Dépannage

<details>

<summary>Le serveur Go ne fonctionne pas ?</summary>

#### Vérifiez l'état du serveur :

Ouvrez la page des paramètres de l'application et vérifiez si le serveur Go est en cours d'exécution :

<img src="https://2361277526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUO0RN9PzFLqAgLEwwaSn%2Fuploads%2FX80d6j7TFAjzMTeab7h2%2FServerWorking.png?alt=media&#x26;token=e60b541c-cae0-4284-b841-f3d91f7ddadb" alt="" data-size="original">

Si le serveur ne fonctionne pas, cliquez sur "Démarrer le serveur" pour le relancer :

<img src="https://2361277526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUO0RN9PzFLqAgLEwwaSn%2Fuploads%2FMjI08zRgoFmoW5fAMg9T%2FServerStopped.png?alt=media&#x26;token=d09bfa17-f7bd-4d4e-a10f-58e828a63705" alt="" data-size="original">

Si aucune des étapes précédentes n'aide à résoudre votre problème, veuillez [nous contacter](https://medomicslab.gitbook.io/medomics-docs/v1-fr/formulaires/contact-us).

</details>

<details>

<summary>Le serveur Go fonctionne correctement mais j'obtiens des erreurs en cliquant sur les boutons de traitement</summary>

Votre environnement Python pourrait avoir des problèmes.

#### Assurez-vous que le chemin de l'environnement Python de votre application est défini sur l'installation de *MEDomics* environnement python, sinon, vous pouvez le changer comme suit :

![](https://2361277526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUO0RN9PzFLqAgLEwwaSn%2Fuploads%2FDDr6czc6czpjgI7ryi5l%2FAppsPythonEnv.png?alt=media\&token=415d6485-3077-400a-819d-09a56be09f95)

Vous pouvez vérifier le chemin de votre environnement python en utilisant ce qui suit :

* **Pour Windows** : utilisez la commande `where python` et sélectionnez le chemin dans le `.medomics` dossier.
* **Pour Linux et MACOS** : utilisez la commande `whereis python` et sélectionnez celui qui se trouve dans `.medomics` dossier. Si vous ne voyez aucun chemin avec le `.medomics` dossier, trouvez-le manuellement et exportez‑le dans votre `PATH` variable d'environnement en utilisant la commande : `export PATH=/path/to/your/usr/.medomics/python/bin:$PATH`

Si aucune des étapes précédentes n'aide à résoudre votre problème, veuillez [nous contacter](https://medomicslab.gitbook.io/medomics-docs/v1-fr/formulaires/contact-us).

</details>

<details>

<summary>MacOS : l'application ne veut pas se lancer et/ou l'application semble boguée lors de l'ouverture de plusieurs <strong>onglets</strong>. <em>PROBLÈME CONNU POUR LES UTILISATEURS MAC DE L'UNIVERSITÉ DE SHERBROOKE AVEC L'ANTIVIRUS TRELLIX.</em></summary>

Description du problème :&#x20;

L'application semble bloquée au démarrage. Ou après le démarrage, lors de l'ouverture de plusieurs onglets (par ex. deux fichiers csv différents), l'application devient toute blanche.&#x20;

***

Cause probable :&#x20;

Si vous avez un antivirus institutionnel comme Trellix à l'Université de Sherbrooke, nous pensons que le pare‑feu de Trellix empêche MEDomicsLab de fonctionner correctement. Nous espérons que le problème sera résolu une fois que nous certifierons (signature des logiciels Mac) l'application MEDomicsLab auprès d'Apple (*travail en cours*).

***

Solution de contournement :&#x20;

Si vous rencontrez un problème similaire et que vous avez un antivirus installé sur votre ordinateur, nous recommandons de le désactiver lorsque vous utilisez MEDomicsLab. Pour les utilisateurs Mac de l'Université de Sherbrooke avec Trellix, une façon de désactiver momentanément les utilitaires de Trellix est :

1. Aller à *Réglages système*, *Confidentialité et sécurité,* *Accès complet au disque*.
2. Désactivez les six extensions suivantes : *fmpd*, *VShieldScanManager*, *VShieldScanner*, *masvc*, *TrellixEndpointSecurity*, *TrellixNetworkExtension*.
3. Redémarrez votre ordinateur.

Bien sûr, une fois que vous avez fini de travailler avec MEDomicsLab, nous vous recommandons de réactiver votre antivirus ! Pour les utilisateurs Mac de l'Université de Sherbrooke avec Trellix, cela signifie réactiver les six extensions ci‑dessus et redémarrer votre ordinateur.&#x20;

</details>

<details>

<summary>ImportError : impossible d'importer le nom 'dtreeviz' depuis 'dtreeviz.trees'</summary>

Cette erreur se produit lorsque la mauvaise version de [dtreeviz ](https://github.com/parrt/dtreeviz)est installée. Veuillez vous référer aux fichiers de dépendances dans notre [dépôt GitHub](https://github.com/MEDomics-UdeS/MEDomicsLab) pour installer la bonne version (v1.4.1 est généralement utilisée).

</details>

<details>

<summary>Colonnes manquantes dans les modules d'évaluation et d'application</summary>

Le message d'erreur apparaît typiquement comme `['column_1', 'column_2', 'column_3'] not in index`. Ce problème se produit lorsque les noms de colonnes dans le fichier utilisé pour l'entraînement du modèle contiennent des espaces (par exemple, "*column 1*" au lieu de "*column\_1*"). Pour éviter cela, évitez d'utiliser des noms de colonnes avec des espaces. Bien que le code devrait gérer cela automatiquement, veuillez [ouvrir une issue](https://github.com/MEDomics-UdeS/MEDomicsLab/issues/new/choose) sur notre GitHub si vous rencontrez cette erreur.

</details>

<details>

<summary>Processus arrêté avec le message toast : "<em>État de sortie 1</em>"</summary>

Cette erreur se produit généralement en raison d'une bibliothèque Python manquante (affichée comme un `ModuleNotFoundError`). Pour la résoudre, ouvrez d'abord la console (appuyez sur **CTRL + Shift + I**) et identifiez le nom du paquet manquant dans le message d'erreur complet. Ensuite, installez la version du paquet spécifiée dans le fichier de dépendances sur notre [dépôt GitHub](https://github.com/MEDomics-UdeS/MEDomicsLab). Pour une solution plus complète, comparez vos paquets installés avec ceux listés dans le fichier de dépendances sur [GitHub ](https://github.com/MEDomics-UdeS/MEDomicsLab)et installez les paquets manquants pour éviter cette erreur à l'avenir.

Si le paquet manquant n'est pas listé dans nos exigences GitHub, veuillez [nous contacter](https://medomicslab.gitbook.io/medomics-docs/v1-fr/formulaires/contact-us) ou [ouvrir une issue](https://github.com/MEDomics-UdeS/MEDomicsLab/issues/new/choose) afin que nous puissions l'ajouter.

</details>

<details>

<summary>Le modèle LightGBM met une éternité à s'entraîner</summary>

C'est un problème courant sur Ubuntu qui survient lors de l'entraînement d'un modèle LightGBM en utilisant `n_jobs=-1`. Lorsque vous définissez `n_jobs=-1`, le processus peut parfois se bloquer ou ralentir en raison de la manière dont la bibliothèque gère les threads parallèles sur certains systèmes. Voici quelques raisons courantes de ce comportement :

1. **Saturation des threads CPU** : Définir `n_jobs=-1` indique à LightGBM d'utiliser tous les cœurs CPU disponibles. Sur les systèmes Linux, en particulier avec un grand nombre de cœurs, cela peut submerger le planificateur CPU, entraînant une gestion inefficace des threads, surtout si d'autres processus s'exécutent simultanément.
2. **Configuration OpenMP** : LightGBM utilise OpenMP pour le parallélisme, et certaines configurations d'OpenMP sur Linux peuvent entraîner des blocages (deadlocks) ou une contention excessive des threads. Ce problème peut être spécifique à la façon dont OpenMP gère les threads dans certaines distributions Linux, y compris Ubuntu. Plus de détails ici : <https://lightgbm.readthedocs.io/en/latest/FAQ.html#lightgbm-hangs-when-multithreading-openmp-and-using-forking-in-linux-at-the-same-time>
3. **Bande passante mémoire et latence** : Utiliser tous les cœurs CPU peut conduire à une forte consommation de bande passante mémoire. Si LightGBM nécessite plus de mémoire par thread que disponible, cela peut ralentir significativement l'entraînement. Réduire le paramètre `n_jobs` diminue le nombre de threads simultanés et peut aider à gérer la charge mémoire.
4. **Compatibilité avec des bibliothèques spécifiques** : Le multithreading de LightGBM peut ne pas fonctionner correctement avec toutes les versions des bibliothèques système sur Ubuntu, telles que `libgomp`  (GNU OpenMP). Parfois, la mise à niveau ou la rétrogradation de certaines bibliothèques (par ex., `libgomp1`) peut résoudre ce problème.

#### Solutions :

* **Limiter `n_jobs`** : Définissez `n_jobs` sur un nombre plus petit (par ex., 4 ou 8), ce qui donne souvent de bonnes performances sans surcharger le système.
* **Mettre à jour/rétrograder les bibliothèques système** : Mettez à jour vos bibliothèques OpenMP.

Vous pouvez tester différentes valeurs de `n_jobs` pour trouver le paramètre optimal, qui équilibre vitesse et stabilité.

</details>

<details>

<summary>"ValueError: The feature names should match those that were passed during fit."</summary>

Cette erreur indique que les données de test manquent de caractéristiques présentes dans les données d'entraînement, ou que l'ordre diffère après le prétraitement. Dans MEDomics, cette erreur se produit généralement lorsque *feature\_selection* est activé dans le nœud Clean.

Un moyen de le corriger est de définir le *feature\_selection\_estimator* sur autre chose que "lightgbm". Plus de détails sont disponibles [ici](https://github.com/pycaret/pycaret/issues/4051).

Si la correction précédente ne fonctionne pas pour vous, veuillez [nous contacter](https://medomicslab.gitbook.io/medomics-docs/v1-fr/formulaires/contact-us).

</details>

<details>

<summary>Estimateur <em>....</em> Non disponible.</summary>

**Se produit lors de l'utilisation de&#x20;*****XGBoost*****&#x20;ou&#x20;*****catboost.***

L'erreur survient parce que la bibliothèque n'est pas installée ou configurée dans votre environnement.

**Solution** : Installez la bibliothèque manquante en utilisant pip, par exemple :

```bash
pip install catboost
```

**Cependant**, vous devez installer la bibliothèque manquante dans le Python inclus de MEDomicsLab dans votre dossier utilisateur, remplacez `YourUsername` par le chemin complet vers votre exécutable Python lors de l'exécution de la commande pip. Voici un exemple :

1. Localisez votre exécutable Python inclus (par ex., `C:\Users\<YourUsername>\.medomics\python\python.exe`).
2. Exécutez la commande suivante (en supposant que *catboost* est le paquet manquant ) :

```bash
C:\Users\<YourUsername>\.medomics\python\python.exe -m pip install catboost
```

Cela garantit que la bibliothèque est installée dans l'environnement Python de MEDomicsLab.

</details>

<details>

<summary>Erreur : Impossible d'ouvrir dans Visual Studio Code</summary>

Cette erreur est rencontrée lors de la tentative d'ouverture d'un notebook Jupyter avec VSCode :

&#x20;                                               <img src="https://2361277526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FUO0RN9PzFLqAgLEwwaSn%2Fuploads%2FUzzdJAqrWb9RtZBuVHup%2FGenerateNotebook.png?alt=media&#x26;token=c02bf0ef-8f82-4577-a36a-78481d296322" alt="" data-size="original">

La cause est simplement la commande "*code*" manquante. Suivez les instructions [ici ](https://stackoverflow.com/questions/29955500/code-is-not-working-in-on-the-command-line-for-visual-studio-code-on-os-x-ma)pour l'ajouter.

</details>

<details>

<summary>Dépannage Superset</summary>

Une erreur courante lors du lancement de Superset est `error: Command '['/Users/.../medomics-platform/superset_env/bin/python', '-m', 'pip', 'install', '--prefer-binary', 'apache-superset==4.1.1', 'flask-cors==5.0.0', 'marshmallow==3.26.1', 'psycopg2-binary==2.9.9', 'wtforms==2.3.3']' returned non-zero exit status 1.`

La première solution potentielle est d'exécuter la commande manuellement depuis le terminal :

```
[Chemin vers le python de superset indiqué dans le message d'erreur] -m pip install --prefer-binary apache-superset==4.1.1 flask-cors==5.0.0 marshmallow==3.26.1 psycopg2-binary==2.9.9 wtforms==2.3.3 
```

Si l'erreur persiste, cela signifie que les outils de compilation sont manquants, et vous pouvez les installer comme suit :

* MacOS :

```
xcode-select --install
```

* Ubuntu

```
sudo apt install build-essential
```

* Windows : Téléchargez et installez les outils de compilation [ici](https://learn.microsoft.com/en-us/cpp/build/building-on-the-command-line?view=msvc-170#download-and-install-the-tools).

</details>
