Gavin老师Transformer直播课感悟 - 基于Transformer的Rasa 3.x 内核解密之微服务Action自定义及Slot Validation详解(二十八)

本文详细介绍了Rasa框架中如何基于Transformer进行微服务Action自定义和Slot Validation。通过自定义Action进行业务逻辑处理,如身份和支付信息验证,同时解析了ValidationAction和FormValidationAction的使用,用于实现对话中slots的提取和验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        本文继续围绕工业级业务对话平台和框架Rasa微服务Action自定义及Slot Validation进行解析。在使用微服务自定义action时,一般会涉及到对话中slots的操作,如在购物场景下从用户输入信息提取到slots之前,需要对用户的身份信息,支付信息等进行校验,通过后对话机器人才会进行下一步的操作。

一、Rasa微服务Action自定义及Slot Validation详解

  1. Rasa Action剖析及代码示例

     Action就是在一个对话状态的response里所采取的next 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中获取用户最新消息。

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

返回e

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值