
一个月前,我们开始了"RPA流程机器人+LLM模型"帮助财务资金组自动处理银行票据场景的小项目。我们使用RPA流程机器人自动登陆业务系统,模拟业务人员审批每一张银行票据的操作,而对票据图像信息的识别和提取交给了Qwen2.5-VL千问LLM模型。集团为我们提供了模型和Dify AI agent智能体平台,我们只需要简单的配置,就可以搭建好一个专门识别图片票据的AI智能体。它最终提供的形态是一个API服务接口,输入票据图片,输出图片上的字段数据。
关于OCR产品选型 ,坦率的说,项目组用AI模型对票据识别这块新东西,大家都是在摸索中学习。一开始,我们倾向于专业的OCR识别软件,LLM模型只是我们的备用方案,但当两种技术用同样的票据样本测试时,我们发现专业的OCR一体机居然没有LLM模型识别率高,且我们这次的场景中,有一半的票据是没有固定格式的银行回单,对于没有固定格式的票据,OCR一体机每次都要学习和优化,在效率上差强人意。OCR硬件一体机厂家也提供LLM大模型的方案,从厂家的测试反馈,LLM大模型做票据OCR识别确实更胜一筹。也许这同我们选择"视觉理解冠军的Qwen2.5VL"有直接的关系。https://blog.csdn.net/ot512csdn/article/details/154193889
关于提示词与识别率,LLM大模型的使用,只需要用户写好相应的提示词,用"自然语言"告诉大模型怎么做就行了。一开始,项目组对于写票据提示词也是小白,但每天我们有大量的样本来测试,经过不断的尝试,我们不断的优化提示词,识别率越来越高。我们也开发了批量测试工具,点一下就可以让大模型同时并发10次识别,工具自动对全部返回的信息做一一检查比对,来验证AI是否识别得绝对准确,这样我们就可以高效率的完成测试。最终,我们发现,排出了生疏的提示词后,让AI发挥全部的能力,它对票据的识别能力已经达到了同人一样的水平。人看不清,它也看不清,人看得清,它基本能够识别正确。那这里Qwen2.5VL对票据识别提示词的优化,我的经验如下:
1、让AI准确输出固定的字段。
2、把AI的热度调整为0,这样不仅能减少错误,还能提升速度。
3、对于每一个输出的字段,可以单独告诉AI,你想要什么,让它避免什么。比如这句我灵感一闪创新出的提示词,一下把识别率提升了一成:"收款人户名"字段: 一般在票据的右边,如果识别到名称中包含类似"XXX"的文字,请把类似文字换为"XXX"后再把全称输出。
To Be Continue...