加载模型的代码如下:
logger.info(f"Loading model {model_tar}...")with tempfile.TemporaryDirectory() as temporary_directory:try:metadata, runner = loader.load_predict_graph_runner(Path(temporary_directory),Path(model_tar),LocalModelStorage,DaskGraphRunner,)return os.path.basename(model_tar), metadata, runnerexcept tarfile.ReadError:raise ModelNotFound(f"Model {model_path} can not be loaded.")
6.rasa/engine/loader.py文件??在rasa/engine/loader.py
文件中,def load_predict_graph_runner()
函数如下:

文章插图
三.遇到的问题和说明1.如何用PyCharm调试Rasa项目解析:一种是基于Script path的调试方法,一种是基于Module name的调试方法 。这里介绍前者如下所示:

文章插图
(1)Script Path:安装rasa类库的
__main__.py
文件路径 。(2)Parameters:rasa的各种cli,比如train、test、shell等 。(3)Working directory:安装rasa类库的根目录 。说明:因为rasa类库依赖类库太多导致系统环境混乱,所示建议使用虚拟环境进行rasa类库安装 。2.NoConsoleScreenBufferError解析:exception=NoConsoleScreenBufferError('No Windows console found. Are you running cmd.exe?')

文章插图
3.模型20220915-081548-honest-yield.tar.gz解析:由metadata.json文件和components文件夹组成,后者和config.yml内容密切相关,如下所示:

文章插图
4.Sanic框架解析:Sanic是一个高性能异步的Web框架 。
5.asyncio库解析:它的编程模型是一个消息循环,关键字涉及event_loop、coroutine、task、future、async/await等 。
??本文只是简要的介绍了rasa shell命令启动后的程序执行过程,但是对于加载模型后如何解析模型构建图,以及用户输入后,消息如何通过模型(nlu和dialog policy)得到输出并没有介绍,后面写篇文章专门介绍 。
参考文献:[1]Rasa实战:构建开源对话机器人[2]Sanic官方文档:https://www.osgeo.cn/sanic/[3]asyncio库异步I/O:python.org/3.7/library/asyncio.html" rel="external nofollow noreferrer">https://docs.python.org/3.7/library/asyncio.html[4]聊天机器人框架Rasa资源整理
吾爱DotNet

文章插图
专注于.NET领域的技术分享
人工智能干货推荐

文章插图
专注于人工智能领域的技术分享
推荐阅读
- 微信如何发朋友圈(怎么转发别人的朋友圈)
- 石头扫地机器人t7怎么连手机_石头扫地机器人t7连接手机方法
- 如何恢复不是本人的微信聊天记录(怎么防止第三方恢复微信聊天记录)
- 微信怎样建立只有自己一个人的微信群(微信群管理制度公告)
- 古代的夏日饮品 古人的“续命水”养生又解暑
- 手相女右手解析 教你如何看懂女人的手相
- 关东煮设备多少钱一台 关东煮机器多少钱一台
- 我24小时便利店员 关东煮机器多少钱一台
- 过年回家的句子心情短语 过年回家感人的句子
- 找二婚女人的三大忌【找二婚女人注意事项】