当前位置:   article > 正文

Gavin老师Transformer直播课感悟 - 基于Transformer的Rasa 3.x 内核解密之微服务四大组件全解(三十)_rasa框架 transformer

rasa框架 transformer

        本文继续围绕工业级业务对话平台和框架Rasa 的微服务四大组件进行解析。Rasa基于微服务架构的SDK提供了Actions,Tracker,Dispatcher和Events来帮助对话机器人开发人员实现自定义的actions。

一、Rasa微服务四大组件全解

  1. Rasa Actions和Tracker详解

      Action是任何自定义action的父类,为了自定义一个action,需要继承Action并覆写Action中的两个必需的方法:name和run。Rasa action server在接收到执行一个action的request时,会根据name方法返回的值来调用这个action。

自定义action的框架样例如下,name方法返回的值必须是唯一的:

方法name:定义了action的name,它被用于注册微服务。

返回action_name,类型为str

方法run:执行action的业务逻辑。

参数:

-dispatcher:dispatcher用于发送消息给用户,用法为dispatcher.utter_message()或参考CollectingDispatcher相关API说明

-tracker:当前用户的状态跟踪器,你可以使用tracker.get_slot(slot_name)访问slots的值,可以使用tracker.latest_message.text从tracker中获取用户最新消息,以及获取tracker中其它的属性值。

-domain:对话机器人的domain系统配置

返回events列表,类型为List[Dict[str, Any]]

下面是一个具体action实现样例,在run方法里首先从tracker中取得slot “cuisine”的值(在实体提取阶段会从用户输入中提取entity信息并通过全局slot设置机制设置slot “cuisine”的值),然后根据这个条件调用数据库查询所匹配的餐馆列表,并通过SlotSet event把查询结果设为slot “matches”的值:

关于Tracker:

Tracker类用于表示一个Rasa对话状态跟踪器tracker。你可以在自定义action里通过tracker访问对话机器人的对话状态信息,如通过Tracker的属性和方法来获取过去发生的events的信息和当前对话状态的信息。

Attributes

-sender_id - 与对话机器人交互的用户的唯一ID

-slots - 在domain里定义的可以被填充的slots list

-latest_message - 一个 dictionary,包含了最新用户消息的属性:intent, entities 和text

-events - 所有过去发生的events list

-active_loop - 当前执行的active loop的名称

-latest_action_name - 对话机器人执行的上一个action的名称

Methods

-current_state:返回当前tracker的状态信息

返回类型:Dict[str, Any]

-is_paused:表示当前tracker是否暂停,即是否对话机器人停止对用户的响应

返回类型:bool

-get_latest_entity_values:从最新用户消息中根据传入的entity type和可选参数role和group获取找到的entity的值,如果你只对一个给定entity type的第一个entity感兴趣,可以使用:

如果没有entity找到,就会返回None。

参数说明:

entity_type – 感兴趣的entity type

entity_role – (可选)感兴趣的entity role

entity_group – 可选)感兴趣的entity group

返回entity的值的list

返回类型:Iterator[str]

-get_latest_input_channel: 获取最新的UserUttered event的输入channel的名称

返回类型:Optional[str]

-events_after_latest_restart:返回最近一次对话重启后发生的events list

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/982578
推荐阅读
相关标签
  

闽ICP备14008679号