Rasa对话机器人连载五 第122课:Rasa对话机器人Debugging项目实战之银行金融对话机器人全生命周期调试实战-(一)

Rasa 3.X对话机器人Debugging项目
全生命周期调试实战

Gavin大咖
2022-03-20

本电子书由段智华根据Gavin大咖Rasa AI上课内容整理编写。
https://blog.csdn.net/duan_zh...

NLP on Transformers高手之路137课 Rasa 3.x 源码高手之路 知识店铺:https://appybiyrtzd9613.h5.xi...

Rasa培训、Rasa课程、Rasa面试、Rasa实战、Rasa对话机器人
第122课:Rasa对话机器人Debugging项目实战之银行金融对话机器人全生命周期调试实战-(一)
我们这一节课从一个新的视角调试的视角进行讲解,而不是像上一节课一样,基于 rasa interactive的视角,这节课之所以要通过调试的视角,是因为这个项目相比而言确实非常的复杂,把这个项目掌握基本上开发Rasa 应用程序都不会有太大的问题了,为了向大家展示更多Rasa 内部运行的细节,我们开启它的调试模式。
我们退出 Rasa interactive,开启调试模式,如果你是交互式命令终端,可以使用VV的方式:

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

也可以是使用debug的模式,其实是一样的效果。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

我们这节课主要是通过具体跟对话机器人的交互,可能展示的信息会比较多,尤其是框架内部的信息会比较多,这个是期待着,因为我们是 debug的模式。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

Rasa load modules加载了很多的库和相关的内容,Rasa 作为一个工业级的对话机器人,目前为止是全世界就是工业落地最强的智能业务对话机器人,它依赖这么多库,所以Rasa本身是极其复杂的,Rasa的团队和社区一起迭代这么多版本,如果一家新的机构想要超越它,确实不是那么容易的事情,load modules加载了许多类,里面包括tender flow的很多内容。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志显示包括一些 URL类的功能,这些内容其实可以不太关注,因为这些内容跟 HTTP相关,是通信层面的,rasa.cli.utils使用默认的credentials方式。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

我们看一下credentials.yml的内容,这是非常重要的,进行远程访问的设置,另一方面是身份认证,包括一些身份认证信息的相关内容,我们现在并没有进行其他的配置,核心就是做了一个关于 URL是url:"http://localhost:5002/api",这个是跟Rasa x有关的配置。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

Rasa x是Rasa 官方团队提供的另外一个集成开发和持续发布的一个非常棒的工具,我们以后也会跟大家去讲解这个内容,但这个内容本身它是从使用层面没有太大的难度,从官网的角度也可以看见很多细节性的信息。
日志中显示 connection to channel cmdline,这里cmdlin是命令终端command line,是我们当前的channel通道,如果从整个Rasa 的角度讲,Rasa有很多的channel,例如Facebook、socketio等等之类的, 都是不同的channel层面的。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志中显示connector, Rasa 本身非常强大,理论上讲可以支持任意的channel,例如微信,只要有API集成进来。Rasa官方支持已经很丰富了,我们可以来看一下Rasa channel。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

Rasa官网显示可以连接很多Rasa channel,其中最重要的有两部分,一部分就是your own website,另外一个就是custom collectors,只要有第三方就随时可以自定义,你也可以方便的把Rasa集成到你自己的网站,官网文档描述得非常清楚。
日志中显示 cors:configuring CORS with resources,这是跟server相关的,无论说微服务端还是Rasa本身,Rasa使用的是sanic,sanic是一个非常强大的web 服务器和web框架。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

我们来看一下Sanic,Sanic特别好用,安装也很简单,支持路由转发,现在支持python 3.1.0的版本。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

然后会检查一下host url相关的内容,会把整个的 server启动起来,Rasa server启动的端口是5005,注意这是Rasa core的默认提供的端口,不是Rasa微服务的端口(微服务端口5055在配置文件中endpoints.yml进行配置),如果要改变Rasa core默认运行的端口,可以命令启动的时候指定端口是多少。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

我们继续来看一下,日志显示有一个功能是slot_mappings,这个slot_mappings本身是非常重要的,从Rasa 3.x开始,定义slot的时候,一般都会有 Map的机制。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

这背后其实有很重要的产业界的历史信息,Rasa 3.0以前的状态管理其实一直是有bug的,包括重复性的运用等等,详情可以看官方发布的博客, explicit is better than implicit – the zen of Python ,其中Zen可以翻译成禅,禅宗的禅。 博客描述了一些问题,然后提出了一些解决方案,核心就是统一的定义。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

在domain.yml文件中没有查到到auto_fill的内容, Gavin大咖已经把这个代码都升级到了Rasa 3.x的版本,你如果从网络上找拿到这个代码,跟我们代码的肯定不一样,因为官方团队并没有升级,现在我们看这里面的map的机制,这都是Gavin大咖升级后的内容。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

我们继续来看日志,starting new https connection是关于安全性的连接。注意, connected to in memory TRACKERStore是默认的行为,也可以使用redis保存rasa的状态。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

这里面有一个很重要的点是Rasa architecture,我们看一下Rasa架构图。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

图中的Agent是Rasa server,会做各种的调动操作Dialogue Policies,NLU Pipeline, Tracker Store,对于开发者,在整个对话中, Tracker是除了微服务以外的,对开发者最重要的东西。
日志中的InMemoryLockStore跟用户的身份认证或者ID是有关的,对话机器人运行的时候,可能有100万个用户跟你连接,不同的人怎么进行区分?在生产实践环境下,做大规模的项目中,无论是 Track Store还是LockStore,我们使用的都是redis, redis有分布式锁,如果ID很多的时候,进行分布式管理,处理顺序内容,redis都非常强大。如果你是做服务端的开发或者做大数据开发或者做人工智能开发, 强烈推荐学习redis,学习redis会让技能有提升,为什么?因为很多时候我们要进行状态的管理和控制,这是我们开发的核心及基本的工作,发布了1.0版本及业务逻辑一大堆的事情做好之后,会发现各种问题都是规模扩大之后的状态管理问题,所以redis确实是非常出色的一个开源的软件。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志中的rasa.core.nlg.generator是语言生成的内容,然后开始加载我们的模型。

编辑
添加图片注释,不超过 140 字(可选)

模型解压之后,可以看见很多细节化的一些内容,包括不同组件的各种模型。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志中nlu_message_converter是信息的转换,当一个消息进来的时候,进行 Tokenizer的处理,日志中显示使用run_WhitespaceTokenizer0.

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

  在config.yml文件中,pipeline管道配置的第一个组件是WhitespaceTokenizer

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志中的run_RegexFeaturizer1与config.yml文件中的RegexFeaturizer,及日志中的
run_LexicalSyntacticFeaturizer2与config.yml文件中的LexicalSyntacticFeaturizer是一一对应的,所有的内容都非常清楚,因为模型加载的过程,每个组件都要进行实例化,组件之间会有依赖关系。run_CountVectorsFeaturizer3与config.yml文件中的CountVectorsFeaturizer及run_CountVectorsFeaturizer4与config.yml文件中的CountVectorsFeaturizer相对应,显然是有两个,所以进行了两个实例化。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志显示run_DIETClassifier5,将tensorflow的模型加载进来,其中finetune_mode设置为False,因为现在是推理inference模式。接下来是rasa.nlu.classifiers.diet_classifier的运行日志,包括t_loss (total loss) 总的损失度、 i_acc (intent acc)意图准确率、 i_loss (intent loss)意图损失度、 e_f1 (entity f1)实体抽取F1值、 e_loss (entity loss) 实体抽取损失度。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志显示线程运行的相关内容,以及关于Tensfor的一些操作。日志显示“Finished loading the model.”,模型压缩文件背后有很多不同的组件,每个组件都要依次实例化,然后建立依赖关系。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

在config.yml文件中pipeline管道配置了FallbackClassifier的内容,日志显示运行run_FallbackClassifier6,运行的时候需要使用feature特征提取器。在config.yml文件中pipeline管道配置了DucklingEntityExtractor,我们的Duckling服务运行在doctor环境,现在是running的状态,端口是8000。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

