Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(1) Lancer en 1 clic une liste d'enrichissements #2186

Closed
touv opened this issue Oct 15, 2024 Discussed in #2019 · 16 comments · Fixed by #2313 or #2337
Closed

(1) Lancer en 1 clic une liste d'enrichissements #2186

touv opened this issue Oct 15, 2024 Discussed in #2019 · 16 comments · Fixed by #2313 or #2337
Assignees
Labels
Feature Request Souhait ou besoin à étudier pour un prochain développement 👷‍♂️ Ready to go Le besoin ou le problème est validé, il prêt à être développé..

Comments

@touv
Copy link
Contributor

touv commented Oct 15, 2024

Discussed in #2019

Originally posted by camilledesalabert June 3, 2024
L'idée serait de pouvoir lancer en 1 action unique une longue liste d'enrichissements (cas d'usage : import d'un modèle sur un nouveau corpus et besoin de relancer tous les enrichissements sans qu'il soit nécessaire de les modifier)

@github-actions github-actions bot added the Triage Nouveau problème ou besoin à étudier et à classer label Oct 15, 2024
@yannguillemin yannguillemin added 👷‍♂️ Ready to go Le besoin ou le problème est validé, il prêt à être développé.. Feature Request Souhait ou besoin à étudier pour un prochain développement and removed Triage Nouveau problème ou besoin à étudier et à classer labels Oct 16, 2024
@Alexmarmelab
Copy link
Collaborator

Alexmarmelab commented Oct 28, 2024

Solution
Dans la page qui liste les enrichissements : ajouter un bouton "Tout lancer".
Au clic sur ce bouton, tous les enrichissements passent au statut "En attente" et lancer les enrichissements un à un (même ceux qui ont déjà été lancé).

Hors scope :

Image

@Alexmarmelab Alexmarmelab changed the title Lancer en 1 clic une liste d'enrichissements (1) Lancer en 1 clic une liste d'enrichissements Dec 16, 2024
@ThieryMichel ThieryMichel self-assigned this Dec 18, 2024
@eonm-pro
Copy link
Collaborator

eonm-pro commented Jan 6, 2025

@arnault-dev

  • Fonctionne bien avec une liste d'enrichissements avancés.
  • Ne fonctionne pas avec les enrichissements standards. La console du navigateur affiche le message suivant avec une erreur 500 : {"error":"Circular dependency detected"}. Pour ce dernier cas j'ai également testé avec un seul enrichissement (impossible d'avoir de dépendance circulaire dans ce cas).

Image

Image

Remarques qui dépassent le scope de la carte :

  • Lorsqu'on annule un "batch" d'enrichissement faut-il que l'ensemble des enrichissements non lancés soient annulés, dans l'implémentation actuelle seul l'enrichissement en cours d'exécution est arrêté.

@AnaelKremer AnaelKremer self-assigned this Jan 7, 2025
@Bonvallot
Copy link
Collaborator

Bonvallot commented Jan 7, 2025

J'ai beau cliquer sur LANCER TOUT rien ne se passe
https://instance-globale-14071.lodex-dev.inist.fr/instance/test-vbo-presta/admin#/data/enrichment

Peut-on faire la même chose pour les précalculs ?

Peut-on en sélectionner plusieurs enrichissements et ne lancer que ceux là ?

@eonm-pro eonm-pro self-assigned this Jan 7, 2025
@AnaelKremer
Copy link
Collaborator

