过去的一年,是大语言模型快速发展的一年。大模型强大的语言理解能力,逐渐让用户习惯了将各类文章丢给大模型,让它来帮忙总结提炼。从产品角度看,这是一次10倍体验的飞跃,意味着巨大的市场机会。也因此,市面上涌现出了大量的文档+大模型的应用。但大多数的开发者普遍都会遇到一个问题,那就是各种文档的效果都想做好,兼容起来太麻烦了,有没有更好的解决方案?
以PDF为例,通常大家会尝试选择开源工具,比如PyPDF2,但发现它们对中文的支持都不太好;有些对行业相对了解的开发者,可能会选择一些付费的OCR api,但往往结果都是按行输出,丢失了段落信息,更不用说对于表格,或者像论文这样的双栏版式的良好支持了。
行内人士都知道,LLM在训练时,通常会采用较多的论文或书籍等知识密度较高的语料。大家一般会采用Markdown格式作为训练语料,这种格式既简单,又能反映一些基本的排版,能很好地表征论文和书籍中的信息。那么很自然地想到,如果模型在做文档问答推理时,给到的内容也是Markdown格式的,效果会不会更好?
对于这个问题,合合信息的回答是肯定的。
合合信息实验结果表明:在同一批合同数据上,用Llama-7B模型,同样的Prompt做信息抽取,比较纯OCR和markdown格式输出的差异,结果发现,Markdown格式的抽取准确率要高于纯 OCR输出不少。
也因此,合合信息决定将智能文字处理领域十几年的积累都利用起来,为当前大模型浪潮下的开发者们,打造一款LLM友好的文档解析产品。
大模型问答应用需要一款怎样的PDF解析工具
经过调研发现,一款好用的PDF解析工具,至少要有3个特性:一是速度快、二是精度高、三是兼容性好。
  • 速度快,是指解析一个文件的耗时要在秒级。尤其对于C端应用而言,如果用户上传一个300页的文档,结果要等上5分钟,这个体验一定是灾难性的。
  • 精度高,是指对于各类版面元素都要有不错的识别效果。不管是公式、表格、还是相对复杂的排版,都能正确理解并准确还原。其中尤其以表格最为关键,如果表格的行列信息错位,会直接导致LLM在理解结论时出错。
  • 兼容性好,是指对于繁杂的PDF编码格式都能正确识别,不会出现乱码、大量丢字等现象。
当然,最基本的还得有产品的稳定性和成本。
  • 作为基础设施,稳定性是立身之本,尤其对于需要文档解析来提供线上服务的应用来说,如果底层基建不响应,精心设计的上层应用自然难以发挥应有的价值。
  • 至于成本,对于要处理大量文件数据的业务而言,一点成本差异乘以巨大的文件数量,也可能导致最终成本难以接受。
最后,这里还想提一个关于开发者友好的需求。不管什么工具,开源的代码也好,闭源的接口也好,最终都是需要开发者集成到自己业务中的。一款开发者友好的工具,能让整个集成调试变得更轻松。最理想的情况是,不需要复杂的debug,不需要安装各种依赖环境,最好直接一键就能完成集成。同时出了问题还有完善的文档体系和售后或是社区支持。
合合信息文档解析实际应用效果
在前面提到的几个特性上,合合信息的文档解析产品,当下到底表现如何呢?
1)速度——长文档秒级处理
这里找了几个长样本,通过接口限定其调用页面数,得到耗时结果如下:

 
同时,团队也测试了不同尺寸的单张图片耗时:
 

 
目前产品还在针对速度做进一步的优化,内部最快的版本,100页的耗时P90小于2.5s,预计5月会上线。
2)精度与兼容性
为了直观展示使用合合信息解析能力后的效果,团队做了一次对比测试。
先用一批样本放到当前主流的几个大模型问答产品中,针对特定内容进行提问。然后挑选出各家产品均未能答对的样本,将其通过合合信息的接口输出为Markdown格式。由于目前仅有两家支持.md格式,因此团队手动将文件后缀改为.txt。然后将该.txt文件上传到各家产品中,再问和之前同样的问题,看回答情况是否有改善。
展示几张主要的结果:
首先是一个扫描件中的无线表格样本。某热门的大模型问答产品,在使用自带的解析时,找到的信息和表格内容不符;换用合合信息的解析结果之后,就能找对正确的数字了。
 

 
 
一张数百页的扫描版书籍,使用自带解析结果时,回答内容并不完全准确,换合合信息的解析结果后,就和原文信息完全能对上了。

 
 
