Building Modular AI Chatbots

Is it possible to create multiple AI chatbots with a modular design with one main_bot that users interact with and main_bot figures out the specialized bots to bring into the conversation?

I’ve dug deep into all the AI-plugin documentation and am not sure how I would do this.

Thank you for such a powerful, customizable tool.

1 Like

I believe that this is technically possible via our tool scripting now. I’m mistaken here @sam ?

1 Like

If we have 3 specialized bots each with their own documents, are their embeddings isolated? Or do you think I need to do something special with the embeddings/docs to make sure they are easily isolated?

The documents uploaded to a Persona are isolated to that Persona.

1 Like

Can you expand on your example, make it a bit more concrete.

Tools now have direct access to personas, so you can define a persona that routes requests to a tool that then decides on the best persona for the job, but really understanding the full flow you have in mind will help us give advice here.

2 Likes

There is a great deal of risk/benefit info in medical literature for vaccinations. Having one Persona (say, VaccineBot) know all of it means easily hundreds of documents uploaded and a lot of potential for confusion. I experimented with this approach and the answers aren’t great.

Instead, I was thinking we’d do specialized Personas:

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

This looks really good from a modular design and information-focus perspective. But it also puts a large burden on the community members to know more than most do about vaccine schedules. So ideally VaccineBot would take the user’s question, figure out what specialized bots to involve, and be able to orchestrate the conversation.

For example, there are combination vaccines (6 vaccines in one shot) that if a parent had a question about it would need to pull in multiple bots. Or when talking about the 2 month well-visit where an infant can get up to 8 vaccines at once, VaccineBot would need to include all those specialized bots and somehow get a summary from each about what their purpose and focus is along with common reactions, etc.

This domain gets complex really quick:

DTaP = 3 vaccines, 1 shot, cannot be broken apart
HepB = 1 vaccine, 1 shot
MMR = 3 vaccines, 1 shot, cannot be broken apart

Pediatricians often give combination vaccines such as Vaxelis, a 6 in 1 shot: DTaP + HepB + Polio + Hib

A 2-month well visit might involve Vaxelis + PCV + Rotavirus

If a user asks about an upcoming 2 month visit, the orchestrator bot (VaccineBot) would need to work with 6 different Personas (bots) or at least bring them into the conversation.

Does this make sense?