`
haoningabc
  • 浏览: 1478284 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

rasa-nlu的使用

    博客分类:
  • nlu
nlu 
阅读更多
中文的rasa分支Rasa_NLU_Chi在安装过程中有一些错误:

https://blog.csdn.net/qq_30650047/article/details/96697361



在mac上使用conda,避免污染环境
conda info --env
conda create --name rasa_chi  python=3.7
conda activate rasa_chi

避免mkl报错,需要安装mkl
conda install mkl-devel

如果需要升级conda
conda update -n base -c defaults conda


需要下载模型  total_word_feature_extractor_zh.dat
链接:https://pan.baidu.com/s/1kNENvlHLYWZIddmtWJ7Pdg 密码:p4vx


git clone https://github.com/crownpku/Rasa_NLU_Chi.git

python setup.py install 之前需要安装依赖
pip install -r requirements.txt
alt_requirements/requirements_bare.txt
这个里面对应的一些包可能不适合当前的mac版本10.15.6
```
#gevent==1.2.2
gevent==20.6.2
klein==17.10.0
hyperlink==17.3.1
boto3==1.5.20
typing==3.6.2
future==0.16.0
six==1.11.0
jsonschema==2.6.0
matplotlib==2.1.0
requests==2.20.0
tqdm==4.19.5
#numpy==1.14.0
numpy==1.14.5
simplejson==3.13.2
cloudpickle==0.5.2
msgpack-python==0.5.4
packaging==17.1
pyyaml==5.1
coloredlogs==9.0


