100页2秒?我们为什么需要这样的文档解析速度

近期,TextIn通用文档解析完成最新一版产品迭代,将100页文档解析速度提升至最快2秒以内

P50(百页)

P90(百页)

P95(百页)

P99(百页)

平均(单页)

TextIn

1.46s

1.75s

2.07s

2.62s

0.015s

表格中“P50”代表中位数响应时间。这意味着在所有测试样本中,有一半的响应时间低于P50值,而另一半高于这个值。同理,“P90”代表90th percentile(90百分位)的响应时间。在本次性能测试中,这表示90%的文档解析操作都在1.75秒以内完成,这也是大部份用户获得的使用体验。

发版后,有用户在技术交流群和我们探讨了C端使用感受,在认可产品使用体验的同时,他向我们提出了一个有趣的问题:对个人用户来说,用5到6秒解析一篇长文档是可以接受的等待时间,为什么TextIn技术团队不断优化解析速度,甚至将百页文档的解析时间压缩至2秒以内呢?

我们将通过本篇文章解答这个有趣的问题。

1 为什么我们需要速度够快的文档解析工具

1.1 赋能大数据场景

我们可以金融大数据业务场景为例。

对金融大数据服务商而言,短时间、大批量数据输入属于常见场景。为了提供及时正确的大数据查询和检索服务,在数据更新频繁时期,例如每年财报、年报季,相关企业对T+0完成数据库更新有明确需求,且要求较高的质量标准。

传统数据录入首先需要进行数据清洗,并通过编写大量正则表达式提取网页内容,但面对文档类数据,传统方法不能实现有效处理。格式繁多、版面复杂的文档成为数据被“隐没”的地方,其中的重要信息难以高效、准确地转变为可使用的数据形式。

当大模型的企业级应用逐渐落地,金融大数据行业范式发生了改变。目前,“数据 + 文档解析 + LLM + Prompt”的模式成为新的优选。

与编写正则表达式相比,写Prompt相对更容易维护,也能降低门槛便利使用者。同时,借助大模型出色的读取、理解与生成能力,从业者得以提升内容解读与数据分析能力。需要考虑的环节问题简化为一点:如何将文档中的内容转化为对LLM友好的格式,成为LLM可读可分析的数据信息?

我们给出的答案是:高效、稳定、可靠的文档解析工具。

在金融大数据业务场景下,一款好用的文档解析工具需要具备以下特征:第一,足够快的解析速度:在数据录入密集期,新发布的财报、年报、法律文书等文件数据需要在数据发布的当天立刻上线;

第二,准确还原各类表格结构:报告中经常包含无线表、跨页表格、合并单元格、密集表格等等复杂结构,对非结构化数据提取而言,失之毫厘,差之千里,不够精准的内容输入将影响数据库的质量;

第三,良好的兼容性:对各类版式都要有良好的兼容性,降低解析失败率。

其中,速度是实现高效业务运转的关键所在。一般而言,上市公司年报在200至300页以上,TextIn文档解析工具的解析效率可以支持将数千家企业年报在8小时内完成数据读取,协助大数据企业完成上线。

1.2 加速大模型训练

大模型的表现很大程度上取决于它对人类语言的理解和生成能力。由于自然语言本身的复杂性和多样性,这项任务充满挑战,而在这个过程中,LLM(大语言模型)的训练显得尤为重要。

在训练过程中,借助海量数据预训练的深度学习模型,LLM通过处理超大规模的文本数据来学习语言的规律、语义和上下文,从而获得对自然语言的理解和生成能力,并进一步应用于翻译、对话、问答、文本生成等不同场景。

LLM 训练质量对大模型的性能和应用具有决定性影响。经过高质量训练,大模型能在语义理解、文本推理等任务中表现更佳。而为了实现高质量的 LLM 训练,除了充分的计算资源外,高质量的数据是最重要的因素之一。通俗来说,“喂”给大模型的数据决定了LLM的性能。

快速、准确的文档解析工具将有效加速大模型训练进程。

一方面,对复杂版面的准确识别、良好的格式兼容性将提升预训练数据的质量;另一方面,大模型预训练文本数据量往往以数千万页计。目前,以3000万页PDF文档为例,市面上工具的普遍处理时间大约在接近两周。按TextIn当前版本速度计算,预计可在5个工作日内实现解析,时间差异将达到一周以上

在效率为王的AI时代,对开发者而言,一周多的时间可以对研发周期起到关键作用。一款好的文档解析工具能为大模型开发与应用装上“加速器”。

1.3 优化C端用户使用体验

目前,在C端使用方面,文档问答的用户体验仍有待提升。例如,如果用户上传一份较大的扫描文档或书籍,经常会超出大模型的文档大小限制,或在长时间加载后显示解析失败。

同时,受限于网速与算力,上传文档后等待解析是大模型问答产品的常见状况,一般来说,解析时间短则十几秒,长则数分钟,是用户使用过程中的常态。

