构建模块化AI聊天机器人

医学文献中有大量关于疫苗接种的风险/效益信息。如果有一个 Persona(比如 VaccineBot)了解所有这些信息,那就意味着需要上传数百份文件,并且很有可能造成混淆。我尝试过这种方法,但效果并不理想。

相反,我考虑过使用专门的 Persona:

  • DTaP-Bot
  • HepB-Bot
  • MMR-Bot
  • Rotavirus-Bot
  • Polio-Bot
  • 等等,等等,等等

从模块化设计和信息聚焦的角度来看,这看起来非常好。但这也给社区成员带来了沉重的负担,需要他们了解比大多数人更多的疫苗接种计划。因此,理想情况下,VaccineBot 会接收用户的提问,找出需要涉及的专门 Bot,并能够协调对话。

例如,有些联合疫苗(一次注射 6 种疫苗)如果家长有疑问,就需要调动多个 Bot。或者在谈论 2 个月大的婴儿的常规检查时,婴儿一次可以接种多达 8 种疫苗,VaccineBot 需要包括所有这些专门的 Bot,并以某种方式从每个 Bot 获取关于其目的和重点的摘要,以及常见的反应等。

这个领域很快就会变得复杂:
DTaP = 3 种疫苗,1 次注射,不可拆分
HepB = 1 种疫苗,1 次注射
MMR = 3 种疫苗,1 次注射,不可拆分

儿科医生经常给联合疫苗,如 Vaxelis,一次注射 6 种:DTaP + HepB + Polio + Hib

2 个月大的婴儿的常规检查可能包括 Vaxelis + PCV + Rotavirus

如果用户询问即将到来的 2 个月大的婴儿的常规检查,协调 Bot(VaccineBot)将需要与 6 个不同的 Persona(Bot)合作,或者至少将它们引入对话。

这有意义吗?