```
其中
使用pip freeze|grep numpy 查看已经安装的版本。,
可能需要的依赖
gevent有问题,安装最新版
pip install gevent==20.6.2
pip install numpy==1.14.5
pip install scipy==1.5.2 


brew install svn
brew install blis
brew install openblas


没有scipy 也会报sklearn的错
有一些也没包含在这个依赖里面,需要手动安装下

分词组件:
pip install jieba
pip install  mitie pathlib



https://blog.csdn.net/sinat_21591675/article/details/82770360
pip install 后面加 -i url
国内源
pip install -i  https://pypi.tuna.tsinghua.edu.cn/simple  -r alt_requirements/requirements_bare.txt



注意:最终error shape (1, 5) 类似的问题都是scikit-learn 版本不对,scikit-learn 又依赖mkl等,最终0.19.2版本通过,0.19.1似乎不行
pip uninstall scikit-learn
pip install scikit-learn==0.19.2

依赖装完之后,最后
python setup.py install

注意安装完之后重新训练模型,模型训练也是需要scikit-learn 等依赖的

################
重要概念

pipeline的选择
MITIE+Jieba+sklearn
sample_configs/config_jieba_mitie_sklearn.json
没有修改,
```
{
  "name": "rasa_nlu_test",
  "pipeline": ["nlp_mitie",
        "tokenizer_jieba",
        "ner_mitie",
        "ner_synonyms",
        "intent_entity_featurizer_regex",
        "intent_featurizer_mitie",
        "intent_classifier_sklearn"],
  "language": "zh",
  "mitie_file": "./data/total_word_feature_extractor_zh.dat",
  "path" : "./models",
  "data" : "./data/examples/rasa/demo-rasa_zh.json"
}
```

MITIE:https://blog.csdn.net/wangyizhen_nju/article/details/93622942
支持分布式词嵌入和结构化SVM(support vector machine),支持向量机
个性化的数据加入到这里

注意把下载total_word_feature_extractor_zh.dat 放到这个配置里了

数据:
data/examples/rasa/demo-rasa_zh.json
可以加一些数据,比如加两个意图,问天气和想要点外卖
```json
{
  "rasa_nlu_data": {
    "common_examples": [
      {
        "text": "今天天气怎么样",
        "intent": "ask_weather",
        "entities": []
      },
      {
        "text": "今天天气如何呀",
        "intent": "ask_weather",
        "entities": []
      },
      {
        "text": "天气",
        "intent": "ask_weather",
        "entities": []
      },
      {
        "text": "外卖",
        "intent": "want_waimai",
        "entities": []
      },
      {
        "text": "我想点外卖",
        "intent": "want_waimai",
        "entities": []
      },
      {
        "text": "我想点一些吃的",
        "intent": "want_waimai",
        "entities": []
      },
      {
        "text": "我想吃好吃的",
        "intent": "want_waimai",
        "entities": []
      },
      {
        "text": "附近有什么好吃的",
        "intent": "want_waimai",
        "entities": []
      },
```


训练后模型在model下,变更数据后重新训练



####################


使用:

训练
python -m rasa_nlu.train -c sample_configs/config_jieba_mitie_sklearn.yml --data data/examples/rasa/demo-rasa_zh.json --path models


启动server:
python -m rasa_nlu.server -c sample_configs/config_jieba_mitie_sklearn.yml --path models


客户端测试:
curl -XPOST localhost:5000/parse -d '{"q":"我发烧了该吃什么药?", "project": "default", "model": "model_20200804-010331"}' | python -mjson.tool





分享到:
评论

相关推荐

    基于Rasa-NLU的多轮对话天气预报助手设计源码

    本项目为基于Rasa-NLU构建的多轮对话天气预报助手设计源码,包含22个文件,涵盖9个配置文件(YAML)、5个Python源代码文件、2个Markdown文件、1个Git忽略文件、1个许可协议文件、1个文本文件、1个HTML文件、1个...

    Python库 | rasa-nlu-0.13.1.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:rasa-nlu-0.13.1.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    PyPI 官网下载 | rasa-sdk-1.5.1.tar.gz

    `rasa-sdk`是Rasa生态系统的一部分,它提供了一个接口,允许开发者创建自定义组件来与Rasa核心和Rasa NLU交互。Rasa是一个强大的自然语言处理工具,主要用于构建聊天机器人和智能助手,它包括两个主要组件:Rasa ...

    PyPI 官网下载 | rasa_nlu-0.9.1.tar.gz

    **PyPI 官网下载 | rasa_nlu-0.9.1.tar.gz** `rasa_nlu` 是一个开源的自然语言理解(NLU)组件,它属于 Rasa 开源机器学习框架的一部分,用于构建对话式AI助手。在Python编程环境中,开发者经常通过Python包索引...

    Python库 | rasa-1.0.1-py3-none-any.whl

    这个库,名为 "rasa-1.0.1-py3-none-any.whl",是针对Python 3版本的一个可执行的轮子(wheel)文件,允许开发者在他们的环境中快速安装和使用Rasa。轮子文件是一种预编译的Python包格式,旨在提高安装速度和兼容性...

    PyPI 官网下载 | rasa-hydra-2.6.9a2.tar.gz

    安装完成后,根据`rasa-hydra`库提供的文档或API,开发者可以在自己的Python项目中导入并使用这个库。 **总结** `rasa-hydra-2.6.9a2.tar.gz` 是从PyPI获取的Python库,与Rasa框架有关,可能包含了与OmegaConf的...

    Python库 | rasa-1.2.2-py3-none-any.whl

    1. **插件与集成**:Rasa支持与其他工具和服务集成,如使用TensorFlow或Spacy进行NLU处理,或者与Slack、Facebook Messenger等实时通讯平台对接。 2. **自定义策略**:开发者可以根据需求编写自己的对话管理策略,...

    rasa-bert-finetune:支持rasa-nlu的bert finetune

    介绍支持rasa json数据格式的bert finetune准备在训练finetune模型前需要先下载bert pre-train model,这里用的是中文的,可去官网下载chinese_L-12_H-768_A-12 。 json文件称为rasa_dataset_training.json ,dev的...

    RASA NLU官方文档中文翻译

    * 可以使用 RASA NLU 作为插件 RASA NLU 的配置 * 可以安装 MITIE、spaCy 或 sklearn 作为后端 * 可以使用不同的组件来处理消息 * 可以根据特定用例调整模型 RASA NLU 的使用 * 可以用于意图分类和实体提取 * ...

    nest-rasa-AI-sample:使用@nestjs框架和@rasaHQ机器学习AI的服务器-HTTP集成

    使用Docker部署Rasa NLU和Rasa Core # RASA NLU docker pull rasa/rasa_nlu docker run -p 5000:5000 --name rasa-nlu rasa/rasa_nlu # RASA CORE docker pull rasa/rasa_core docker run -p 5005:5005 --name rasa...

    rasa_chatbot:基于rasa_nlu,rasa_core,rasa_core_sdk构建的聊天机器人

    Rasa Core和Rasa NLU介绍这个聊天机器人demo是用开源NLU框架完成意图识别与实体识别,用完成对话管理和与对话生成。本demo完成的对话主要有: 1:进行套餐,查询话费和流量(会话场景1) 2:案件查询(会话场景2) 3...

    Rasa-Denerator:一种为Rasa生成domain.yml文件的简单方法

    使用Python 3.7.x开发安装$ pip install rasa_denerator 安装后,可以通过命令行或在python脚本中使用该组件,我们为这两种情况提供了方案。用法命令行界面以下示例将从动作模块,nlu训练数据和模板创建域文件$ ...

    基于rasa_nlu,rasa_core,rasa_core_sdk构建的聊天机器人_python_代码_下载

    这个聊天机器人demo是用开源NLU框架rasa-nlu完成意图识别与实体识别,用rasa-core完成对话管理和与对话生成。 本demo完成的对话主要有: 1: 办理套餐、查询话费和流量(会话场景1) 2:案件查询(会话场景2) 3:Q&A问答...

    PyPI 官网下载 | rasa-1.8.1.tar.gz

    Rasa NLU 使用机器学习模型,如序列标注和分类器,来实现这一功能。 2. **Rasa Core**:核心对话管理器,它负责处理对话流程,根据用户的输入和当前对话状态来决定下一步的行动。Rasa Core 可以学习和优化对话策略...

    total_word_feature_extractor_zh.dat数据集:部署中文nlu----基于rasa_nlu

    Rasa NLU的主要目标是帮助开发者构建对话式AI应用,比如聊天机器人,无需深入学习的背景知识也能使用。 ### `total_word_feature_extractor_zh.dat`数据集的作用 `total_word_feature_extractor_zh.dat`是Rasa NLU...

    PyPI 官网下载 | rasa-0.14.0a5.tar.gz

    在下载了 `rasa-0.14.0a5.tar.gz` 后,开发者通常会解压缩文件,然后使用Python的包管理工具pip来安装此版本的rasa库。例如,通过命令行执行: ```bash tar -zxvf rasa-0.14.0a5.tar.gz cd rasa-0.14.0a5 python ...

    rasa-ui:Rasa UI是Rasa框架的前端

    Rasa UI提供了一个Web应用程序,可以通过Web界面快速轻松地创建和管理机器人,NLU组件(正则表达式,示例,实体,意图等)和核心组件(故事,动作,响应等)。 它还为Rasa提供了一些便利功能,例如训练和加载模型,...

    rasa_nlu_datasets:丢失NLU数据集

    本话题主要围绕"rasa_nlu_datasets:丢失NLU数据集"这一主题,我们将深入探讨Rasa NLU、数据集在聊天机器人中的作用以及如何使用Python进行相关操作。 首先,Rasa NLU 是 Rasa 开源平台的一部分,它专注于自然语言...

    rasa_nlu和rasa_core官方文档阅读笔记.pdf

    如果需要训练单独的NLU或Core模型,可以使用`rasa train nlu`和`rasa train core`。 训练模型时,要确保同时存在NLU和Core的训练数据。如果训练数据和配置没有变化,Rasa不会重新训练模型,从而节省时间。 在交互...

    Rasa-hotel:此回购包含用于酒店模型的Rasa-X chatbot文件

    **Rasa-Hotel: 使用Rasa-X构建酒店服务聊天机器人** 在现代科技的推动下,人工智能(AI)和自然语言处理(NLP)技术正在逐渐改变我们与机器交互的方式。Rasa是一个开源的对话式AI框架,专为构建智能助手和聊天...

Global site tag (gtag.js) - Google Analytics