根据rasa chatbot中选择的语言重新加载模型

问题描述

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

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

谢谢。

解决方法

由于Rasa启动脚本的性质,很难实施。基本上,他们希望您在服务器启动时启动模型并继续使用它。基线问题是Rasa每种服务仅允许一种模型。即,如果您不对启动脚本的编写方式进行一些重大更改,则它不能同时提供两种语言的服务(我在rasa 1.9之前还没有工作,所以我的答案可能已经过时了-但我对此表示高度怀疑)

因此,我所看到的首选解决方案是为两种语言使用两个单独的机器人实例,并在前端使用语言触发/切换机制将用户消息路由到正确的机器人。

编辑:添加项目结构。

- 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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...