最后是一张会乱码的电子版论文,打开并复制第一段前两行内容后,粘贴出来是乱码,如下:
? <=>?@ABCD $ "@A % KLMN?@OP

QABCDRSTU?VWX89YZ[?@AB
在使用自带解析结果时,直接提示内容乱码,而在使用合合信息解析结果后,便能正确回答问题了。
 

 
 
 
如果尝试过基于开源PDF解析工具,或是开源OCR方案,搭建自己的PDF解析服务的开发者们,应该对文档处理的复杂程度有很深刻的体会。要么是公式精度不够高,输出的latex格式经常语法错误;要么是layout识别不好,需要拼接别的方案;再或者就是花大量的时间维护一套规则,去兼容奇怪的格式。
合合信息想做的,就是帮各位开发者们节省自己宝贵的生产力,和文档打交道这样的麻烦事,让我们来就好。开发者们的精力,如果用来构建自身产品的优势,往往会发挥更大的价值。
3)稳定性——低于万分之一的失败率
当前产品的公有云版本已正式上架,一个多月以来,经过多次迭代,目前的稳定性可以做到页面失败率小于万分之0.5。当然,这也不是终点,合合信息的产品团队期望将整体错误率降低到百万分之一以下,从而为开发者们提供足够可靠的产品。
4)成本——低至1分钱/页
目前平台上提供3个套餐可选,如下图所示:
 

 
如果觉得用量很大,也可以联系商务切换为后付费机制,每月180万页以上调用的,即可按1分钱/页计费。
5)One more thing
过去几个月里,合合信息在金融年报和研报场景下做了不少优化,尤其处理了各种年报中最难的无线表格和合并单元格等。这里向大家汇报一下成果。
首先是对于年报中的多行表头或多行单元格,合合信息的产品能够正确的划分结构,而多数识别引擎会错误折行,或是把第一行表头丢掉。

 
再来一个更复杂的Case,上表中,数据部分只有第一列是多行,干扰情况可能还好。下面这张样本中第二个框里,第一列和后面的数据列,都是多行,不少识别引擎就会将其拆分成多行表格,而实际上,这里应该只有一行。

 
同时,从这个样本也可以看出,对于大多数合并单元格的样本,合合信息的文档解析能按照原始样式进行还原,而不是胡乱拆分。
对于研报这种一页里紧密排了好几张表的样本,合合信息的文档解析也能按正确的顺序和归属,将数据分类对应,拆成独立的表输出。

 
 
如何使用
合合信息文档解析产品已经上架TextIn平台,任何开发者都可以注册账号并开通使用。

 
访问链接,点击【免费体验】,即可在线试用,如下图所示:

 
如果想试试用代码调用,也可以访问对应的接口文档内容:TextIn - API中心 - 通用文档解析。平台提供了一个Playground,帮开发者们预先调试接口。

 
点击页面中【API调试】按钮,即可进入调试页面。

 
 
在这里,可以简单配置一些接口参数,发起调用后,右侧即会出现调用结果。
如果想用python调用,既可以参考平台上的通用示例代码,也可以关注公众号《合研社》,获取一些更全面的demo代码。
尾声
文档解析产品目前正处于内测阶段。正式产品通常有1000页的免费试用额度,在内测期间,平台给每位开发者提供每周7000页的额度福利,关注公众号《合研社》即可领取。欢迎大家提意见或建议。

同时,也欢迎更多从业者来与合合信息技术团队交流,多多讨论,多多碰撞。

