Après avoir examiné quelques sujets, voici ce que j’ai appris et ce que je recommande.
Le site est dédié au support du système de sécurité domestique Surety.
L’objectif de l’IA utilisée avec le forum Discourse est (réf) :
- Compléter notre équipe de support humain pour un forum de support technique.
- Elle devrait apprendre à partir de nos données historiques de forum.
- Avoir les connaissances du domaine nécessaires pour fournir un support.
- Elle ne devrait tenter de répondre qu’aux questions pertinentes.
- Elle devrait offrir un moyen à l’utilisateur de demander au bot d’arrêter de répondre afin qu’il puisse attendre un humain si le bot ne semble pas utile.
Voici quelques-unes des questions posées par Ryan :
- Ces modèles apprennent-ils automatiquement ou sont-ils affinés avec des données historiques de forum ?
- Éviter de dupliquer le travail déjà accompli par des personnes plus compétentes.
- Restreindre les sujets auxquels le bot peut participer afin qu’il n’engage pas de conversations générales hors sujet ?
- Le Chatbot Discourse original est-il destiné à être développé et maintenu à long terme ?
- Ou est-il prévu qu’il soit éventuellement remplacé par le Bot IA du plugin officiel, ou intégré à celui-ci ?
Voici une question publiée que j’ai soumise au bot Discourse AI actuellement activé sur la version du site que j’ai testée, ainsi qu’une réponse de ChatGPT.
La question :
J’ai un IQP4 avec un module PowerG pour câblage filaire. Les capteurs filaires fonctionnent. Je voulais effectuer un test de la sonnette/sirène, mais je n’ai pas trouvé l’option sur l’IQP4. Je peux tester la sirène sur le panneau et elle retentit, tout comme l’IQ Remote, mais la sonnette filaire ne le fait pas. Je dois déclencher l’alarme pour que la sirène filaire sonne.
Existe-t-il un moyen de tester la sonnette sur le module PowerG pour câblage filaire depuis l’IQP4 ?
Voici la réponse obtenue avec le bot Discourse AI utilisant GPT-4
J’ai trouvé un sujet pertinent sur notre forum qui pourrait vous aider avec votre problème.
Dans le sujet Test wired bell on PowerG to hardwire?, un utilisateur avait rencontré un problème similaire où il ne parvenait pas à trouver l’option pour tester la sonnette sur le module PowerG pour câblage filaire depuis l’IQP4.
Veuillez consulter ce sujet pour des solutions possibles. Si vous avez encore des questions ou besoin d’une assistance supplémentaire, n’hésitez pas à demander.
Voici la réponse obtenue avec le bot Discourse AI utilisant GPT-3.5
J’ai trouvé un sujet sur le forum de support Surety qui traite du test de la sonnette filaire sur la connexion PowerG pour câblage filaire avec le panneau IQ 4 (IQP4). Vous pouvez trouver le sujet ici.
Dans ce sujet, l’utilisateur mentionne qu’il n’a pas trouvé d’option pour tester la sonnette/sirène directement sur l’IQP4. Cependant, il a pu tester la sirène sur le panneau et elle a retenti, tout comme l’IQ Remote. En revanche, la sonnette filaire ne sonnait pas sauf si l’alarme était déclenchée.
Vous pouvez consulter le sujet pour plus d’informations et voir s’il existe des solutions ou des suggestions proposées par d’autres utilisateurs.
Les bots Discourse AI GPT-4 et GPT-3.5 ont tous deux trouvé le même sujet.
Voici la réponse obtenue avec ChatGPT
Je n’ai pas d’informations spécifiques sur la dernière version logicielle ou les fonctionnalités du panneau IQ 4, car ma formation ne couvre que les connaissances jusqu’en janvier 2022. Cependant, en me basant sur les principes généraux de test des systèmes d’alarme, voici quelques suggestions qui pourraient vous aider à tester votre sirène filaire connectée au PowerG :
-
Mode de test du système :
- Vérifiez si votre panneau d’alarme dispose d’un mode « Test du système » ou « Test de marche ». Ce mode est généralement conçu pour tester les capteurs et les alarmes sans déclencher une véritable alarme. Si votre panneau possède cette fonctionnalité, elle devrait vous permettre de tester la sirène sans déclencher une alarme complète.
-
Contrôle des sorties :
- Cherchez une option « Contrôle des sorties » ou « Sortie auxiliaire » dans les paramètres de votre panneau d’alarme. Cette fonctionnalité peut vous permettre de déclencher manuellement des sorties, telles que la sirène, à des fins de test.
-
Contournement de zone :
- Certains systèmes vous permettent de contourner des zones spécifiques pendant les tests. Si votre sirène filaire est associée à une zone particulière, vous pourriez être en mesure de contourner cette zone pour le test.
-
Manuel de l’utilisateur :
- Consultez le manuel de l’utilisateur ou la documentation fournie avec votre panneau IQ 4. Il devrait fournir des instructions spécifiques sur la façon de tester et de contrôler les différents composants de votre système d’alarme.
-
Support technique :
- Si vous ne parvenez pas à trouver de solution par vous-même, envisagez de contacter le support technique du fabricant. Ils pourront vous fournir des conseils basés sur les fonctionnalités et les capacités spécifiques de votre système.
-
Mise à jour du logiciel du panneau :
- Vérifiez s’il existe des mises à jour logicielles disponibles pour votre panneau IQ 4. Les fabricants publient souvent des mises à jour pour ajouter de nouvelles fonctionnalités ou résoudre des problèmes, et une mise à jour pourrait inclure un mode de test spécifique pour la sirène.
N’oubliez pas d’agir avec prudence lors des tests pour éviter de déclencher accidentellement une véritable alarme. Si vous avez un doute sur l’une des étapes, il est toujours préférable de consulter le manuel de l’utilisateur ou de contacter le support technique pour obtenir de l’aide.
Il est clair que ChatGPT fournit une réponse plus détaillée. J’aborderai les raisons possibles plus loin dans ce sujet.
Note : Je n’ai pas accès au plugin Discourse AI de Merefield (Carte) (GitHub). Il serait intéressant de voir la réponse à la même question publiée ici pour comparaison. 
Voici mon retour.
L’IA de ces bots est basée sur des LLM (modèles de langage à grande échelle) ; les connaissances sont limitées par l’ensemble de données d’entraînement. Les bots utilisent également la RAG (Génération Augmentée par Récupération) pour enrichir leurs connaissances en accédant aux sujets du forum.
Les bots utilisent généralement un « prompt système », une sorte de persona, qui n’est pas un prompt utilisateur contenant la requête envoyée à l’API du LLM.
Je vais laisser ChatGPT expliquer la différence.
ChatGPT
Qu’est-ce qu’un prompt système ? En quoi diffère-t-il d’un prompt utilisateur ?
Réponse
Un prompt système et un prompt utilisateur sont des termes souvent utilisés dans le contexte des modèles de langage et des systèmes d’IA conversationnelle comme GPT-3.5. Laissez-moi clarifier la différence entre eux :
-
Prompt utilisateur :
- Un prompt utilisateur est l’entrée fournie par un humain pour initier une conversation ou demander des informations au système d’IA.
- C’est le texte ou la requête qu’une personne tape ou prononce pour interagir avec le modèle d’IA.
- Par exemple, si vous utilisez un chatbot ou un modèle de langage, votre entrée demandant une question ou faisant une affirmation constitue le prompt utilisateur.
-
Prompt système :
- Un prompt système, en revanche, est l’entrée ou l’instruction initiale donnée au modèle d’IA pour définir le contexte ou guider son comportement pour une conversation.
- Il est utilisé pour fournir à l’IA un point de départ ou un contexte pour générer des réponses.
- Le prompt système aide à définir le ton, le style ou le contenu des réponses de l’IA et sert en quelque sorte d’instruction pour guider le comportement du modèle.
- Alors que les prompts utilisateurs sont spécifiques aux requêtes ou déclarations de l’utilisateur, les prompts systèmes concernent davantage la fourniture d’un contexte général ou d’instructions pour toute la conversation.
Dans le cas de GPT-3.5 ou de modèles de langage similaires, une conversation commence généralement par un prompt système suivi de prompts utilisateurs dans un échange continu. Le prompt système influence les réponses du modèle tout au long de la conversation, mais c’est la combinaison des prompts système et utilisateur qui détermine la sortie du modèle.
La raison pour laquelle les bots ne parviennent pas à fournir une réponse beaucoup plus spécifique est que leur base de connaissances manque des manuels d’utilisation, des instructions d’installation, etc., pour ces produits. De plus, les bots sont souvent incapables d’extraire des images et des diagrammes de telles documentation, tels que les schémas de câblage et les images utilisées dans les manuels d’installation.
Pour commencer, la RAG devrait être utilisée pour étendre les connaissances de l’IA autant que possible, même s’il ne s’agit que du texte des documentations. Bien que le bot Discourse AI puisse utiliser la RAG pour tous les sujets du forum, je ne sais pas s’ils autorisent l’ajout d’informations externes. Sinon, une idée serait d’importer tous les documents au format PDF dans une catégorie, éventuellement cachée, afin que le code Discourse puisse y accéder plus facilement puisqu’ils sont dans le forum, puis d’utiliser Langchain pour accéder aux PDF (réf).
Avec ces connaissances intégrées, le prompt système peut être ajusté pour améliorer les réponses, mais cela restera loin de ce que vous recherchez. Vous obtiendrez probablement toujours des réponses comme la première, avec des références à des informations mais sans instructions étape par étape lorsque cela est nécessaire. De plus, il n’existe aucun moyen de fournir un retour sur la réponse de l’IA que l’IA saurait être un retour. Autrement dit, si un utilisateur répond au bot pour signaler une erreur, le bot lira la réponse mais ne comprendra pas qu’il doit mettre à jour ses connaissances sur cette base.
Pour améliorer la qualité des réponses, trois idées me viennent à l’esprit.
- Utiliser HyDE (Hypothetical Document Embeddings)
« Precise Zero-Shot Dense Retrieval without Relevance Labels » par Luyu Gao, Xueguang Ma, Jimmy Lin et Jamie Callan (pdf)
J’ai en fait découvert HyDE grâce à Discourse (réf) et je sais qu’ils l’utilisent.
-
RLHF (Apprentissage par renforcement à partir de retours humains). Je ne pense pas que l’un ou l’autre des bots soit capable de cela, et Discourse pourrait y réfléchir ; j’aimerais entendre leur retour s’ils souhaitent le partager.
-
Données synthétiques avec RLHF. C’est vraiment à la pointe de la technologie et ce n’est pas quelque chose que je m’attendrais à ce que l’un ou l’autre bot mette en œuvre.
L’une des méthodes les plus démontrées et réussies pour entraîner un LLM est de le faire s’entraîner lui-même, mais vous avez besoin d’une métrique pour savoir si le résultat est meilleur ou pire. Pour votre site, la seule façon que je comprenne actuellement de savoir si une solution est meilleure ou pire est qu’un humain note la solution fournie par l’IA. Pour obtenir plus de cycles de questions et de solutions possibles, les questions sont générées par une IA, une autre IA génère la solution, puis la solution est mesurée et utilisée pour améliorer l’IA qui génère la solution.
Pour améliorer la capacité du bot à aider les utilisateurs, il devrait poser une série de questions pour recueillir des informations afin de mieux comprendre le problème, de la même manière qu’un médecin le ferait pour un diagnostic et un pronostic.
Une autre option serait d’examiner des technologies similaires accessibles via le bot IA, telles que Microsoft Copilot.
Un élément que vous n’avez pas demandé ou noté, mais qui a de la valeur, est la référence à la source. La raison pour laquelle cela est important est de vérifier si la génération de l’IA est une hallucination ou non. Si une référence est incluse, qu’il s’agit d’une référence réelle et non d’une hallucination, alors la référence peut être vérifiée pour voir si elle provient d’une source autorisée, telle qu’un manuel, et il sera alors certain qu’il ne s’agit pas d’une hallucination. L’ajout de références est facile à faire avec la RAG et devrait être attendu.
Maintenant, abordons vos objectifs spécifiques.
Compléter notre équipe de support humain pour un forum de support technique.
C’est plus une affirmation qu’une question, je ne vais donc pas y répondre comme à une question.
Elle devrait apprendre à partir de nos données historiques de forum.
Cela faisait en fait partie d’une affirmation plus large que j’ai décomposée. La raison pour laquelle je l’ai décomposée est que, bien que vous ayez raison de dire que les données historiques du forum sont précieuses, les connaissances de base, comme celles contenues dans les manuels, sont également nécessaires. Les bots actuels utilisent la RAG avec les publications du forum, mais, à ma connaissance, ils ne savent pas comment accéder à des données externes.
Elle ne devrait tenter de répondre qu’aux questions pertinentes.
Cela peut être réalisé en ajustant le prompt système. Cela nécessiterait également certaines des technologies du Discourse AI Post Classifier - Automation rule.
Elle devrait offrir un moyen à l’utilisateur de demander au bot d’arrêter de répondre afin qu’il puisse attendre un humain si le bot ne semble pas utile.
Cela peut être réalisé en ajustant le prompt système.
Ces modèles apprennent-ils automatiquement ou sont-ils affinés avec des données historiques de forum ?
Bonne question. Bien que j’aie effleuré la façon de commencer à résoudre ce problème plus tôt, c’est en réalité une question beaucoup plus complexe qu’il n’y paraît, mais les grands chercheurs en LLM font de meilleurs progrès à cet égard et il pourrait y avoir des annonces intéressantes dans les prochains mois qui pourraient rendre cela beaucoup plus facile.
Éviter de dupliquer le travail déjà accompli par des personnes plus compétentes.
Je vais interpréter cela comme signifiant que le LLM ne devrait pas dévier de ce qu’il sait. Cela dépend de la façon dont le modèle est entraîné sur de nouvelles connaissances. Il est possible de rendre le modèle pire et même plus difficile à « désapprendre ». À ma connaissance, aucun des bots Discourse AI n’a la capacité d’apprendre, c’est-à-dire de modifier les poids du LLM, mais ils ont la capacité d’utiliser la RAG avec les publications de sujets. Ainsi, une mauvaise publication de sujet, des données d’entrée de mauvaise qualité, peut entraîner des résultats de mauvaise qualité.
Restreindre les sujets auxquels le bot peut participer afin qu’il n’engage pas de conversations générales hors sujet ?
Cela serait similaire au Discourse AI Post Classifier - Automation rule.
Le Chatbot Discourse original est-il destiné à être développé et maintenu à long terme ?
Je laisserai cette question au personnel de Discourse.
Ou est-il prévu qu’il soit éventuellement remplacé par le Bot IA du plugin officiel, ou intégré à celui-ci ?
Je laisserai cette question au personnel de Discourse.