在config.yml文件中pipeline管道配置了SpacyNLP的内容:

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志显示Node 'run_SpacyNLP8' loading 'SpacyNLP.load' and kwargs: '{}', SpacyNLP本身是一个非常强有力的一个NLP的库,一开始就是致力于把很多最出色的 NLP相关的基础学习算法集成起来。我们按照配置一步一步加载模型及加载en_core_web_md,run_SpacyEntityExtractor9运行实体提取,在config.yml文件中pipeline管道配置了EntitySynonymMapper,日志显示run_EntitySynonymMapper10提取实体同义词的相关内容,Rasa所有的东西都是一步步呈现的。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志中显示Node 'domain_provider' loading 'DomainProvider.load' and kwargs: '{}'., 加载domain.yml文件,Rasa通过字典的方式进行加载,字典dictionary是非常强大的一个数据结构,基本上Rasa的各种配置,在背后都是通过字典的方式呈现,包括和Json文件进行转换的服务,也是通过字典的方式。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志中run_TEDPolicy1显示Rasa policy层面的内容,Resource 'train_TEDPolicy1' was requested for reading是资源的使用,读者可以学习知识店铺的课程内容(NLP on Transformers高手之路137课 Rasa 3.x 源码高手之路 知识店铺:https://appybiyrtzd9613.h5.xi...), Gavin大咖在Rasa 3.x架构内核和框架定义的时候都跟大家谈过,这里就不一一的谈,日志中显示“rasa.utils.tensorflow.models - Loading the model from ....\train_TEDPolicy1\ted_policy.tf_model with finetune_mode=False”,这里的tf_model其实是transformer模型,设置finetune_mode=False,因为是inference的阶段,日志中包括一些Tensor的处理。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志显示rasa.utils.tensorflow.models - Finished loading the model,其中constrain_similarities其实有点复杂,constrain_similarities设置为True的时候,计算sigmoid交叉熵损失度。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志中显示Node 'select_prediction' loading 'DefaultPolicyPredictionEnsemble.load' and kwargs…,前面的这些策略都加载进来之后,由DefaultPolicyPredictionEnsemble进行处理,类似于一个judge,把各种Policy本身得出的结果进行集成(Ensemble)判断,最后决策下一步的 action或者response是什么。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志中显示Rasa server is up and running.,至此,我们就贯穿了Rasa shell启动的整个过程

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

日志中显示Enabling coroutine debugging. 其中coroutine是我们在讲Python高级课程系列的第二个课程,这些课程的设计都是基于Gavin大咖过去5年左右的时间,做星空智能对话机器人,以及阅读众多的源码,包括Rasa 的源码里面提取出了认为最重要最具有力量的内容,在面对规模化的软件架构,或者应对海量的用户请求的时候,使用到的一些异步的技术及分布式的技术。
日志中显示:Bot loaded. Type a message and press enter ,我们就进入了和Bot机器人的交互式模式。在Rasa shell –debug启动的过程中涉及到很多的内容,如果读者想成为一个Rasa 高手,一个基本性的方式就是打开这个debug模式之后,按照完整的路径阅读Rasa的源代码,当然阅读Rasa源码最快的方式是学习Gavin大咖知识店铺的课程,课程对Rasa源码都有逐行的解读。

Gavin大咖课程信息分享:
NLP on Transformers高手之路137课(模型、算法、论文、源码、案例 + 1年答疑)
Rasa 3.x 源码高手之路:系统架构、内核算法、源码实现详解

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

Gavin大咖简介
星空智能对话机器人创始人、AI通用双线思考法作者,现工作于硅谷顶级的AI实验室。专精于Conversational AI. 在美国曾先后工作于硅谷最顶级的机器学习和人工智能实验室
Gavin大咖微信:NLP_Matrix_Space
联系电话:+1 650-603-1290
联系邮箱:[email protected]
助教老师微信:Spark_AI_NLP

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

添加图片注释,不超过 140 字(可选)

Gavin导师
星空智能对话机器人创始人/AI双线思考法作者

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

博客链接:https://blog.csdn.net/duan_zh...
作者参与Gavin大咖主编出版Spark系列图书5本,清华大学出版社最新出版2本新书《Spark大数据商业实战三部曲:内核解密|商业案例|性能调优》第二版、《企业级AI技术内幕:深度学习框架开发+机器学习案例实战+Alluxio解密》,累计原创博客1475篇,涵盖大数据、人工智能、智能对话机器人等内容,博客阅读量达217万次。

Gavin大咖课程信息分享

课程标题:Rasa 3.X 智能对话机器人案例开发硬核实战高手之路 (7大项目Expert版本)
课程关键字:Rasa Application、Debugging、E-commerce、Retail、Customer Service、Helpdesk Assistant 、Financial Bot、Banking、Retail、Insurance、Education、Knowledge Base、ElasticSearch、Interactive Learning、Testing、Duckling、Microservices、SQLite、Payload、Slot、Mapping、Custom Slot、Custom Mapping、External API、Payload、Docker、Domain、NLU、Policies、Dialogue Management、Intent、Prediction、Confidence、Form、Active Loop、Event、 FormValidationAction、CollectingDispatcher、Tracker、Rasa Server、Endpoint、FollowupAction、UserUtteranceReverted、ActionSwitchForms、RESTful、RegexFeaturizer、RegexEntityExtractor、EntitySynonymMapper、Endpoint、Aiohttp、Coroutines、Sanic、Session、Rasa Core、Rasa SDK、ValidationAction、Dynamic Form Behavior、RemoteAction、ActionExecutionRejection、Architecture、Open API、Message Handling、NaturalLanguageGenerator、Graph Architecture

课程内容:
整个课程涵盖客户服务、电商零售、银行金融、信息咨询、影视娱乐、保险客服、教育产业等各类最经典的智能业务对话机器人场景及应用开发。学员可以在学习完本课程后对项目代码进行二次开发来满足企业的需要,并具备实现任意复杂度的Rasa智能业务对话机器人应用产品技术硬实力。更重要的是,该项目课程中展示的高阶对话机器人实战技术及架构设计密码可以帮助学员在开发基于Rasa开发其它类型的对话机器人时游刃有余。
Rasa是Conversational AI在智能业务对话领域工程落地全球最为成功对话机器人系统,是基于Transformer架构的全球使用最广泛的智能业务对话机器人框架,是NLP技术的集大成者。在当今全球范围各项对比指标综合成绩中,Rasa均处于领先地位:

编辑

切换为居中
添加图片注释,不超过 140 字(可选)
可以这么说:掌握了Rasa就掌握了NLP技术的精髓及技术最佳落地工具。
基于此,星空对话机器人在7大Rasa 3.X内核架构及源码解密系统课程的基础上推出了“Rasa智能对话机器人应用开发硬核实战高手之路”,帮助大家掌握Rasa硬核应用程序开发能力。

课程由7大部分构成:

1,Rasa 3.X Interactive Learning对话机器人应用调试与案例实战

2,Rasa 3.X项目Helpdesk Assistant架构、流程、源码及Interactive本质内幕

3,Rasa 3.X项目实战:基于ElasticSearch的影视对话机器人

4,Rasa 3.X 项目实战之电商零售Customer Service智能业务对话机器人
5,Rasa 3.X 项目实战之银行金融Financial Bot智能业务对话机器人
6,Rasa 3.X 项目实战之保险行业Insurance Bot智能业务对话机器人
7,19小时精通Rasa 3.X 项目实战之教育行业Education Bot智能业务对话机器人
每一个部分都是聚焦于智能业务对话机器人经典场景下的经典技术而设计实现的Rasa 3.X智能业务对话机器人项目来驱动的,包括其架构设计、配置内幕、源码实现、测试调试以及Rasa Interactive Learning等。首先会聚焦智能业务对话机器人运行流程及项目调试Debugging全程演示、命令行下交互过程,紧接着是对话机器人微服务代码逐行解密及基于Rasa Interactive的对话进行实验分析,尤其是对微服务远程通信、微服务进行启动、微服务注册、各类微服务编码、微服务验证、微服务测试与调试等在实际开发中用到的微服务的实践精髓进行全息实践及源码解密,最后对项目的Config、Domain、Stories、Rules、FAQ、Chitchat逐行解密及Rasa Interactive运行过程剖析。不仅能够帮助学员从项目动态运行的角度彻底掌握该项目,同时对提升学员对Rasa内核的理解力也会大有裨益。

资料及答疑:
购买后联系授课导师Gavin获得代码、资料及完整的课程视频(包含额外的根据学员学习反馈而补充的视频及助教录制的视频)。
课程提供1年的技术答疑服务,Gavin老师负责所有课程技术问题的答疑服务。

课程大纲:


Rasa 3.X Interactive Learning对话机器人应用调试与案例实战


Rasa Interactive是Rasa提供给开发者最强大的交互及程序调试利器。Rasa官网说“Interactive learning makes it easy to write stories by talking to your bot and providing feedback. This is a powerful way to explore what your bot can do, and the easiest way to fix any mistakes it makes.”

作为星空对话机器人的作者,在使用Rasa Interactive功能的时候确实被其强大及方便易用惊艳到。这不仅是因为其在NLU及Dialogue Management方面强大的交互功能把整个对话机器人与用户交互的过程一览无余的展示在开发者面前,同时更由于其基于数据流的强大的调试功能及数据生成功能。
本课程聚焦于Rasa Interactive这个Rasa对话机器人开发者最强大的工具,不仅讲解其原理内幕,同时更是使用多个Rasa对话机器人应用程序实战其内幕运行流程的每一个步骤并对其背后的“why”进行剖析,帮助每一个Rasa开发者彻底理解并在实践中掌握Rasa Interactive这一最强开发及调试利器。
为了更好的帮助学习者掌握每一个细分知识点,课程中的每个案例都会借助rasa visualize命令带领大家清晰程序的数据流,同时细致剖析NLU及Policies的训练数据及每个应用程序微服务代码,帮助大家一站式彻底掌握Rasa Interactive Learning。

第1课:Rasa Interactive Learning原理内幕、运行流程及案例实战NLU及Policies交互调试
1,为什么说Rasa Interactive Learning是解决Rasa对话机器人Bug最容易的途径?
2,Rasa Interactive与Rasa Visualize的联合使用:Stories、Rules、NLU、Policies
3,项目案例Microservices源码逐行解析
4,使用Rasa Interactive Learning逐行调试nlu及prediction案例的三大用例场景
5,使用Rasa Interactive Learning生产数据示例实战

第2课:通过Rasa Interactive Learning发现及解决对话机器人的Bugs案例实战
1,动态的Rasa Visualization http://localhost:5006/visuali...
2,Rasa Interactive Learning定位Slot的Bug及解决方案现场实战
3,Rasa Interactive Learning定位微服务Bug及其分析

第3课:Rasa Interactive Learning透视Rasa Form的NLU及Policies的内部工作机制案例实战
1,通过Rasa Visualize分析Pizza项目的三大运行流程
2,Pizza项目的NLU、Stories及Rules内容详解
3,项目的微服务代码详解
4,通过Rasa Interactive Learning测试Pizza form的运行及validation运行机制
5,通过Rasa Interactive Learning实战围绕Pizza form的问题对话路径及改造方式
6,通过Rasa Interactive Learning生成新的Pizza form训练数据及其训练


Rasa 3.X项目Helpdesk Assistant架构、流程、源码及Interactive本质内幕


本项目讲解一个完整的Rasa智能对话机器人项目Helpdesk Assistant,聚焦于问题Ticket的报告及追踪。包括其架构设计、配置内幕、源码实现、测试调试以及Rasa Interactive Learning等。首先会聚焦于该项目的运行流程、命令行下交互过程及源码剖析,紧接着是项目调试过程全程再现及各类现象内幕解密,最后对项目的Domain、Action逐行解密及Rasa Interactive运行过程剖析。

尤其是Debugging及Rasa Interactive Learning部分所使用的工具及透过这些工具所呈现出了项目内部的NLU、Dialogue Management及Action运行的内部流程及对各种现象的本质剖析,不仅能够帮助学员从项目动态运行的角度彻底掌握该项目,同时对提升学员对Rasa内核的理解力也会大有裨益。

第4课:Rasa项目实战之Helpdesk Assistant运行流程、命令行下交互过程及源码剖析
1,通过Rasa shell演示Helpdesk Assistant的项目功能
2,现场解决DucklingEntityExtractor在Docker中使用问题
3,通过Rasa Visualize透视Helpdesk Assistant核心运行流程
4,action_check_incident_status源码解析及Slot操作深度剖析

第5课:Rasa项目实战之Helpdesk Assistant中Bug调试过程全程再现及各类现象内幕解密
1,通过Rasa Shell交互式命令复现案例中的Bug问题
2,逐词阅读Bug信息定位问题来源
3,关于payload中KeyError内幕剖析
4,配置文件分析及源码解析
5,使用rasa data validate进行数据校验
6,使用Debug模式透视问题内幕
7,Helpdesk Assistant中Bug的解决及过程总结

第6课:Rasa项目实战之Helpdesk Assistant中Domain、Action逐行解密及Rasa Interactive运行过程剖析
1,对Helpdesk Assistant中的Domain内容逐行解密
2,Helpdesk Assistant中的Action微服务代码逐行解密
3,通过Rasa Interactive纠正Helpdesk Assistant中的NLU问题全程演示
4,通过Rasa Interactive纠正Helpdesk Assistant中的Prediction问题全程演示
5,通过Rasa Interactive纠正Helpdesk Assistant中的两大核心场景全程交互解密


Rasa 3.X项目实战:基于ElasticSearch的影视对话机器人


本项目课程围绕Rasa Knowledge Base与ElasticSearch整合实现影视对话机器人。项目基于IMDB Movie Dataset及CMU Book Summary Dataset,以Rasa Knowledge Base基石,以ActionQueryKnowledgeBase为核心,通过Rasa Interactive Learning及Rasa Visualize工具来动态的探索项目运行流程、NLU及Policies及微服务交互过程。课程对项目的data、actions、domain等每一行内容代码进行彻底剖析,不仅讲解其运行机制,更重要的底层why。达到通过实战项目贯通Rasa NLU、Policies、Microservices、ElasticSearch这一在生产环境黄金组合。
第7课:基于ElasticSearch的Rasa项目实战之Movie及Book Knowledge Base整合1,基于ElasticSearch的Knowledge Base与Rasa对话机器人的整合在对话机器人开发中巨大价值分析2,基于ElasticSearch的Rasa项目核心运行流程分析:Movies及Books操作功能详情3,打通Rasa、微服务及ElasticSearch功能演示及运行机制分析4,通过Rasa Shell演示项目案例的核心功能5,通过Rasa Interactive Learning演示项目案例的内幕运行机制及流程深度剖析

第8课:Rasa与ElasticSearch整合项目案例数据及配置作机制、最佳实践、及源码剖析
1,domain.yml中的config及session_config工作机制、最佳实践、内幕自定义源码剖析
2,项目的entities及slots、Responses和actions的关系解析
4,config.yml中Pipeline及Policies详解及其背后的Rasa Graph Architecture剖析
5,NLU及Policies训练数据详解
6,通过Rasa Interactive动手实战演示join movie and rating的功能

第9课:基于ElasticSearch的Rasa项目实战之微服务源码逐行解析
1,Rasa微服务和ElasticSearch整合中代码架构分析
2,KnowledgeBase源码解析
3,MovieDocumentType、BookDocumentType、RatingDocumentType源码解析
4,ElasticsearchKnowledgeBase源码解析
5,ActionElasticsearchKnowledgeBase源码解析


Rasa 3.X 项目实战之电商零售Customer Service智能业务对话机器人


本项目是基于电商和零售经典场景智能业务而设计实现的Rasa 3.X智能业务对话机器人,包括其架构设计、配置内幕、源码实现、测试调试以及Rasa Interactive Learning等。首先会聚焦智能业务对话机器人运行流程及项目Bug调试全程演示、命令行下交互过程,紧接着是对话机器人微服务代码逐行解密及基于Rasa Interactive的对话试验,最后对项目的Config、Domain、Rules、FAQ、Chitchat逐行解密及Rasa Interactive运行过程剖析。

从功能上讲,该项目实现了商品信息库存查询、订单跟踪、回退订单、产品信息订阅及处理常见的Chitchat及FAQ等场景下的智能交互式对话。尤其是Debugging及Rasa Interactive Learning部分所使用的工具及透过这些工具所呈现出了项目内部的NLU、Dialogue Management及Action运行的内部流程及对各种现象的本质剖析,不仅能够帮助学员从项目动态运行的角度彻底掌握该项目,同时对提升学员对Rasa内核的理解力也会大有裨益。
学员可以在学习完本课程后对项目代码进行二次开发,实现自己的电商和零售经典场景智能业务对话机器人。

第10课:Rasa项目实战之电商零售Customer Service智能业务对话机器人运行流程及项目Bug调试全程演示1,电商零售Customer Service智能业务对话机器人功能分析2,电商零售Customer Service智能业务对话机器人运行流程3,使用Rase shell --debug模式测试电商零售Customer Service项目及问题Bug思考4,使用Rasa Interactive来尝试解决项目Bug5,调整rule文件效果测试及问题分析6,调整slot配置测试及问题解决方案剖析7,电商零售Customer Service智能业务对话机器人调试全流程及解决方案总结
第11课:Rasa项目实战之电商零售Customer Service智能业务对话机器人微服务代码逐行解密及基于Rasa Interactive的对话试验
1,Customer Service案例使用的SQLite3数据库数据分析
2,增加了数据库的内容但在测试的时候却没有起作用原因及解决方案
3,action_order_status代码逐行解析及Rasa Interactive试验解密
4,action_cancel_order代码逐行解析及Rasa Interactive试验解密
5,action_return代码逐行解析及Rasa Interactive试验解密
6,chitchat和faq背后的ResponseSelector解密

第12课:Rasa项目实战之电商零售Customer Service智能业务对话机器人系统行为分析及项目总结
1,电商零售Customer Service的config内容逐行分析
2,Rasa 3.x Graph Architecture剖析
3,项目实战之电商零售Customer Service的Domain内容逐行分析
4,项目实战之电商零售Customer Service的rules内容逐行分析
5,项目实战之电商零售Customer Service的数据操作代码逐行分析
6,chitchat及faq在Rasa Interactive下的测试及行为分析
7,项目实战之电商零售Customer Service项目总结


Rasa 3.X 项目实战之银行金融Financial Bot智能业务对话机器人


本项目是基于银行和金融经典场景智能业务而设计实现的Rasa 3.X智能业务对话机器人,包括其架构设计、配置内幕、源码实现、全生命周期调试、多场景测试以及Rasa Interactive Learning等。首先会聚焦智能业务对话机器人Financial Bot智能业务对话机器人架构、流程及通过Rasa Interactive实验现象解密,然后会通过Debugging模式贯通Rasa项目实战之银行金融Financial Bot智能业务对话机器人系统启动、语言理解、对话决策、状态管理、微服务调用全生命周期流程,紧接着会通过实验的方式测试Financial Bot多种状态转换及Rasa Interactive行为分析,然后会对Financial Bot微服务代码逐行解密及工业级对话机器人高级代码最佳实践分享,最后分享图解Rasa对话机器人项目实战之银行金融Financial Bot架构视角下的Training及Reference全生命周期、功能实现、及产品的二次开发等内容。
从功能上讲,该项目实现了银行和金融经典场景智能业务中的Money Transfer、Transaction Search、Credit card Payment、Account Management、Information Query等智能业务交互式对话。尤其是Debugging及Rasa Interactive Learning部分所使用的工具及透过这些工具所呈现出了项目内部的NLU、Dialogue Management及Action运行的内部流程及对各种现象的本质剖析,不仅能够帮助学员从项目动态运行的角度彻底掌握该项目,同时对提升学员对Rasa内核的理解力也会大有裨益。
该项目展示了大量Rasa对话机器人开发中关于状态管理、上下文切换等高级技术,学员可以在学习完本课程后对项目代码进行二次开发,实现自己的银行和金融服务经典场景智能业务对话机器人任意复杂度的产品。更重要的是,该项目中使用的高阶对话机器人实战技术可以帮助学员在开发基于Rasa开发其它类型的对话机器人时成竹在胸。

第13课:Rasa项目实战之银行金融Financial Bot智能业务对话机器人架构、流程及通过Rasa Interactive实验现象解密
1,使用Rasa Visualize对Financial Bot智能业务对话机器人架构进行解析
2,逐行剖析Rasa Interactive启动内幕及Config文件剖析
3,Rasa 3.X Graph Architecture在Financial Bot智能业务对话机器人中的应用解密
4,使用Rasa Interactive实验Financial Bot进行账户余额查询及现象解密
5,使用Rasa Interactive实验Financial Bot进行transactions消费查询及现象解密
6,action_transaction_search微服务代码解析及SlotSet事件行为分析

第14课:通过Debugging模式贯通Rasa项目实战之银行金融Financial Bot智能业务对话机器人系统启动、语言理解、对话决策、状态管理、微服务调用全生命周期流程
1,使用Rasa shell --debug模式启动银行金融Financial Bot分析
2,Financial Bot的Rasa Server启动、模型加载Debugging内容逐行解密
3,从Rasa 3.X的Graph Architecture的视角分析Financial Bot启动步骤内幕
4,用户输入Message在NLU处理中的各大组件process方法解析
5,基于State而进行的并行policies预测过程解密
6,不同阶段State的出发机制及具体内容剖析
7,使用Financial Bot进行transfer money操作出发form循环分析
8,Rasa Server中的action及Rasa微服务中的action区别和联系源码剖析
9,Slots状态分析和状态管理
10,Financial Bot全生命周期调试总结及进一步的探索思考

第15课:Rasa项目实战之银行金融Financial Bot多种状态转换及Rasa Interactive行为分析
1,使用Rasa Interactive分析Financial Bot从money transfer状态到search recipients状态
2,使用Rasa Interactive分析Financial Bot从money transfer状态到search transactions状态
3,使用Rasa Interactive分析Financial Bot从credit card payment状态到check balance状态
4,使用Rasa Interactive分析Financial Bot从credit card payment整个生命周期流程
5,对于多状态Rasa对话机器人状态切换问题、解决方案及最佳实践分析

第16课:Rasa对话机器人项目实战之银行金融Financial Bot微服务代码逐行解密及工业级对话机器人高级代码最佳实践
1,Financial Bot微服务中使用SlotSet, Restarted,FollowupAction,UserUtteranceReverted等Event解密
2,Financial Bot微服务中对SQLite数据库的使用解析
3,Financial Bot微服务中对自定义Form Validation类CustomFormValidationAction代码逐行剖析
4,Financial Bot微服务中Payment Form Action源码及Validation代码逐行剖析
5,Financial Bot微服务中Money Transfer源码及Validation代码逐行剖析
6,Financial Bot微服务中Transaction Search源码及Validation代码逐行剖析
7,Financial Bot微服务中Explain function源码及触发代码逐行剖析
8,Financial Bot微服务中ActionSessionStart及ActionRestart自定义代码逐行剖析
9,Financial Bot微服务中ActionSwitchForms中的Ask、Deny、Affirm等行为代码逐行剖析
10,Financial Bot微服务中ActionSwitchBackAsk代码逐行剖析
11,Financial Bot微服务中代码总结及工业级Rasa对话机器人代码最佳实践分析

第17课:图解Rasa对话机器人项目实战之银行金融Financial Bot架构视角下的Training及Reference全生命周期、功能实现、及产品的二次开发
1,Rasa 3.X中Graph Architecture解析及其在银行金融Financial Bot中的落地实现
2,Rasa Architecture中的Agent、Channels、NLU Pipeline、Dialogue Policies、TrackerStore等解密
3,Rasa Architecture中的Agent和Action Server的RESTful架构通信内幕解析
4,Rasa Component Training Lifecycle组件实例化、训练及持久化解密
5,Rasa中使用Rule的通用原则及三大经典最佳实践及其在Financial Bot具体的应用
6,Rasa中多任务切换系统stories文件的设计及最佳实践及其在Financial Bot具体应用
7,Financial Bot架构视角下的Training及Reference全生命周期总结及产品的二次开发实践指导


Rasa 3.X 项目实战之保险行业Insurance Bot智能业务对话机器人


本项目是基于保险行业经典场景智能业务而设计实现的Rasa 3.X智能业务对话机器人,以调试Debugging为主线剖析项目架构设计、配置内幕、源码实现、全生命周期调试、多场景测试以及Rasa Interactive Learning等。首先会聚焦Rasa对话机器人项目实战之保险行业Insurance Bot架构设计、流程分析、状态管理及基于Rasa Interactive的智能对话实验剖析,然后会对Insurance Bot微服务代码逐行解析及现场实验剖析,紧接着分享Insurance Bot的NLU及Policies数据内幕解密、源码解析及最佳实践,然后会对Insurance Bot调试Debugging全程实战及背后架构、源码及本质解密,最后通过Rasa Interactive learning解密项目中的各种具体应用场景内幕并完成项目总结。

从功能上讲,该项目实现了保险行业经典场景智能业务中的Quote Enquiry、Claim Setting、Claim Status、Claim Payment、Account Management、Information Query等智能业务交互式对话。尤其是Debugging及Rasa Interactive Learning部分所使用的工具及透过这些工具所呈现出了项目内部的NLU、Dialogue Management及Action运行的内部流程及对各种现象的本质剖析,不仅能够帮助学员从项目动态运行的角度彻底掌握该项目,同时对提升学员对Rasa内核的理解力也会大有裨益。
该项目在Debugging及Interactive交互中展示了大量Rasa对话机器人内核高级架构和开发技术,学员可以在学习完本课程后对项目代码进行二次开发,实现自己的保险服务经典场景智能业务对话机器人任意复杂度的产品。更重要的是,该项目课程中展示的高阶对话机器人实战技术可以帮助学员在开发基于Rasa开发其它类型的对话机器人时成竹在胸。

第18课:Rasa对话机器人项目实战之保险行业Insurance Bot架构设计、流程分析、状态管理及基于Rasa Interactive的智能对话实验剖析
1,通过Rasa Visualize可视化工具详解保险行业Insurance Bot功能及架构设计
2,Rasa 3.X架构中的Agent、NLU Pipelines、Dialogue Policies、Action Server、TrackerStore等详解
3,保险行业Insurance Bot案例对Rasa 3.X各组件的应用示例
4,Insurance Bot对Graph Architecture的具体落地应用
5,逐行解密Rasa Interactive启动过程内幕
6,剖析Rasa Interactive中NLU对Insurance Bot输入的Message的处理:Intents、Entities、Slots
7,剖析Rasa Interactive中Policies触发Insurance Bot Form表单的过程内幕
8,剖析Rasa Interactive中Form运行流程及背后的密码
9,解密Insurance Bot表单提交执行微服务action全生命周期流程及Slots状态管理

第19课:Rasa对话机器人项目实战之保险行业Insurance Bot微服务代码逐行解析及现场实验剖析
1,ValidateQuoteForm三大Slot校验源码详解
2,ValidateQuoteForm三大Slot实验分析
3,ActionStopQuote代码解析及实验分析
4,ActionGetQuote源码逐行解析
5,ActionGetQuote实验分析
6,Rasa Custom Action Server Required Endpoint进程调用数据传输协议及内容剖析
7,extract slot function解密及其妙用分析
8,Address操作相关微服务代码逐行剖析
9,Claim操作相关微服务代码逐行剖析
10,Card操作相关微服务代码逐行剖析
11,Payment 操作相关微服务代码逐行剖析
12,Insurance Bot微服务源码总结及状态操作最佳实践

第20课:Rasa对话机器人项目实战之保险行业Insurance Bot的NLU及Policies数据内幕解密、源码解析及最佳实践
1,为什么有了DIETClassifier及预训练模型Duckling、spaCy等来协同完成意图识别和实体提取却还需要RegexFeaturizer、RegexEntityExtractor及EntitySynonymMapper?
2,RegexFeaturizer配置、原理、示例及文档剖析
3,RegexEntityExtractor配置、原理、示例及文档剖析
4,使用RegexFeaturizer及RegexEntityExtractor的三大最佳实践及其背后的原因剖析
5,EntitySynonymMapper配置、原理、示例及文档剖析
6,EntitySynonymMapper源码实现逐行剖析
7,Rules文件最佳实践剖析及三大经典应用
8,Stories文件最简实践解析及能够使用Stories完成不同任务上下文状态切换的背后Transformer原理解密
9,贝叶斯思想下的NLU及Policies数据最佳实践解密

第21课:Rasa对话机器人项目实战之保险行业Insurance Bot调试Debugging全程实战及背后架构、源码及本质解密
1,Rasa 3.X架构中的Agent、NLU Pipelines、Dialogue Policies、Action Server、TrackerStore等交互关系解析
2,解密Rasa shell –debug启动Insurance Bot中基于Sanic的Agent启动内幕
3,解密Rasa shell –debug启动Insurance Bot中基于TrackerStore启动内幕及最佳实践
4,解密Rasa shell –debug启动Insurance Bot中基于NLU Pipelines各大组件启动内幕
5,解密Rasa shell –debug启动Insurance Bot中基于Dialogue Policies各大组件启动内幕
6,解密Insurance Bot Debugging处理用户输入信息message的语言理解NLU全生命周期内幕
7,解密Insurance Bot Debugging处理用户输入信息message的Policies全生命周期内幕
8,解密Insurance Bot Debugging状态管理全生命周期内幕
9,解密Insurance Bot Debugging中Agent与Action Server交互的全生命周期内幕
10,解密Insurance Bot Debugging中form表单处理的全生命周期及微服务调用内幕

第22课:Rasa对话机器人项目实战之保险行业Insurance Bot调试、interactive learning解密及项目总结
1,使用Debugging模式解密Insurance Bot中的Check Claim Status全生命周期
2,使用Debugging模式解密Insurance Bot中的Pay Claim 全生命周期
3,Rasa Core中action具体请求远程微服务端endpoint数据封装、Aiohttp调用等源码剖析
4,Rasa Core中action具体收到远程微服务端endpoint的响应后进行数据处理以Channel调用等源码剖析
5,使用Rasa Interactive Learning启动Insurance Bot过程详解
6,使用Rasa Interactive Learning解密Insurance Bot的order a new card的全生命周期
7,使用Rasa Interactive Learning解密Insurance Bot的file a claim的全生命周期
8,使用Rasa Interactive Learning纠正Insurance Bot的NLU行为实战
9,使用Rasa Interactive Learning纠正Insurance Bot的Policies Prediction行为实战
10,基于使用Rasa Interactive Learning生成的新增数据分析及对话机器人训练
11,Rasa对话机器人项目实战之保险行业Insurance Bot项目总结


19小时精通Rasa 3.X 项目实战之教育行业Education Bot智能业务对话机器人


本项目是基于教育行业经典场景智能业务而设计实现的Rasa 3.X智能业务对话机器人,以调试Debugging和Rasa Interactive Learning为主线剖析项目架构设计、微服务内幕、源码实现、数据训练、用户信息处理全生命周期、项目自定义扩展等。本课程花了大量的时间对Education Bot微服务这一对话机器人开发者编码的核心上,包含微服务远程通信、微服务进行启动、微服务注册、各类微服务编码、微服务验证、微服务测试与调试等在实际开发中用到的微服务的实践精髓。

从功能上讲,该项目实现了教育行业行业经典场景智能业务中的信息查询、内容推荐、学习引导、疑难问题解答等智能业务交互式对话,从技术上讲是一个一站式教育领域对话机器人解决方案。尤其是Debugging及Rasa Interactive Learning部分所使用的工具及透过这些工具所呈现出了项目内部的NLU、Dialogue Management以及微服务通信过程、Action Server启动、Action运行的内部流程及对各种现象的本质剖析,不仅能够帮助学员从项目动态运行的角度彻底掌握该项目,同时对提升学员对Rasa内核的理解力也会大有裨益。
该项目在Debugging交互中展示了大量Rasa对话机器人内核高级架构和开发技术,学员可以在学习完本课程后对项目代码进行二次开发,实现自己的教育领域经典场景智能业务对话机器人任意复杂度的产品。更重要的是,该项目课程中展示的高阶对话机器人实战技术尤其是微服务、校验技术及各类定制开发功能可以帮助学员在开发基于Rasa开发其它类型的对话机器人时游刃有余。

第23课:Rasa对话机器人项目实战之教育领域Education Bot项目架构、运行测试、流程分析及Rasa Interactive实验分析
1,Rasa内核架构Agent、NLU Pipelines、Dialogue Policies、Action Server、TrackerStore等详解
2,Rasa对话机器人项目实战之教育领域Education Bot项目介绍及架构设计
3,Rasa 3.X Graph Architecture架构密码、Graph Component及数据流解析
4,关于Agent与微服务Action Server交互流程及Action Server把业务处理结果输出全生命周期解析
5,Rasa Shell 启动Rasa对话机器人项目实战之教育领域Education Bot过程剖析
6,通过Rasa visualize解析Rasa对话机器人项目实战之教育领域Education Bot
7,通过Rasa Shell演示Rasa对话机器人项目实战之教育领域Education Bot项目
8,通过Rasa Interactive启动过程训练内容、模型加载及Rasa Server详解
9,通过Rasa Interactive解密教育领域Education Bot中user和bot交互的内幕详情
10,Rasa对话机器人项目实战之教育领域Education Bot项目微服务分析

第24课:Rasa对话机器人项目实战之教育领域Education Bot调试Debugging过程全生命周期实战解密
1,教育领域Education Bot调试Rasa Debugging启动Modules分析
2,教育领域Education Bot调试Rasa Debugging启动Sanic服务器详解
3,教育领域Education Bot调试Rasa Debugging命令终端Cmdline链接解析
4,教育领域Education Bot调试Rasa Debugging中NLU Pipeline组件启动详解
5,教育领域Education Bot调试Rasa Debugging中Policies组件启动详解
6,教育领域Education Bot调试Rasa Debugging中用户信息进入Agent过程详解
7,Education Bot Debugging对用户Message处理的整个NLU生命周期详解
8,Education Bot Debugging的Dialogue Management中Policies并行处理详解
9,Education Bot Debugging中Ensemble产生Action过程详解
10,Education Bot Debugging中的系统事件详解

第25课:Rasa对话机器人项目实战之教育领域Education Bot项目Debugging进阶实战
1,Education Bot对RulePolicy、AugmentedMemoizationPolicy、TEDPolicy使用Debugging实验分析
2,Education Bot在stories中对AugmentedMemoizationPolicy具体应用详解
3,Debugging模式下的Education Bot对TEDPolicy使用源码解析
4,Next Action决策器DefaultPolicyPredictionEnsemble算法剖析及源码讲解
5,专门为faq及chitchat设计的ResponseSelector运行机制详解及Debugging实验
6,Debugging模式下的Education Bot出发out of scope机制分析实验解密
7,Debugging模式下的Education Bot的动态State剖析

第26课:Rasa对话机器人项目实战之教育领域Education Bot项目微服务架构设计及通信协议解密
1,Rasa 3.X Architecture视角下的Agent和Action Server交互过程详解
2,Rasa 3.X Architecture视角下的Message Handling生命周期详解
3,Rasa 3.X官网Rasa Action Server逐句解析
4,Endpoint Request四大核心next_action、sender_id、Tracker、domain详解
5,Endpoint Request中Payload示例JSON内容解密
6,Endpoint Response两大核心events和repsonse详解
7,Endpoint Response中Payload示例JSON内容解密
8,Education Bot项目微服务中过程及代码示例解析
9,Rasa 3.X微服务OpenAPI specification逐行解析

第27课:Rasa对话机器人项目实战之教育领域Education Bot项目微服务下的代理模式及核心组件源码解析
1,Rasa 3.X Architecture下的Agent与Action Server构建的的代理模式微服务解密
2,代理模式下Rasa Core中的Action类代码逐行解密
3,代理模式下Rasa SDK中的Action类代码逐行解密
4,代理模式下Rasa Core中的OutputChannel内幕机制及代码解析
5,代理模式下Rasa Core中的NaturalLanguageGenerator内幕机制及代码解析
6,代理模式下Rasa Core中的DialogueStateTracker内幕机制及代码解析
7,代理模式下Rasa Core中的Domain内幕机制及代码解析
8,代理模式下Rasa SDK中的CollectingDispatcher内幕机制及代码解析
9,代理模式下Rasa SDK中的Tracker内幕机制及代码解析
10,代理模式下Rasa SDK中的DomainDict内幕机制及代码解析

第28课:Rasa对话机器人项目实战之教育领域Education Bot项目Action Server进程启动、微服务注册、微服务调用全生命周期实战及源码逐行解密
1,通过Rasa Interactive的方式实验微服务调用过程日志记录及对日志的分析
2,对Action Server中微服务注册及调用过程日志详解
3,微服务框架核心ActionExecutor类register_action方法源码逐行解析
4,微服务框架核心ActionExecutor类register_package方法源码逐行解析
5,微服务框架核心ActionExecutor类run方法源码逐行解析
6,微服务框架核心ActionExecutor类data structure及coroutines代码分析
7,Rasa微服务进程启动__main__.py文件代码逐行剖析
8,Rasa微服务进行启动app.py代码分析
9,基于Sanic的Rasa 3.X微服务进程启动服务器App实例化方法逐行代码解密
10,基于Sanic的Rasa 3.X微服务进程启动服务器run方法逐行代码解密
11,Rasa微服务endpoint对调用ActionExecutor安装微服务代码解析及实战解密
12,Rasa微服务endpoint对调用ActionExecutor运行微服务代码解析及实战解密
13,通过触发Bug的方式展示和总结Rasa微服务进程启动、服务器启动、微服务注册、微服务调用全生命周期

第29课:Rasa对话机器人项目实战之教育领域Education Bot微服务FormValidationAction案例实验剖析及全生命周期运行源码详解
1,通过Rasa Interactive演示调用FormValidationAction微服务过程问题分析
2,FormValidationAction架构设计及工作机制分析
3,从微服务进程的视角分析FormValidationAction被微服务框架调用的过程及源码解析
4,FormValidationAction的父类ValidationAction设计及源码解析
5,从微服务进程的视角分析Endpoint到ActionExecutor到ValidationAction的整个调用链条
6,ValidationAction的run方法代码调用FormValidationAction代码详解
7,FormValidationAction调用ValidateSubscribeNewsletterForm代码详解

第30课:Rasa对话机器人项目实战之教育领域Education Bot开发事件驱动Event三层设计机制、全生命周期及源码详解
1,从系统视角、应用视角及用户视角看Event的设计和实现
2,从Action Server、Agent及TrackerStore底层架构及交互过程解密Rasa事件机制
3,Rasa SDK下的UserUttered、BotUttered、SlotSet、UserUtteranceReverted、FollowupAction等源码解析
4,Rasa Core中事件机制及源码详解
5,DialogueStateTracker源码详解
6,通过Debugging模式分析TrackerStore和DialogueStateTracker交互关系
7,基于Action Server、Agent和TrackerStore三者相互交互的Rasa事件驱动机制总结

第31课:Rasa对话机器人项目实战之教育领域Education Bot项目微服务源码逐行解密(上)
1,Education Bot项目代码Modules导入分析及最佳实践
2,ActionSubmitSubscribeNewsletterForm源码逐行剖析
3,ValidateSubscribeNewsletterForm源码逐行剖析
4,ActionSubmitSalesForm源码逐行剖析
5,ValidateSalesForm源码逐行剖析
7,ActionExplainSalesForm源码逐行剖析
8,ActionExplainFaqs源码逐行剖析
9,ActionSetFaqSlot源码逐行剖析
10,ActionPause源码逐行剖析
11,ActionStoreUnknownProduct源码逐行剖析
12,ActionStoreUnknownNluPart源码逐行剖析
13,ActionStoreBotLanguage源码逐行剖析
14,ActionStoreEntityExtractor源码逐行剖析
15,ActionSetOnboarding源码逐行剖析

第32课:Rasa对话机器人项目实战之教育领域Education Bot项目微服务源码逐行解密(下)
1,ActionSubmitSuggestionForm源码逐行剖析
2,ActionStoreProblemDescription源码逐行剖析
3,ActionGreetUser源码逐行剖析
4,ActionDefaultAskAffirmation源码逐行剖析
5,ActionDefaultFallback源码逐行剖析
7,ActionRestartWithBotton源码逐行剖析
8,ActionCommunityEvent源码逐行剖析
9,ActionDocsSearch源码逐行剖析
10,ActionForumSearch源码逐行剖析
11,ActionTagFeedback源码逐行剖析
12,ActionTagDocsSearch源码逐行剖析
13,ActionTriggerResponseSelector源码逐行剖析

第33课:Rasa对话机器人项目实战之教育领域Education Bot项目NLU Pipeline、Dialogue Policies、及多意图识别及对话管理解密
1,Rasa Architecture视角晓Agent与NLU Pipeline、Dialogue Policies交互关系解析
2,Education Bot项目NLU Pipeline逐个组件解析
3,Education Bot项目Dialogue Policies逐个组件解析
4,Rasa中Multi-Intent多意图Classifier分类器工作原理和流程解析
5,Rasa中Multi-Intent多意图配置及案例分析
7,Rasa中Multi-Intent多意图Dialogue Management处理机制及实例剖析

第34课:Rasa对话机器人项目实战之教育领域Education Bot项目NLU Data详解
1,Education Bot项目NLU Data架构设计High-Level Structure四大核心解析
2,NLU Training Examples解析及实例分析
3,NLU Entities解析及实例分析
4,NLU Synonyms解析及实例分析
5,NLU Regular Expressions for Intent Classification解析及实例分析
6,NLU Regular Expressions for Entity Extraction解析及实例分析
7,NLU Lookup Tables解析及实例分析
8,NLU Entities Roles and Groups解析及实例分析
9,NLU Entity Roles and Groups influencing dialogue predictions解析及实例分析
10,NLU BILOU Entity Tagging解析

第35课:Rasa对话机器人项目实战之教育领域Education Bot项目Policies Data详解
1,Education Bot项目Policies Data中Stories和Rules分离的架构设计
2,Policies Data中User Messages、Actions及Events三个组件解析
3,Form Events详解及案例分析
4,Checkpoints详解及案例分析
5,OR statements详解及案例分析
6,End-to-end Training工作机制解析
7,End-to-end Training案例分析
8,Rules for the Conversation Start详解及案例分析
9,Rules with Conditions详解及案例分析
10,Skip Waiting for User Input at the End of a Rule
11,Form下的ActionExecutionRejection机制详解
12,对ActionExecutionRejection具体处理实例解析

第36课:Rasa对话机器人项目实战之教育领域Education Bot项目Session自定义、Rich Response解密及案例剖析
1,Domain中的config运行机制剖析及配置实践
2,session_expiration_time设置最佳实践
3,carry_over_slots_to_new_session运行原理解密
4,Session启动事件分析
5,action_session_start运行机制及最佳实践
6,action_session_start自定义设置对话机器人的Memory
7,action_session_start自定义和第三方API整合
8,action_session_start与session_started_metadata综合应用
9,Using Variables in Responses解析与示例
10,Channel-Specific Response Variations解析与示例
11,Conditional Response Variations解析与示例
12,Rich Responses解析与示例

第37课:Rasa对话机器人项目实战之教育领域Education Bot项目Slots内幕解析、Slot Validation Actions剖析、Entities及Intents解析
1,Rasa Slots工作机制及最佳实践解析
2,Slots and Conversation Behavior详解及示例剖析
3,Slot Types:Text Slot、Boolean Slot、Categorical Slot、Float Slot、List Slot、Any Slot详解及示例
4,Custom Slot Types工作机制及示例剖析
5,Slot Mappings详解及示例剖析
6,Mapping Conditions详解及示例剖析
7,Custom Slot Mappings详解及示例剖析
8,action_validate_slot_mappings详解及源码剖析
9,Entities详解及示例剖析
10,Intents详解及示例剖析

第38课:Rasa对话机器人项目实战之教育领域Education Bot项目Form内幕解析及自定义全解
1,Education Bot项目Form使用分析
2,Rasa Form的定义与activation解析与案例剖析
3,Deactivating a Form解析及最佳实践
4,Writing Stories / Rules for Unhappy Form Paths解析及案例剖析
5,Form Slot Mappings剖析
6,Validating Form Input解析及案例剖析
7,Custom Slot Mappings解析及案例剖析
8,Dynamic Form Behavior解析及案例剖析
9,requested_slot slot解析及案例剖析
10,Custom Action to Ask For the Next Slot解析及案例剖析

第39课:Rasa对话机器人项目实战之教育领域Education Bot项目FormValidationAction内幕机制及源码逐行解密
1,基于Rasa微服务的Action的ValidationAction架构解析
2,ValidationAction中提取slots信息代码逐行剖析
3,ValidationAction中validation操作源码逐行剖析
4,ValidationAction中run方法源码逐行剖析
5,FormValidationAction的domain_slots方法代码逐行剖析
6,FormValidationAction的_extract_validation_events代码逐行剖析
7,FormValidationAction的next_requested_slot代码逐行剖析
8,Rasa文档中ValidationAction逐句解析
9,Rasa文档中FormValidationAction逐句解析
10,Education Bot项目FormValidationAction使用分析

第40课:图解Rasa对话机器人项目实战之教育领域Education Bot项目及综合调试Debugging实战解密
1,通过Rasa Architecture图解对话机器人项目实战之教育领域Education Bot项目
2,通过Graph Architecture图解对话机器人项目实战之教育领域Education Bot项目
3,通过Training Flow图解对话机器人项目实战之教育领域Education Bot项目
4,通过Inference Flow图解对话机器人项目实战之教育领域Education Bot项目
5,Rasa Action Server启动详解
6,Rasa Server NLU启动过程Debugging及图解
7,Rasa Server Policies启动过程Debugging及图解
8,通过Debugging的模式解析用户输入Message完整的NLU处理过程
9,通过Debugging的模式解析用户输入Message完整的Policies处理过程
10,通过Debugging的模式解析用户输入Message完整的响应用户的过程

课程名称:Rasa 3.x 源码高手之路:系统架构、内核算法、源码实现详解
Gavin大咖简介
星空智能对话机器人创始人、AI通用双线思考法作者,现工作于硅谷顶级的AI实验室。专精于Conversational AI. 在美国曾先后工作于硅谷最顶级的机器学习和人工智能实验室
Gavin大咖微信:NLP_Matrix_Space
联系电话:+1 650-603-1290
联系邮箱:[email protected]
助教老师微信:Spark_AI_NLP

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

课程介绍:
Rasa是Conversational AI在智能业务对话领域工程落地全球最为成功对话机器人系统,是基于Transformer架构的全球使用最广泛的智能业务对话机器人框架,是NLP技术的集大成者。在当今全球范围各项对比指标综合成绩中,Rasa均处于领先地位:

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

本课程致力于彻底解密Rasa 3.x系统架构、内核算法、知识图谱及源码实现:

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

具体来说,该系统课程是以下五大课程的合集:

业务对话机器人Rasa 3.x Internals内幕详解及Rasa框架定制实战
业务对话机器人Rasa核心算法DIET及TED论文详解及源码实现
Rasa 3.x 语言理解内核Classifiers架构、算法及源码实现
基于Transformer的对话机器人Rasa Policies架构设计与源码全解
Rasa业务对话机器人Microservices微服务架构内幕与源码全解
课程通过这五大阶段内容,按照循序渐进的学习方式,帮助学员彻底精通Rasa新一代内核架构、算法内幕及源码实现。

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

课程答疑:
课程提供配套的视频、代码及资料,购买后联系Gavin获得代码及辅助资料。
课程提供1年的技术答疑服务,Gavin老师负责所有课程技术问题的答疑及代码服务。

课程试听:

代理模式下的Rasa微服务Form共1288行源码架构设计及源码逐行解析
1,Action类型的FormAction和LoopAction类型的FormAction区别与联系分析
2,Rasa微服务接口interfaces.py共370行源码逐行解析
3,Rasa SDK中的forms.py共918行源文件逐行解析

课程详情:


阶段1:业务对话机器人Rasa 3.x Internals内幕详解及Rasa框架定制实战


以Rasa 3.x提出的全新一代Graph Computational Backend为核心,从Rasa版本迭代中的Milestones出发来完全解密“One Graph to Rule Them All”背后的技术衍化过程及根本原因,然后以GraphComponent为核心解密其架构内幕机制和运行流程,并抽丝剥茧的剖析自定义Rasa Open Source平台的接口实现、组件源码、组件注册及使用的每一个步骤,最后用一个完整的案例来做示例,并透过Rasa的核心TED Policy近2130行源码剖析及DIET近1825行源码剖析,让学习者不仅有定制Rasa框架能力,更有大量源码鉴赏的能力及高级的对话系统架构设计思维。

第1课:Rasa 3.x Internals解密之Retrieval Model剖析
1,什么是One Graph to Rule them All
2,为什么工业级对话机器人都是Stateful Computations?
3,Rasa引入Retrieval Model内幕解密及问题解析

第2课:Rasa 3.x Internals解密之去掉对话系统的Intent内幕剖析
1,从inform intent的角度解析为何要去掉intent
2,从Retrieval Intent的角度说明为何要去掉intent
3,从Multi intents的角度说明为何要去掉intent
4,为何有些intent是无法定义的?

第3课:Rasa 3.x Internals解密之去掉对话系统的End2End Learning内幕剖析
1,How end-to-end learning in Rasa works
2,Contextual NLU解析
3,Fully end-to-end assistants

第4课:Rasa 3.x Internals解密之全新一代可伸缩DAG图架构内幕
1,传统的NLU/Policies架构问题剖析
2,面向业务对话机器人的DAG图架构
3,DAGs with Caches解密
4,Example及Migration注意点

第5课:Rasa 3.x Internals解密之定制Graph NLU及Policies组件内幕
1,基于Rasa定制Graph Component的四大要求分析
2,Graph Components解析
3,Graph Components源代码示范

第6课:Rasa 3.x Internals解密之自定义GraphComponent内幕
1,从Python角度分析GraphComponent接口
2,自定义模型的create和load内幕详解
3,自定义模型的languages及Packages支持

第7课:Rasa 3.x Internals解密之自定义组件Persistence源码解析
1,自定义对话机器人组件代码示例分析
2,Rasa中Resource源码逐行解析
3,Rasa中ModelStorage、ModelMetadata等逐行解析

第8课:Rasa 3.x Internals解密之自定义组件Registering源码解析
1,采用Decorator进行Graph Component注册内幕源码分析
2,不同NLU和Policies组件Registering源码解析
3,手工实现类似于Rasa注册机制的Python Decorator全流程实现

第9课:基于Transformer的Rasa Internals解密之自定义组件及常见组件源码解析
1,自定义Dense Message Featurizer和Sparse Message Featurizer源码解析
2,Rasa的Tokenizer及WhitespaceTokenizer源码解析
3,CountVectorsFeaturizer及SpacyFeaturizer源码解析

第10课:基于Transformer的Rasa Internals解密之框架核心graph.py源码完整解析及测试
1,GraphNode源码逐行解析及Testing分析
2,GraphModelConfiguration、ExecutionContext、GraphNodeHook源码解析
3,GraphComponent源码回顾及其应用源码

第11课:基于Transformer的Rasa Internals解密之框架DIETClassifier及TED
1,作为GraphComponent的DIETClassifier和TED实现了All-in-one的Rasa架构
2,DIETClassifier内部工作机制解析及源码注解分析
3,TED内部工作机制解析及源码注解分析

第12课:Rasa 3.x Internals解密之TED Policy近2130行源码剖析
1,TEDPolicy父类Policy代码解析
2,TEDPolicy完整解析
3,继承自TransformerRasaModel的TED代码解析

第13课:Rasa 3.x Internals解密之DIET近1825行源码剖析
1,DIETClassifier代码解析
2,EntityExtractorMixin代码解析
3,DIET代码解析


阶段2:业务对话机器人Rasa核心算法DIET及TED论文详解及源码实现


对一个智能业务对话系统而言,语言理解NLU及Policies是其系统内核的两大基石。Rasa团队发布的最重磅级的两篇论文DIET: Lightweight Language Understanding for Dialogue Systems及Dialogue Transformers是其基于在业界落地场景的多年探索而总结出来的解决NLU和Policies最核心的成果结晶: 其中DIET是Intent识别和Entity信息抽取的统一框架,而基于Dialogue Transformers的Transformer Embedding Dialogue (TED)是面向多轮业务对话信息处理和对话Response技术框架。DIET和TED作为Rasa内核已经经过很多版本的迭代优化,即使Rasa 3.x最新一代架构中依然可以看到DIET和TED的核心位置:

编辑

切换为居中
添加图片注释,不超过 140 字(可选)

可以这么说,掌握这两篇论文是掌握Rasa精髓及背后设计机制的核心之所在。所以星空对话机器人推出了业务对话机器人Rasa核心算法DIET及TED论文内幕详解课程,以抽丝剥茧的方式来逐句解读这两篇论文中蕴含的一切架构思想、内幕机制、实验分析、及最佳实践等所有的密码,以帮助对基于Transformer的对话机器人感兴趣的朋友掌握Rasa内核精髓。

为了更有效的帮助学员达到从模型算法、架构设计、源码实现等角度融汇贯贯通当今工业级最成功的业务对话机器人平台Rasa,除了在课程中逐行解析Rasa的核心TED Policy近2130行源码及DIET近1825行源码外,课程中还增加了Rasa Internals解密之框架核心graph.py源码完整解析及测试中GraphNode源码逐行解析及Testing分析、GraphModelConfiguration、ExecutionContext、GraphNodeHook源码解析、GraphComponent源码回顾及其应用源码。

课程内容:
第1课:多任务对话Transformer架构的DIET中的Intent和NER算法剖析和对比
第2课:基于Transformer的轻量级多任务DIET语言理解NLU内幕解密
第3课:轻量级多任务Transformer语言理解框架DIET试验分析
第4课:使用Transformer Dialogue具有Context的面向任务的对话系统
第5课:具有上下文和抗干扰能力的Transformer Dialogue对话系统Experiments详解
第6课:基于Transformer的Rasa Internals解密之框架核心graph.py源码完整解析及测试
第7课:基于Transformer的Rasa Internals解密之框架DIETClassifier及TED
第8课:Rasa 3.x Internals解密之TED Policy近2130行源码剖析
第9课:基于Transformer的Rasa 3.x Internals解密之DIET近1825行源码剖析


阶段3:Rasa 3.x 语言理解内核Classifiers架构、算法及源码实现


课程关键字:Rasa、NLU、Intent、Classifier、Graph、Transformer、BERT、Fallback、GraphComponent

课程介绍:
本课程聚焦Rasa 3.x Classifier底层Transformer引擎、DIET论文算法、新一代Graph架构、及源码逐行剖析,具体来说:
1,从Transformer及BERT论文及源码实现入手,解密Rasa Classifiers的底层的ML引擎;
2,以DIET论文算法为基石,彻底剖析Rasa新一代NLU核心技术的算法、架构及源码实现
3,基于Rasa 3.x全新一代的Graph Architecture,彻底剖析Graph视角下Rasa NLU Classifiers所有内幕机制及源码实现

课程以抽丝剥茧的方式解密Rasa NLU Classifiers的所有的算法内幕、架构机理、运行流程及源码实现,帮助学员彻底掌握Rasa NLU Classifiers这一核心内容。    

课程内容:
第1课: Transformer论文解密、数学推导及完整源码实现
第2课:BERT论文解密、数学推导及完整源码实现
第3课:轻量级多任务NLP系统DIET论文算法解密及架构解析
第4课:轻量级多任务DIET运行内幕及实现细节剖析
第5课:轻量级多任务Transformer语言理解框架DIET试验分析
第6课:Rasa 3.x全新一代可伸缩DAG图架构内幕
第7课:Rasa 3.x Internals解密之定制Graph NLU及Policies组件内幕
第8课:Rasa 3.x Internals解密之自定义GraphComponent内幕
第9课:Rasa 3.x Internals解密之框架核心graph.py源码完整解析及测试
第10课:Rasa 3.x Internals解密之框架DIETClassifier及TED
第11课:Rasa 3.x Internals解密之DIET近1825行源码剖析
第12课:Rasa Fallback Classifier处理对话失败情况三大处理方式内幕及代码实战
第13课:Rasa Fallback and Human Handoff全解
第14课:Rasa FallbackClassifier源码逐行剖析


阶段4:基于Transformer的对话机器人Rasa Policies架构设计与源码全解


课程关键字:Transformer、BERT、Dialogue Transformer、Rasa 3.x、Dialogue Policies、GraphComponent、TED Policy、UnexpecTEDIntentPolicy、RulePolicy、MemoizationPolicy、Ensemble

课程介绍:

通过超过16小时对基于Transformer的Rasa智能业务对话机器人对话Policies的全部源码进行抽丝剥茧的逐行解析:以BERT为出发点,细致的剖析Rasa Policies核心算法Dialogue Transformer论文内幕及源码实现,同时结合Rasa 3.x的Graph Architecture理念,完成的剖析Rasa Policies架构内幕及源码实现。

本课程不仅能够帮助学员彻底掌握Rasa对话策略的内幕机制、架构设计及源码实现,更重要是会具备定制开发对话策略的能力。

课程内容:

第1课:BERT架构、pretraining预训练、Fine Tuning下游任务微调全生命周期内幕解密
第2课:BERT预训练Pre-training源码完整实现
第3课:BERT Fine-tuning数学原理及案例源码解析
第4课:BERT Paper 论文解密、数学推导及完整源码实现
第5课:Transformer Dialogue论文原理及算法详解
第6课:Transformer Dialogue对话系统论文Experiments详解
第7课:基于Transformer的Rasa Internals解密之框架核心graph.py源码完整解析及测试
第8课:Rasa 3.x Internals解密之TED Policy近2130行源码剖析
第9课:UnexpecTEDIntentPolicy源码研读
第10课:UnexpecTEDIntentPolicy算法源码及IntentTED详解
第11课:Rasa Memoization对话策略及源码解析
第12课:Rasa Rule-based Policies架构设计与源码解析

第13课:Rasa RulePolicy完整源码详解
第14课:Rasa对话策略架构设计及Policy接口源码解析
第15课:Rasa Policy完整源码逐行详解
第16课:Rasa对话策略Ensemble算法内幕与完整源码剖析


阶段5:Rasa业务对话机器人Microservices微服务架构内幕与源码全解


课程关键词:Rasa、Microservices、Knowledge Base、Microservices 、Action Server、Rasa Server、Action、Event、ActiveLoop、LoopAction、FormAction、FormValidationAction、CollectingDispatcher、Tracker、DomainDict、TwoStageFallbackAction、Proxy Pattern

课程内容:

微服务和知识图谱是智能业务对话机器人智能水平高低的决定的因素:是微服务Microservices赋予对话机器人业务处理能力。具备专家领域知识Knowledge的知识图谱系统能够极大的提升业务对话机器人的业务知识和业务对话能力,是智能业务对话机器人提升智能的关键。
本课程聚焦于Rasa这个全世界工程落地最为成功的智能业务对话机器人框架中的微服务及知识图谱架构设计内幕、运行流程机制、案例代码剖析及Rasa微服务及 知识图谱所有的系统源码分析。具体来说:
1,彻底解密基于代理模式的Rasa微服务架构机制内幕、运行流程、及消息通信解析
2,Rasa Server端action.py、loops.py、forms.py、two_stage_fallback.py的源码逐行解析
3,Rasa SDK端所有Event类型的解析及源码实现、interfaces.py及forms.py源码逐行解析
4,源码分析和案例相结合剖析Rasa微服务,通过具体的对话机器人案例验证源码分析
5,课程中还对Rasa Knowledge Base中的ActionQueryKnowledgeBase及实战案例做了透彻剖析    

6,抽丝剥茧的讲解Rasa知识图谱架构原理、流程内幕及其框架的完整源码的逐行分析。

7,在剖析Rasa知识图谱源码的过程中结合具体的案例,帮助学习者通过案例透彻理解Rasa知识图谱框架的每一行源码内幕。
学习完本课程,可以彻底掌握Rasa微服务开发并实现任意复杂度的Rasa对话机器人的业务功能,同时能够用Rasa整合实现任意复杂度的Knowledge系统及业务开发功能。

课程大纲:
第1课:Rasa对话机器人业务逻辑Action Servers架构设计与核心运行流程解密
1,Rasa Server与Action Servers交互关系解析
2,请求执行custom action的RESTful中JSON内容详解及示例
3,Action Servers返回的events及responses详解及示例

第2课:Rasa Events剖析及源码详解
1,Event接口分析
2,14大Event剖析及源码详解
3,Loop相关Event分析及源码详解

第3课:Rasa微服务Action自定义及Slot Validation详解
1,Rasa Action剖析及代码示例
2,ValidationAction剖析及代码示例
3,FormValidationAction剖析

第4课:Form全生命周期解析及Default Actions剖析
1,Form全生命周期运行内幕
2,Form的高级用法
3,Default Actions详解

第5课:Rasa微服务四大组件全解
1,Rasa Actions和Tracker详解
2,Rasa Dispatcher及Event详解
3,关于Metadata的使用及Action Server启动参数详解

第6课:Rasa Core action.py源码剖析之常见类、工具方法及微服务通信类
1,三大常见类Action、ActionBotResponse、ActionListent源码逐行剖析
2,action.py中工具方法源码详解
3,微服务请求核心RemoteAction源码逐行剖析及AIOHTTP使用详解

第7课:Rasa系统内置Action源码逐行解析
1,ActionSessionStart、ActionRestart、ActionBack源码逐行解析
2,ActionEndToEndResponse、ActionDefaultFallback、ActionRevertFallbackEvents源码逐行解析
3,ActionDeactivateLoop、ActionUnlikelyIntent、ActionExecutionRejection源码逐行解析
4,ActionDefaultAskAffirmation、ActionDefaultAskRephrase、ActionExtractSlots源码逐行解析
5,extract_slot_value_from_predefined_mapping源码逐行解析

第8课:Rasa ActiveLoop、LoopAction及TwoStageFallbackAction源码逐行剖析
1,ActiveLoop源码逐行剖析
2,Rasa LoopAction源码逐行剖析
3,TwoStageFallbackAction源码逐行剖析

第9课:654行Rasa LoopAction类型的FormAction源码逐行剖析
1,LoopAction类型的FormAction运行机制和业务开发意义分析
2,Slots状态的管理、校验、和维护源码解析
3,do方法和is_done方法深度分析

第10课:代理模式下的Rasa微服务Form共1288行源码架构设计及源码逐行解析
1,Action类型的FormAction和LoopAction类型的FormAction区别与联系分析
2,Rasa微服务接口interfaces.py共370行源码逐行解析
3,Rasa SDK中的forms.py共918行源文件逐行解析

第11课:Rasa与Knowledge Base进行整合示例分享、架构剖析、及程序开发三步骤
1,Rasa与Knowledge Base整合具体案例分析
2,Rasa与Knowledge Base三层架构及运行流程剖析
3,Rasa与Knowledge Base程序开发的三步骤分析

第12课:Rasa Knowledge Base案例代码、工作机制及自定义详解
1,ActionQueryKnowledgeBase分析及案例解析
2,Knowledge Base Actions工作机制解密
3,Knowledge Base Actions自定义详解

第13课:Knowledge Base功能详解及源码实现
1,Knowledge Base导入包分析
2,KnowledgeBase类源码逐行解析
3,InMemoryKnowledgeBase类源码逐行解析

第14课:ActionQueryKnowledgeBase源码逐行解析
1,对objects的操作源码详解
2,对attriBotes的操作源码详解
3,ActionQueryKnowledgeBase预设值解析

第15课:ActionQueryKnowledgeBase的utils.py源码逐行解析
1,utils.py高频使用的Tracker源码解析
2,默认名称配置解析
3,utils.py文件源码逐行解析

你可能感兴趣的:(自然语言处理)