对C端用户来说,高速、稳定的文档解析也将有效提升使用体验,让扫描文档、复杂版式不再成为大模型问答应用的阻碍,帮助大模型检索获取更准确的信息,从而提升问答效果。

2 TextIn vs. X:当前产品能实现的解析速度

TextIn文档解析百页2秒的速度在业内处于怎样的水准?

要回答这个问题,速度测试可以为我们展现最直观的数据。

以一份企业年报为例,我们对当前产品能够实现的解析速度进行对比测试。

我们选择的企业年报文件大小为38.8MB,共49页,文中包含形式多样的图表、数据、证照等页面,如下图所示。

我们使用TextIn、Llamaparse及国内某常用大模型问答产品对文档进行解析。

LlamaParse是由LlamaIndex创建的一项技术,用于解析和表示PDF文件,以便通过LlamaIndex框架进行高效检索和上下文增强,适用于复杂PDF文档,是目前讨论度较高的开源解析器。使用对话式大模型进行文档解析与问答则是现在C端的常用场景。我们使用同一份文件,选择这两款产品与TextIn进行测试,速度测试结果如下。

TextIn

Llamaparse

国内某大模型

解析速度

1.779s

/

11.10s

端到端速度

18.743s

26.50s

36.39s

截图

注:在TextIn接口输出结果中,duration时间单位为毫秒。

对TextIn与llamaparse,我们使用的方式均为调用API接口,并使用测试脚本,可以直观地看到运行所用时长。对于大模型产品,我们上传一份PDF后,界面上会先后显示“上传中...”和“解析中...”两种状态,表格中端到端时间计算方式为上传与解析时间总和。其中,“上传中”这个状态,在控制面板中对应的是一个xhr请求。上传完成后转换到“解析中”状态,该状态对应的是“parse_process”这个请求。

我们列出了各个产品的解析速度与端到端速度(含上传时间)。测试均在相同网络情况下进行。其中,Llamaparse不支持解析速度的单独获取,仅可测量端到端速度。

对于同一份文档,TextIn文档解析具体展现了强大的速度优势。在企业级的使用场景下,当文档数量以百万,甚至千万页计,解析速度将成为影响业务场景落地、大模型开发效率重要的因素之一。

3 试用当前版TextIn文档解析工具

如果当前就有相关需求,TextIn文档解析是否可以随时调用?

在TextIn平台,开发者可以注册账号并随时试用最新版TextIn文档解析工具。

访问链接:https://www.textin.com/market/detail/pdf_to_markdown

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

如果想尝试代码调用,也可以访问对应的接口文档内容:

https://www.textin.com/document/pdf_to_markdown

平台提供了一个Playground,帮开发者们预先调试接口。

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

在这里可以简单配置一些接口参数,发起调用后,右侧就会出现调用结果。

如果想用python调用,既可以参考平台上的通用示例代码,也可关注公众号《合研社》,获取更全面的demo代码。

文档解析产品目前正处于内测阶段。正式产品通常有1000页的免费试用额度,在内测期间,平台给每位开发者提供每周7000页的额度福利关注公众号《合研社》即可领取。欢迎大家与我们团队多多交流,提出意见或建议。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/846807.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记某网关系统通用漏洞的挖掘

前言 本篇文章分享一下通用漏洞挖掘的过程,想要获得通用漏洞证书,首先要求是中危及中危以上的通用型漏洞且所属公司的注册资本大于5000万。挖掘一个漏洞其实不难,个人觉得是目标公司资产的搜集。访问CNVD平台发现某网关系统被师傅提交过任意…

V神的傲慢与偏见

原创 | 刘教链 隔夜BTC(比特币)小幅回升至5日线67.7k附近。前日5.31教链内参“美核心通胀放缓,利好宽松周期落地”[链接]提到,以太坊创始人Vitalik Buterin(V神)新发表了一篇长文,主题是关于他“…

H6911 DC2.6-40V升压IC 升24V36V48V60V80V100V10A数转模无频闪LED芯片

H6911 DC2.6-40V升压IC是一款升压恒流LED恒流驱动器,具有多种特点,适用于多种的LED照明应用领域。以下是关于该产品的详细解释: 一、产品概述 H6911是一款专为LED照明设计的升压恒流驱动器。它能在2.6至40V的宽电压范围内稳定工作&#xff0c…

性能优化随笔(一)

在软件开发过程中,一般要先实现功能方面的需求,功能方面的需求开发完毕之后,往往会考虑性能方面的优化。在业务发展的初期,性能往往能满足使用的需求,这时性能优化不是必不可少的。随着业务的发展,软件复杂…

Window11开放端口

(1)打开控制面板,进入【控制面板\系统和安全\Windows Defender 防火墙】 (2)点击左侧菜单【高级设置】,进入防火墙设置页面 (3)根据需要选择【入站规则】或者【出站规则】&#xff…

