对话机器人(四)——RASA:Domain

本文详细介绍了RASA对话机器人的Domain配置,包括意图、实体、词槽、回复、表单、动作和会话配置。Domain定义了机器人处理的范围,如意图和实体的输入,词槽和动作的输出。还探讨了如何通过slot mappings自动赋值,以及如何定义和使用丰富的回复。此外,文章还讨论了会话配置和自定义动作的实现。
摘要由CSDN通过智能技术生成

1. domain

domain定义了机器人可操作的数据范围,包括意图(intents)、实体(entities)、词槽(slots)、回复(responses)、表单(form)、动作(actions)和会话session的配置(session_config)。

  • domain对模型的输入和输出进行明确的范围指定

​ ❃ 意图、实体:输入的范围

​ ❃ 词槽、表单:内部的变量,表征状态和存储记忆

​ ❃ 动作:模型输出的范围

​ ❃ 回复:机器人回复的模板

  • 可以定义为多个YAML文件,domain内容会被读取并自动合并在一起。
# 调用指定domain文件训练模型
rasa train --domain configs/domain.yml

完整的domain示例:

version: "3.1"

intents:
  - affirm
  - deny
  - greet
  - thankyou
  - goodbye
  - search_concerts
  - search_venues
  - compare_reviews
  - bot_challenge
  - nlu_fallback
  - how_to_get_started

entities:
  - name

slots:
  concerts:
    type: list
    influence_conversation: false
    mappings:
    - type: custom
  venues:
    type: list
    influence_conversation: false
    mappings:
    - type: custom
  likes_music:
    type: bool
    influence_conversation: true
    mappings:
    - type: custom

responses:
  utter_greet:
    - text: "嘿!"
  utter_goodbye:
    - text: "再见 :("
  utter_default:
    - text: "抱歉,我没听清,你能重复说一下吗?"
  utter_youarewelcome:
    - text: "不客气。"
  utter_iamabot:
    - text: "我是一个机器人,由 Rasa 驱动。"
  utter_get_started:
    - text: "我可以帮你找到音乐会和场地。你喜欢音乐吗?"
  utter_awesome:
    - text: "太棒了!你可以问我诸如“给我找一些音乐会”或“什么是好场地”之类的问题"

actions:
  - action_search_concerts
  - action_search_venues
  - action_show_concert_reviews
  - action_show_venue_reviews
  - action_set_music_preference

session_config:
  session_expiration_time: 60  # 以分钟为单位的值 
  carry_over_slots_to_new_session: true

2. 意图

列出在NLU数据对话训练数据中使用的所有的意图。

参数:

  • use_entities:[]——显式仅考虑某些实体
  • ignore_entities:[]——忽略某些实体
intents:
- greet:
    use_entities:
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值