rasa对话系统踩坑记(一)

前言

最近接到了一个任务,要做遗传方面的医疗诊断对话系统。经过前期的调研最终决定使用rasa_nlu和rasa_core这套框架。由于rasa版本更新频繁,使用中踩了不少坑,而且自定义了一些component,都在此记录下。最终我们项目的效果如下:


遗传咨询对话系统

系统能够实现收集患者信息,给出诊断结果和诊断建议,诊断结果和诊断建议是构建的知识图谱。

本文将具体介绍对话系统实现过程中的难点和解决方案。

demo的代码路径在:rasa_chatbot_cn,欢迎大家star。

需要申明下,此demo并不是公司真实项目。

rasa_nlu训练数据的生成

对话系统的冷启动都会遇到这样的问题,没有数据。这里我们会自己构建一些数据,具体代码在:chatito_gen_nlu_data,是使用chatito来生成rasa_nlu意图识别需要的数据,如下:


chatito配置图

具体的用法可以参照官网和上面的demo代码,其实原理很简单就是做了排列组合这个事。产生的json数据用于rasa_nlu的训练,这个数据需要反反复复的修改和完善,如果你有数据那更好就不需要做这一步了。在产生训练数据的时候需要确定的nlu的意图和实体类别,需要在domain.yml文件中配置intents和entities,电信项目中的intents和entities如下:

intents:

  - greet

  - confirm

  - goodbye

  - thanks

  - inform

  - request_management

  - request_search

  - deny

  - unknown_intent

entities:

  - item

  - time

  - phone_number

  - price

  - package

原创文章,转载请说明出处


## Recommand

novelling

liveportraitweb

mmaudio

deepseek image

ai kungfu

body visualizer

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容