这款PDF解析工具,精准触达大模型问答应用的需要的更多相关文章

  1. 付费?是不可能的!20行Python代码实现一款永久免费PDF编辑工具

    PDF(Portable Document Format),中文名称便携文档格式是我们经常会接触到的一种文件格式,文献.文档…很多都是PDF格式.它以格式稳定的优势,使得我们在打印.分享.传输过程中能 ...

  2. 推荐一款免费的PDF转换工具 | PDFCandy

    相信大家在用的PDF转换工具也很多,下面良心推荐这款软件(PDFCandy)给大家,方便在今后的工作中进行运用.提高大家的工作效率. PDFCandy分为两种:网页端和客户端.(根据大家的喜好度来进行 ...

  3. PDF审计工具peepdf

    PDF审计工具peepdf   PDF是Portable Document Format(便携式文档格式)的缩写.它是Adobe公司推出的文件格式规范.现在,PDF是网络电子书籍的主流格式.由于PDF ...

  4. 赞!jsPDF – 基于 HTML5 的强大 PDF 生成工具

    jsPDF 是一个基于 HTML5 的客户端解决方案,用于生成各种用途的 PDF 文档.使用方法很简单,只要引入 jsPDF 库,然后调用内置的方法就可以了.浏览器兼容性: IE 10, Firefo ...

  5. 分析和解析PHP代码的7大工具

    PHP已成为时下最热门的编程语言之一,然而却有许多PHP程序员苦恼找不到合适的工具来帮助自己分析和解析PHP代码.今天小编就为大家介绍几个非常不错的工具,来帮助程序员们提高自己的工作效率,一起来看看吧 ...

  6. Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql、oracle...)间进行数据的传递

    http://niuzhenxin.iteye.com/blog/1706203   Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql.postgresql.. ...

  7. 功能强大的PDF实用工具

    PDF实用工具(PDFTool)是北京博信施科技有限有限公司研制开发的一款专门提供对PDF文件进行编辑.加工的处理软件.本软件具有对PDF文件进行分割.结合.加密.解密.添加水印.设定有效期限等多种功 ...

  8. PDF文件如何标注,怎么使用PDF标注工具

    我们在使用文件的时候需要给文件的部分添加标注,能够更加直观的了解文件,但是有很多小伙伴们对于PDF文件怎么添加标注都不知道,也不知道PDF标注工具要怎么使用,那么下面就跟大家分享一下怎么使用PDF标注 ...

  9. Android程序员不容错过的10款在线实用工具

    Android十款在线工具,在做Android开发过程中,会遇到一些小的问题,虽然自己动手也能解决,但是有了一些小工具,解决这些问题就得心应手了.Android在线工具,包括在线测试工具,及其他较为重 ...

  10. Java:JSON解析工具-org.json

    一.简介 org.json是Java常用的Json解析工具,主要提供JSONObject和JSONArray类,现在就各个类的使用解释如下. 二.准备 1.在使用org.json之前,我们应该先从该网 ...

随机推荐

  1. CF-957(D-E)

    CF-957 赛时A去写全排列--前三题我的写法都挺丑的,后面改进了再更-- Problem - D - Codeforces 虽然是很简单很经典的线性dp,但也是我第一次自己把这种题写出来ヾ(≧▽≦ ...

  2. 启动数据分析软件SPSS17遭遇的两弹窗解决方案

    问题描述 朋友请我帮她安装 SPSS17 这款软件,我寻思这是啥软件,谷歌一下,发现是一个数据分析工具. 在一系列的下一步.确定后,打开时,第 1 个惊喜弹窗来了: [弹窗内容]应用程序无法启动,因为 ...

  3. vue项目读取文件问题

    问题:在src\assets资源目录存放非图片文件无法获取. 解决:将非图片文件存放到public上,读取的时候路径不带public. 例如:资源的相对路径为:public/roboto/1Kg.wo ...

  4. MySQL原始密码登录出现错误

    1.首先查看自己的MySQL安装目录下有没有data文件夹,和bin目录是同级的.要是有就删除,然后执行下列操作.没有就直接执行操作: 2. 以管理员身份运行 cmd.遇到个同学,可能我强调的不够明显 ...

  5. 初读Nginx

    Nginx反向代理:将前端发送的动态请求由Nginx转发到后端服务器 NGINX的好处: 可以缓存,提高访问速度 负载均衡:当请求量过大时,可以按指定方式均衡的分配给集群中的每台服务器 保证后端服务安 ...

  6. 在Linux中清理Buff/cache

    在 Linux 中,缓冲区和缓存是为提高系统性能而保留的,但如果这些缓存过多,可能会消耗大量内存,影响系统的性能.有时候,您可能需要手动清理这些缓存以释放内存.但请注意,通常不建议定期或频繁地这样做, ...

  7. web3 产品介绍 Dune Analytics 区块链的数据探索和可视化 链上热点和趋势一手掌握

    Dune Analytics 是一个强大的数据分析平台,旨在帮助用户在区块链上进行数据探索和可视化. Dune Analytics的特点: 数据查询与可视化:Dune Analytics允许用户从多个 ...

  8. 【转载】 拒绝遗忘:高效的动态规划算法 —— “到底什么是动态规划”—— An intro to Algorithms: Dynamic Programming

    原文地址(英文): https://medium.freecodecamp.org/an-intro-to-algorithms-dynamic-programming-dd00873362bb   ...

  9. 乌克兰学者的学术图谱case2

    ======================================= 0. 学者:Солонін Ю.М. 中文翻译名:索洛宁·尤里·米哈伊洛维奇 英文翻译名:Solonin Yuriy M ...

  10. 【转载】Ubuntu20.04安装Bazel

    原文地址: https://zhuanlan.zhihu.com/p/311406177 ====================================== sudo apt install ...