深圳做装修网站费用多少,学校做网站的软件,wordpress+定制菜单,WordPress如何禁止游客访问文章目录 0.前言1.项目整体框架2.rasa训练数据结构4.rasa启动命令及用到的API 0.前言
最近做了一个智能电影机器人的项目#xff0c;我主要负责用户语义意图识别#xff0c;用的框架是rasa#xff0c;对应的版本为 3.6.15#xff0c;对应的安装命令为:
pip3 install rasa… 文章目录 0.前言1.项目整体框架2.rasa训练数据结构4.rasa启动命令及用到的API 0.前言
最近做了一个智能电影机器人的项目我主要负责用户语义意图识别用的框架是rasa对应的版本为 3.6.15对应的安装命令为:
pip3 install rasa3.6.15 # 安装这个时候可能需要科学上网
pip3 install rasa[jieba]
pip3 install rasa[transformers]
pip3 install rasa[FallbackClassifier]
pip3 install rasa[nlu]1.项目整体框架 用户客户端通过语音说出他想看的电影然后通过语音转文字模块将文字传送给rasarasa识别出用户的意图和相应的关键字通过rasa的api给到java端java这里其实充当是rasa里面的action这个操作其实可以用python实现。java端通过意图和关键字在es里面查询相应的索引这里用es做媒资库的原因是es的模糊搜索能力比关系型数据库强最后将搜索到的媒资供用户选择进行播放。
2.rasa训练数据结构
由两部分数据组成意图训练数据和相应的关键词查找数据这里没有采用相应的关键词穷举放入意图训练数据进行训练这里的意图训练数据只是训练的语料模版然后实际使用的时候用户说话里面的实体由另一份关键词查找数据进行填充这里用的是rasa的RegexEntityExtractor组件。现在举例这些两份数据如何发挥作用的。
这是一份查询视频的意图训练数据当用户说“我要看电影赌侠”的时候这里rasa识别到的意图intent为query_video这里的两个实体entity为contentType和title分别识别为电影和赌侠
version: 3.1
nlu:
- intent: query_video
examples: |- 我要看[电影](contentType)[赌侠](title)- 播放看[电影](contentType)[赌侠](title)- 我想看[电影](contentType)[赌侠](title)由两部分数据组成意图训练数据和相应的关键词查找数据这里没有采用相应的关键词穷举放入意图训练数据进行训练这里的意图训练数据只是训练的语料模版然后实际使用的时候用户说话里面的实体由另一份关键词查找数据进行填充这里用的是rasa的RegexEntityExtractor组件。现在举例这些两份数据如何发挥作用的。
这是一份查询视频的意图训练数据当用户说“我要看电影赌侠”的时候这里rasa识别到的意图intent为query_video这里的两个实体entity为contentType和title分别识别为电影和赌侠
version: 3.1
nlu:
- intent: query_video
examples: |- 我要看[电影](contentType)[赌侠](title)- 播放看[电影](contentType)[赌侠](title)- 我想看[电影](contentType)[赌侠](title)如果用户说“我想看电影速度与激情”这个数据可能不在我们的训练的意图数据中但是rasa识别了意图为query_video这里的两个实体entity为contentType为电影title通过正则匹配为速度与激情关键词数据的样式为
version: 3.1
nlu:
- lookup: title
examples: |- 速度与激情8- 石头娃- 中甲精华- 畲族彩带传承人- 最美奋斗者- 唤醒巨人3.rasa训练配置如下
pipeline:
name: JiebaTokenizer
name: LanguageModelFeaturizer
model_name: bert
model_weights: bert-base-chinese
name: RegexEntityExtractor
use_word_boundaries: False
use_lookup_tables: True
use_regexes: True
name: DIETClassifier
epochs: 100
tensorboard_log_directory: ./log
learning_rate: 0.001
name: ResponseSelector
name: EntitySynonymMapper
name: FallbackClassifier
threshold: 0.9
ambiguity_threshold: 0.01policies:
name: MemoizationPolicy
max_history: 1
name: TEDPolicy
max_history: 1
epochs: 10
name: RulePolicy
max_history: 14.rasa启动命令及用到的API
rasa run --enable-api --cors * --port 5506
post http://127.0.0.1:5506/conversations/usertest88/messages
{sender:user,text:我想看电影速度与激情}如需源码请关注微信公众号造轮子的坦克回复w获取个人微信然后私发给您。