粒子群算法Java实现

粒子群算法(Particle Swarm Optimization,PSO)是一种受到自然界群体行为启发的优化算法,由James Kennedy和Russell Eberhart于1995年提出。该算法模拟了鸟类或其他动物群体(如鱼群)的社会和集体行为&#x…

C++:特殊类设计和四种类型转换

一、特殊类设计 1.1 不能被拷贝的类 拷贝只会放生在两个场景中:拷贝构造函数以及赋值运算符重载,因此想要让一个类禁止拷贝,只需让该类不能调用拷贝构造函数以及赋值运算符重载即可。 C98: 1、将拷贝构造函数与赋值运算符重载只…

linux 内核映像差异介绍:vmlinux、zImage、zbImage、image、uImage等

一、背景 Linux内核是整个Linux操作系统的核心部分,它是一个负责与硬件直接交互的软件层,并且提供多种服务和接口,让用户程序能够方便地使用硬件资源。 当我们编译自定义内核时,可以将其生成为以下内核映像之一:vmli…

WordPress博客主题触屏版社区源码

下载地址:WordPress博客主题触屏版社区源码

【Java面试】八、MyBatis篇

文章目录 1、MyBatis执行流程2、MyBatis延迟加载使用3、MyBatis延迟加载的原理4、MyBatis的一级、二级缓存4.1 一级缓存4.2 二级缓存4.3 注意点 5、面试 1、MyBatis执行流程 从mybatis-config.xml读取配置(数据库连接信息,xml映射文件) 构建…

LeetCode 算法:无重复字符的最长子串c++

原题链接🔗:无重复字符的最长子串 难度:中等⭐️⭐️ 题目 给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所…

透视 static 和 extern 对函数的重大影响

目录 一、生命周期和作用域1、生命周期2、作用域 二、static 的影响1、static的作用2、static 修饰局部变量 三、extern 的魔力四、static 与 extern 的协同与冲突1、static修饰全局变量2、static修饰函数 在 C 语言的世界里, static 和 extern 这两个关键字在函数的…

[图解]企业应用架构模式2024新译本讲解07-表模块4

1 00:00:00,360 --> 00:00:07,030 这里面实际上就是通过一个方法,一个操作来封装了 2 00:00:08,790 --> 00:00:10,630 它不直接就操纵这里面 3 00:00:10,640 --> 00:00:12,070 不是直接把里面露出来 4 00:00:14,990 --> 00:00:20,430 产品ID进来&…

【MySQL数据库】:MySQL内外连接

目录 内外连接和多表查询的区别 内连接 外连接 左外连接 右外连接 简单案例 内外连接和多表查询的区别 在 MySQL 中,内连接是多表查询的一种方式,但多表查询包含的范围更广泛。外连接也是多表查询的一种具体形式,而多表查询是一个更…

R语言绘图 --- 气泡图(Biorplot 开发日志 --- 4)

「写在前面」 在科研数据分析中我们会重复地绘制一些图形,如果代码管理不当经常就会忘记之前绘图的代码。于是我计划开发一个 R 包(Biorplot),用来管理自己 R 语言绘图的代码。本系列文章用于记录 Biorplot 包开发日志。 相关链接…

【全开源】种草分享|动态朋友圈|瀑布流|uniapp

一款基于FastadminThinkPHP和Uniapp开发的种草分享评论点赞消息提醒系统,发布动态,分享种草生活,可以收藏关注点赞,消息提醒,同时支持H5/小程序/app多端。 ​让每一次互动都不再错过🔔 🌱 种草…

代码随想录算法训练营第二十五天| 216. 组合总和 III、17. 电话号码的字母组合

[LeetCode] 216. 组合总和 III [LeetCode] 216. 组合总和 III 文章解释 [LeetCode] 216. 组合总和 III 视频解释 题目: 找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该…

Fiink的简单学习一

一 相关大数据概念 1.1 根据时间 1.实时计算: 数据实时处理,结果实时存储 是一种持续、低时延、事件触发的任务 2.离线计算: 数据延迟处理,结果N1模式(昨天的数据今天存储) 是一种批量、高时延、主动发起的计算任务 1.2 处…

算法金 | 再见,支持向量机 SVM!

大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」 一、SVM概述 定义与基本概念 支持向量机(SVM)是一种监督学习模型,用于解决分类和回归问题。它的核…

软件杯 题目:基于卷积神经网络的手写字符识别 - 深度学习

文章目录 0 前言1 简介2 LeNet-5 模型的介绍2.1 结构解析2.2 C1层2.3 S2层S2层和C3层连接 2.4 F6与C5层 3 写数字识别算法模型的构建3.1 输入层设计3.2 激活函数的选取3.3 卷积层设计3.4 降采样层3.5 输出层设计 4 网络模型的总体结构5 部分实现代码6 在线手写识别7 最后 0 前言…