Construire des chatbots IA modulaires

Est-il possible de créer plusieurs chatbots IA avec une conception modulaire, un main_bot principal avec lequel les utilisateurs interagissent, et ce main_bot détermine quels bots spécialisés intégrer à la conversation ?

J’ai fouillé en profondeur dans toute la documentation des plugins IA et je ne suis pas sûr de la manière dont je pourrais faire cela.

Merci pour un outil aussi puissant et personnalisable.

2 « J'aime »

Je crois que c’est techniquement possible via notre scripting d’outils maintenant. Je me trompe @sam ?

1 « J'aime »

Si nous avons 3 bots spécialisés, chacun avec ses propres documents, leurs embeddings sont-ils isolés ? Ou pensez-vous que je dois faire quelque chose de spécial avec les embeddings/docs pour m’assurer qu’ils soient facilement isolés ?

Les documents téléchargés sur une Persona sont isolés à cette Persona.

1 « J'aime »

Pouvez-vous développer votre exemple, le rendre un peu plus concret.

Les outils ont maintenant un accès direct aux personas, vous pouvez donc définir un persona qui achemine les requêtes vers un outil qui décide ensuite du meilleur persona pour le travail, mais comprendre pleinement le flux que vous avez en tête nous aidera à vous donner des conseils ici.

2 « J'aime »

Il existe une grande quantité d’informations sur les risques et les bénéfices dans la littérature médicale concernant les vaccinations. Avoir un seul Persona (disons, VaccineBot) qui connaît tout cela signifie facilement des centaines de documents téléchargés et beaucoup de potentiel de confusion. J’ai expérimenté cette approche et les réponses ne sont pas bonnes.

Au lieu de cela, je pensais que nous aurions des Personas spécialisés :

  • DTaP-Bot
  • HepB-Bot
  • MMR-Bot
  • Rotavirus-Bot
  • Polio-Bot
  • etc etc etc

Cela semble très bien du point de vue de la conception modulaire et de la focalisation de l’information. Mais cela impose également un lourd fardeau aux membres de la communauté pour qu’ils en sachent plus qu’ils ne le font sur les calendriers de vaccination. Donc, idéalement, VaccineBot prendrait la question de l’utilisateur, déterminerait quels bots spécialisés impliquer, et serait capable d’orchestrer la conversation.

Par exemple, il existe des vaccins combinés (6 vaccins en une seule injection) qui, si un parent avait une question à ce sujet, nécessiteraient l’intervention de plusieurs bots. Ou lorsqu’on parle de la visite de contrôle des 2 mois où un nourrisson peut recevoir jusqu’à 8 vaccins à la fois, VaccineBot devrait inclure tous ces bots spécialisés et en obtenir un résumé de chacun sur son objectif et son orientation, ainsi que les réactions courantes, etc.

Ce domaine devient rapidement complexe :

DTaP = 3 vaccins, 1 injection, ne peut pas être séparé
HepB = 1 vaccin, 1 injection
MMR = 3 vaccins, 1 injection, ne peut pas être séparé

Les pédiatres administrent souvent des vaccins combinés tels que Vaxelis, une injection 6 en 1 : DTaP + HepB + Polio + Hib

Une visite de contrôle des 2 mois peut impliquer Vaxelis + PCV + Rotavirus

Si un utilisateur pose une question sur une visite imminente des 2 mois, le bot orchestrateur (VaccineBot) devrait travailler avec 6 Personas (bots) différents ou du moins les faire participer à la conversation.

Est-ce que cela a du sens ?

Je continuerai à expérimenter et je ferai un retour à ce sujet.

Veuillez créer une invite similaire pour VaccineBot : Analysez la question qui vous est posée et convoquez l’utilisateur le plus approprié en fonction des sujets suivants, en utilisant ce format : @nom d’utilisateur

@DTaP-Bot : Couvre trois vaccins, administrés en une seule injection, indivisibles.

@HepB-Bot : Concerne un seul vaccin, administré en une seule injection.

@MMR-Bot : Englobe trois vaccins, administrés en une seule injection, indivisibles.

@Rotavirus-Bot : …

@Polio-Bot : …

Assurez-vous que les paramètres des bots que vous créez incluent l’option « d’autres peuvent mentionner », afin qu’après la réponse du bot approprié, le bot adéquat puisse être ajouté à la réponse, fournissant une réponse complète à la requête.

J’ai fourni une invite d’exemple ; vous pouvez demander l’aide de ChatGPT pour créer une invite plus raffinée et personnalisée qui correspond parfaitement à vos préférences.

1 « J'aime »

Hmm… Je pense que nous pouvons régler cela avec un outil personnalisé aujourd’hui !

  1. Téléchargez tous les documents dans l’outil personnalisé
  2. Donnez à l’outil personnalisé les paramètres « semantic_query » et « vaccine_name » (énumération)
  3. Ensuite, dans le JS personnalisé, exécutez la recherche sur le téléchargement de vaccine_name et injectez cette partie particulière dans le contexte

Cela garantit que vous n’obtenez le contexte que pour le sous-ensemble spécifique.

3 « J'aime »

Merci @kuaza et @sam pour vos excellents conseils sur la façon d’aborder cela. Je vous ferai bientôt un compte rendu.

–Chris

2 « J'aime »

@sam - l’approche outil a parfaitement fonctionné. Merci encore.

–Chris

1 « J'aime »

J’aimerais que vous puissiez partager ici quelques détails techniques sur la solution actuelle en place avec des exemples, je suis sûr que les membres de Meta aimeraient en apprendre davantage à ce sujet.