|
Rasa是一个开源的机器学习框架,用于自动化基于文本和语音的助理。构建真正帮助客户的上下文助理和聊天机器人很困难。Rasa 提供了高性能、有弹性、专有的上下文助理所需的基础设施和工具。借助 Rasa,所有开发人员都可以创建更好的基于文本和语音的助手。 
为什么选择Rasa?
RASA NLU 的主要优点是您可以访问整个 Python 处理管道,并可以使用复杂的自定义逻辑对其进行扩展。RASA NLU 提供现实世界中对话解决方案所需的基础设施功能,例如模型持久性或 HTTP 访问。 Rasa与Dialogflow的比较

RASA 的组件:

1.自然语言理解(NLU)Rasa 自然语言单元 是一种自然语言理解模块。它由松散耦合的模块组成,在一致的 API 中结合了许多自然语言处理和机器学习库。 NLU 实际上是做什么的?

对于此过程,NLU 使用 Tokenizer 将传入文本转换为标记,然后 词性标注器:词性标注器或 POS 标注器处理单词序列,并将词性标记附加到每个单词。 分块:分块的主要目标之一是将其分组为所谓的“名词短语”。这些是由一个或多个单词组成的短语,其中包含名词,可能是一些描述性单词,可能是动词,也可能是副词之类的东西。这个想法是将名词与与其相关的单词分组 在分块器之后,实体被识别并提取。 
2. 自然语言生成(NLG)自然语言生成 是人工智能的一个分支,旨在缩小机器与人类之间的沟通差距。该技术通常接受非语言格式的输入,并将其转换为人类可理解的格式,如报告、文档、短信等。 3. 对话管理为什么使用 Rasa Core 进行对话处理? 
通过从输入文本中提取意图和实体,这些数据会与之前的状态混淆以获得新的操作。这些新动作将更新为状态并产生输出并用于下一个输入。 如何安装Rasa:
pipinstallrasa 安装完成后,rasa CLI 就会启用。 rasainit 在您的项目文件夹(空文件夹)中,命令提示符,它会问以下问题, 请输入将创建项目的路径[默认:当前目录] - 指定路径或按 Enter 键默认 您想训练初始模型吗?- 对于初学者,是的(推荐),训练模型需要一些时间。 您想在命令行上与训练有素的助手交谈吗?- 否(推荐),如果您想了解 rasa 聊天机器人如何工作,可以按“是”。
如果你想跳过这些问题,请添加--no-prompt rasainit--no-prompt 通过此过程,会在您指定的目录中创建一些文件。 这将创建以下文件: (可选)data/responses.md(*):您可以在数据文件夹中单独创建响应文件。 models/.tar.gz:这是rasa训练的模型。 endpoints.yml:此文件包含连接到 FB Messenger 等通道的详细信息。 domain.yml (*):包含意图列表、响应、操作、槽和表单列表。这是您的机器人的域。 data/stories.md (*):此文件包含您的机器人的故事。这是意图和响应之间的桥梁 data/nlu.md (*):该文件包含 NLU 的意图名称和意图,您从这里开始编写意图。 credentials.yml:其中包含连接到其他服务的详细信息。这包含凭据详细信息。 config.yml (*):此文件用于配置 NLU 和 Core 模型。该文件包含足够的详细信息,例如语言、管道、NLU 的纪元详细信息以及核心协议。 actions.py:您可以在此 python 文件中自定义操作代码。 init.py:这是一个空的 python 文件,有助于查找您的操作。
最重要的文件标有“*”。 训练和测试机器人:
创建自己的机器人后,您必须通过以下代码来训练它 rasatrain 它将在模型文件夹中创建一个新模型。您可以通过两种不同的方式对其进行测试: 使用shell rasashell 这将创建一个与您的机器人聊天的界面。

使用postman/curl 首先,运行以下命令 rasarun-mmodels--enable-api--log-fileout.log 它创建本地主机,您可以在其中使用curl进行交互 curllocalhost:5005/model/parse-d'{“text”:“你好”}提供的其他 API 列表

|