Bonjour à tous,
J’ai vu sur le forum Anglais, une initiative de serveur MCP pour Dolibarr.
Y a d’autres personnes sur le sujet sachant que je commence à avoir des demandes de client?
Bien à vous
José
Bonjour à tous,
J’ai vu sur le forum Anglais, une initiative de serveur MCP pour Dolibarr.
Y a d’autres personnes sur le sujet sachant que je commence à avoir des demandes de client?
Bien à vous
José
Bonjour,
Je ne suis pas sur le sujet car non développeur.
Mais je suis intéressé par le sujet.
Bonne journée.
Cordialement.
José, j’ai sur Dolistore le module « Assistants IA », qui en réalité a « seulement » pour but d’offrir une interface très similaire à celle de chatGPT mais au sein de votre même instance de Dolibarr, afin que chaque utilisateur de l’entreprise puisse l’utiliser avec ses propres conversations, sans avoir à payer un abonnement mensuel par employé, mais uniquement la consommation d’IA (auprès de plusieurs fournisseurs).
Et il m’est arrivé la même chose qu’à toi : depuis le début, des gens me contactaient toujours pour demander si avec mon module ils pouvaient « interroger l’IA sur leur base de données Dolibarr » (factures, clients, produits, ventes, achats, etc.).
Cependant, je n’ai jamais trouvé le temps de travailler dessus.
Je veux ajouter à mon module une sorte d’« outil fait maison » (très ad hoc) qui permette simplement au chatbot (quel que soit le modèle utilisé) de détecter si l’utilisateur demande des informations provenant de son propre Dolibarr. Et dans ce cas, lui donner un « outil » du type « requête sur la base de données ».
Mais j’ai cela très « en l’air », sans détail. J’ai vu des implémentations similaires dans d’autres logiciels qui donnent de très bons résultats en donnant à l’IA « juste » la structure des tables et des champs de la base de données… et l’IA construit généralement la requête SQL appropriée pour obtenir les informations nécessaires afin de pouvoir répondre à l’utilisateur.
C’est pourquoi ta publication a attiré mon attention : c’est très intéressant « d’ouvrir l’accès à la base de données de Dolibarr » à l’IA via un MCP… Bien que j’ignore la complexité de faire cela. Je n’ai pas assez d’une vie pour apprendre autant de choses en une seule année de 365 jours !!! ![]()
Bonjour @caos30,
Je pense que ce que tu décris existe ici non ? ListGPT : Génération de requête et de liste avec OpenAI à voir avec @defrance
Oui, c’est « un peu » l’idée que je décris. Mais je pense que ce module sert « seulement » à obtenir des tableaux/listes d’éléments après avoir généré un SQL pour interroger la base de données.
En revanche, l’idée que je veux mettre en œuvre est que ce SQL soit plutôt « caché » pour l’utilisateur (même s’il serait intéressant de pouvoir visualiser le SQL au cas où les plus geeks d’entre nous seraient intéressés), et d’intégrer ces recherches d’une manière plus « colloquiale » dans la conversation avec l’IA, du genre : « Analyse les ventes de ce produit X sur la dernière année, et compare l’évolution avec celle de l’année dernière ».
C’est-à-dire que ListGPT fait vraiment la « partie difficile » du travail (= convertir la demande de l’utilisateur en une requête SQL) et ensuite j’imagine qu’il applique cette requête pour afficher les résultats à l’écran sous forme de tableau.
Et cette partie est justement celle que je dois faire pour passer ce « output » à l’IA afin qu’elle le traite. Mais ce n’est pas si simple : je dois faire un jeu de deux prompts pour voir s’il est nécessaire de compléter la demande de l’utilisateur avec des données de ce résultat de requête à la BDD (avec un premier prompt) pour tout passer ensemble dans un deuxième prompt.
Je vais regarder comment @defrance a fait avec ce module. ![]()
Merci ! Je le connaissais déjà mais je ne me souvenais pas qu’il pouvait m’être utile.
De mémoire, j’avais fait ce module en moins d’une semaine, il faut d’ailleurs que je l’actualise avec les nouveautés qui ont été intégré à Dolibarr.
Au delà de l’interrogation de l’IA pour générer la requête, il y a la constitution du prompt pour lui donner la structure des tables et des règles fonctionnels (par exemple les statuts, si une facture est payé, comment sont relié les contacts, …). C’est sur cette transmission de prompt qu’il y a sans doute des choses à faire avec le MCP mais il est hors de question de laisser une ia farfouiller dans mes données…
La question en tant que tel et ensuite le rendu que ce soit directement après le prompt ou l’intégration de la requête dans myList pour être réutiliser sans avoir à nouveau à gaspiller des token (et surtout augmenter le taux de co2…)
Pour ma part, afficher la requete SQL généré par Ll’IA c’est aussi de la pédagogie (rien de honteux dans une requete SQL) et accessoirement vérifié qu’elle ne sorte pas des dinguerie (et là on est sur du 50/50 et sur des données stratégique, c’est jouer à la roulette russe)
Merci @defrance pour ta réponse si bien argumentée, et d’avoir partagé la méthodologie de travail de ton module. C’est exactement ce genre de chose que je pensais intégrer.
J’ai également les mêmes réticences quant au fait de « laisser l’IA accéder à mes données »… bien que ce soit moins en mode lecture qu’en mode écriture. Je ne sais pas pour toi, mais j’ai reçu des demandes du type : « est-ce qu’on pourrait demander à l’IA de créer un bon de commande chez tel fournisseur… ». Ce genre de choses peut probablement être fait de manière sécurisée… à condition que cela soit créé en mode BROUILLON, pour être supervisé ensuite.
Mais dans tous les cas, je suis 100% d’accord avec toi, je pense que le flux de travail doit être :
Note : j’ai pris plus d’une demi-heure pour rédiger ce flux et je me rends compte que je suis déjà plus près de l’implémenter ![]()
Salutations !
Bonjour à tous.
Personnellement je ne suis pas fan de donner la structure de la base de données à une IA.
Je préfère tenter une autre approche qui consiste à lui apprendre comment se connecter à l’API REST de Dolibarr.
Bonjour @AnthonyD
Même si l IA connaît déjà la structure d’une base Dolibarr, je suppose que tu évoquais les datas de la base.
Je suis moi aussi sur la solution du serveur MCP via les API comme l’indique mon sujet.
Mais au final, même via les APIs, on finit quand même par avoir acces à la data en lecture
Connaitre la structure des tables de dolibarr (et encore quid des différentes versions) c’est une chose, mais en comprendre l’architecture, par exemple le lien entre les éléments, les statuts (qui ne sont justement pas dans les tables), ben là il faut ajouter quelques prompts de précision des règles fonctionnelles, propre à dolibarr, mais aussi à l’entreprise (usages des champs supplémentaires définis).
J’ai quand meme l’impression de me revoir lors de la bulle internet ou beaucoup promettait tout et surtout n’importe quoi, sans trop meme comprendre ce qu’il vendait ou proposait…
Le plus dingue c’est que l’on vient de passer plusieurs années à parler de RGPD et sécurisation des données et là on c’est limite openbar sur la data, pire que dans un club libertain.
@JOSE1966 Je parlais bien des datas. Oui on y a bien accès via les APIs, mais l’avantage est que tu peux restreindre les droits de ta clé API et que les données sont plus ciblées.
@defrance Effectivement, connaitre la structure de la table et la comprendre sont des choses bien différentes. Cependant, laisser une IA écrire des requêtes dans la base est dangereux pour moi.
En lecture, tu fournis une bonne partie de tes données, pas de véritable restriction si l’IA veut aller lire la table des constantes par exemples, et alors on parle même pas de l’écriture… Malheureusement oui, avec cette ère on envoie des données à qui les veut..
il y a requetes (SELECT) et requetes (INSERT, UPDATE, DELETE)… le module listGPT ne fait que du SELECT.
Cette année je me suis concentrée sur le dev de mon application mobile, car il ne me semblait pas qu’il y avait quelque chose de fiable et surtout sécure (ayant fait carrière dans le secteur bancaire, c’est limite un réflexe…) mais les choses changent.
Tout d’abord il est possible de faire tourner des LLM performant en local (et une machine qui tient la route, dans mon cas, un macpro de 2013 avec un octocore et surtout 64Go de ram suffit à être confortable) si on se rajoute un n8n, on arrive à réaliser des choses sympas.
Au dela de la tech, il faut définir des cas d’usage, le cas de ligpt qui sort des listes ca a du sens, faire des réponses de support à partir de la base de connaissance, c’est pas mal aussi.
Mais si on arrive à sortir de la saisonnalité sur les ventes ou du prévisionnel sur la réapprovision des stocks (je rêve secrêtement d’un restockAI) c’est jackpot
@defrance Je ne ciblait pas spécialement listGPT je parlais plus d’ordre général.
Après je te rejoins en tout point, cela dépend aussi de l’architecture lA que tu as en place.