赞
踩
要做一个基于PaddleNLP-uie的表格关键信息抽取应用,并且把这个应用部署到服务器上去,经历了很多,现在做的记录供参考。
一:环境准备和参考
首先参考的项目是官方的,具体链接如下
https://github.com/PaddlePaddle/PaddleNLP/blob/develop/model_zoo/uie/README.md
其次参考的是比较好的csdn博主 z5z5z5z56
【PaddleNLP-kie】关键信息抽取2:UIE模型做图片信息提取全流程-CSDN博客
这个写的真的比较完善,十分感谢。
尽管官方的环境安装等比较完善,但是经过我的实战我推荐基于docker环境去做,镜像链接。
二:训练中的标注
训练中的标注有两种模式
官方推荐使用数据标注平台doccano 进行数据标注,这种比较适合文本的标注。因为我们是基于图片的数据集去标注,所以本样例使用数据标注(label_studio),前面的提到博主写的已经非常完善了,同时在这里补充下就是标签的提前放置和标签之间的类别关系,都要注意。这次先在这里放一下,后面会专门出一个标注的过程遇到的问题。
三:服务化部署中schema的设置
基于simpleServing部署的,官方部署的方法很详细,但是注意到在question中提出的问题,如下
[Question]: UIE使用simpleServing部署,如何通过参数动态修改schema,会永久修改模型的schem?
[Question]: 在信息抽取任务中,使用SimpleServing进行部署,如何想要替换schema该如何操作?
所以,因为给的样例client或者通过任何client端请求post服务时,需要传递schema参数,表格有一定的特殊性,比如说该表格的类型只需依据特定的表头返回相应几项内容,那么这就需要在服务端进行设置,包括所有的配置都在服务端。 我的做法是按照官方说的那样需要在app.register_taskflow("taskflow/uie", uie,taskflow_handler=MyTaskflowHandler)中启用taskflow_handler,其中MyTaskflowHandler是自己需要定义的类,这个类里面可以完成上述的需求,并且可添加导入需要请求表格的json的配置文件。MyTaskflowHandler参考了MyTaskflowHandler参考链接
四:最后
环境等完全可以按照上面的链接进行,至于训练标注和定制服务端的,这个需要根据具体需求进行更改的,后面会详细完善一下的。后面会针对标注和相应的服务部署,具体写一下的。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。