j'ai créé une autre instance où effectivement ce bouton ne marche pas

 [anothertest71] 2025-01-07T13:02:37.511Z info: /api/enrichment/launchAll {"authorization":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwicm9sZSI6ImFkbWluIiwiZXhwIjoxNzM2MjkwNzU0LCJpYXQiOjE3MzYyNTQ3NTN9.A1bjoX5SxZGLnwsil2Rulig5wKRX1PkPUdUXkUeWO4s","method":"POST","remoteIP":"::ffff:172.17.1.4","status":500,"timestamp":"2025-01-07T13:02:37.511Z","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}
 [anothertest71] 2025-01-07T13:02:38.089Z info: /api/enrichment/launchAll {"authorization":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwicm9sZSI6ImFkbWluIiwiZXhwIjoxNzM2MjkwNzU0LCJpYXQiOjE3MzYyNTQ3NTN9.A1bjoX5SxZGLnwsil2Rulig5wKRX1PkPUdUXkUeWO4s","method":"POST","remoteIP":"::ffff:172.17.1.4","status":500,"timestamp":"2025-01-07T13:02:38.089Z","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}
 [anothertest71] 2025-01-07T13:02:38.342Z info: /api/enrichment/launchAll {"authorization":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwicm9sZSI6ImFkbWluIiwiZXhwIjoxNzM2MjkwNzU0LCJpYXQiOjE3MzYyNTQ3NTN9.A1bjoX5SxZGLnwsil2Rulig5wKRX1PkPUdUXkUeWO4s","method":"POST","remoteIP":"::ffff:172.17.1.4","status":500,"timestamp":"2025-01-07T13:02:38.342Z","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}
 [anothertest71] 2025-01-07T13:02:38.518Z info: /api/enrichment/launchAll {"authorization":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwicm9sZSI6ImFkbWluIiwiZXhwIjoxNzM2MjkwNzU0LCJpYXQiOjE3MzYyNTQ3NTN9.A1bjoX5SxZGLnwsil2Rulig5wKRX1PkPUdUXkUeWO4s","method":"POST","remoteIP":"::ffff:172.17.1.4","status":500,"timestamp":"2025-01-07T13:02:38.518Z","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}
 [anothertest71] 2025-01-07T13:02:38.743Z info: /api/enrichment/launchAll {"authorization":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwicm9sZSI6ImFkbWluIiwiZXhwIjoxNzM2MjkwNzU0LCJpYXQiOjE3MzYyNTQ3NTN9.A1bjoX5SxZGLnwsil2Rulig5wKRX1PkPUdUXkUeWO4s","method":"POST","remoteIP":"::ffff:172.17.1.4","status":500,"timestamp":"2025-01-07T13:02:38.743Z","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"}

@AnaelKremer
Copy link
Collaborator

AnaelKremer commented Jan 7, 2025

J'ai fait plusieurs tests et en fait le bouton "Lancer tout" ne fonctionne que si 100% des enrichissements sont des enrichissements avancés écrits à la main. Si je rajoute un enrich à partir d'un WS à la fin de ma liste, ça ne marche plus. Si je le supprime ça refonctionne.
Sur une autre instance j'ai fait des enrich à partir de WS uniquement, le bouton ne marche pas pour 3, 2 ou même 1 seul enrichissement.

@AnaelKremer
Copy link
Collaborator

Ok pour moi maintenant

@eonm-pro
Copy link
Collaborator

Ok pour moi également

@jonathanarnault
Copy link
Collaborator

Correction effectuée

@jonathanarnault
Copy link
Collaborator

Mise à jour:

  • Ajout d'une modale de confirmation
  • Ajout d'une erreur lors d'une dépendance circulaire

Pour tester la dépendance circulaire:

  • Créer deux enrichissement faisant référence l'un à l'autre avec la colonne source, exemple:
    • nom: A, colonne source: B
    • nom: B, colonne source: A

@AnaelKremer
Copy link
Collaborator

Ok pour le message mais pour la dépendance ciculaire je n'obtiens rien, peut être ai-je mal fait ?

1er enirch

Image

2eme enrich

Image

les 2 tournes et renvoient "n/a", dans la prévisu des enrich on a undefined.

@AnaelKremer
Copy link
Collaborator

@jonathanarnault
Copy link
Collaborator

jonathanarnault commented Jan 15, 2025

Pour le processus pour la dépendance circulaire:

  • Créer l'enrichissement A, lancer A
  • Créer l'enrichissement B, avec A comme colonne source, lancer B
  • Modifier A pour ajouter B comme colonne source
  • Tout lancer, l'erreur doit apparaître

Pour le mode avancé, c'est compliqué de détecter les dépendances, je propose que l'on crée une carte pour cela et de la faire une fois que l'on a avancé sur les annotations

@AnaelKremer
Copy link
Collaborator

Quelque chose m'échappe, si tu lances A, puis lance B les colonnes existent, donc en relancant tout il repart sur des colonnes existantes.
Je viens de tester, je n'ai pas d'erreur.
Il faudait peut être tester en exportant puis réimportant un modèle, car là les colonnes n'auraioent pas été lancées au préalable

@AnaelKremer
Copy link
Collaborator

si je supprime l'instance et réimporte mon modèle rien ne se lance

Image

Mais, je précise que si on utilise des enrichissement en mode NON avancé, nous sommes obligés de renseigner une url de web service si non ça ne se lance pas, on ne peut pas juste dupliquer une colonne choisie dans source sans faire de traitements par exemple.

Je vois donc mal comment on peut se retrouver à appeler un WS depuis une colonne (enrichA), lancer un autre ws depuis enrich A sans traiter les données et finalement vouloir que A ai finalement comme source B.

Personnellement je ne vois pas comment on peut se trouver dans ce cas de figure, mais peut être que ça existe. En tout cas, le problème de base reste le même, si vous pouviez gérer des cas de dépendances avec des enrichissements avancés, ça veut dire que l'on traite les cas où une personne veut faire des enrichissements qui découlent les uns des autres mais ne les aurai pas mis dans le bon ordre. Pour moi c'est une question de bonne pratique tout simplement. Je propose le parking pour cette carte.

@Alexmarmelab
Copy link
Collaborator

Alexmarmelab commented Jan 16, 2025

@AnaelKremer cliquer sur "Lancer tout" supprime toutes les colonnes créées grâce aux enrichissements.

Donc, si A est dépendant de B, que B est dépendant de A et qu'on clique sur "Lancer tout" les deux enrichissements sont basées sur des colonnes qui n'existent pas (supprimées) et dépendants entre eux.

Effectivement, il serait intéressant d'aussi ajouter la gestion des dépendances circulaires des enrichissements en mode avancée, mais le développement est très couteux et n'entre pas dans les "petites adapations" de la V14.
J'ai créé une carte pour ne pas oublier et on en reparlera après le développement des annotations s'il reste du temps.

@Alexmarmelab
Copy link
Collaborator

Vu au daily :

  • Pour les modes NON avancés : ce qui a été fait est suffisant
  • Pour les modes avancés : une carte est en parking pour se rappeler qu'on peut améliorer la gestion des dépendances circulaires.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Request Souhait ou besoin à étudier pour un prochain développement 👷‍♂️ Ready to go Le besoin ou le problème est validé, il prêt à être développé..
Projects
None yet
8 participants