根据 rasa 聊天机器人中选择的语言重新加载模型

Reload model according to the chosen language in rasa chatbot

我做了一个聊天机器人。开始对话时,机器人会显示消息“选择一种语言”,它会使用两个分别显示“英语”和“法语”的按钮提供选择语言的选项(我有 2 个模型:英语和法语)。

问题是“如何根据点击的按钮重新加载合适的模型?”

谢谢。

由于 Rasa 启动脚本的性质,这将非常难以实现。基本上,他们希望您在服务器启动时启动一个模型并继续使用它。基线问题是 Rasa 每个服务只允许一个模型。也就是说,如果您不对启动脚本的编写方式进行一些重大更改,它就无法同时为两种语言提供服务(我没有工作过 rasa 1.9。所以我的回答可能已经过时了 - 但我非常怀疑)

因此,我看到的首选解决方案是为两种语言设置两个单独的机器人实例,并在 Front-End 中使用语言 trigger/switch 机制将用户消息路由到正确的机器人。

编辑:添加项目结构。

- Front-End : Has a language chooser dropdown menue. FE sends messages to the web server. i.e. www.your.server/chatbot/{language} 
- web server: nginx to expose bot APIs: Routes the messages to the correct bots based on the input path (/chatbot/{language}). 
---- Bot 1: Language: en
---- Bot 2: Language: zh_CN