注:RASA版本为3.1
1.RASA简介
RASA 是构建对话机器人的开源机器学习框架。
- NLU:确定意图,捕获关键上下文信息。
- CORE:提供多轮对话管理机制,自动学习上下文与当前意图的关联性。
2. RASA系统架构
- RASA开源体系结构
- NLU:意图分类、实体提取、响应检索。以管道的方式处理用户对话。
- 对话管理:根据上下文决定对话中的下一个动作。
- 代理:接收用户输入消息,返回RASA系统的回答。连接NLU和DM,得到Action,调用Action得到回答,保存对话数据到数据存储。
- 跟踪存储:对话的存储单元,保存用户和机器人的对话。(支持自定义存储)
- postgresql,SQLite,Oracle,Redis,MongoDB,DynamoDB
- 事件代理:机器人可以发布一个消息给其他服务来处理这些消息,也可以转发RASA服务的消息到其他服务。
- RabbitMQ,Kafka,SQL
- 锁:ID产生器。当RASA时一个集群部署时,客户端发送RASA服务端的消息每次不一定会寻址到同一个服务器,需要一个全局的会话