不er,RSI应用在OCR上,效果这么猛??


最近,一个参数量仅1.3B的国产开源模型,打爆了文档解析。


OmniDocBench、olmOCR-Bench和DocParsingBench,三榜第一。


跑分啥的就不多说了,咱直接来看效果图。


高数古法手写笔记,一键转MD。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


甚至连化学结构图都能画得出来。。。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


就离谱,基本万物可解析了。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


但我没想到的是,居然速度还快得一匹???


单张RTX PRO 6000,完成100页端到端文档解析,仅耗时101秒。


坏,A社这下蒸馏纸质书的效率得起飞了(bushi)。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


在海外开发者社区也是火爆了,已经获得1.1K+ GitHub Star。


还一度成为推特最热Daily News。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


而这一切的一切,都离不开如今AI行业最性感的那个概念——


RSI。


这个自进化加持的OCR新物种,名为OXR。


Optical「Everything」Recognition。


三榜全球第一


文档解析,一座听着没啥技术含量,但至今仍未被完全攻克的高山。


传统OCR面对一份看似平平无奇的PDF,很多时候基本就是灾难现场。


双栏论文串行,手写公式识别成一堆乱码,跨页大表格结构直接崩解,至于化学结构式,很多工具干脆直接当成杂乱线条丢弃。。。


这种劣质提取一丢进RAG,模型再聪明,下游的Tool Call也得全部歇菜。


如今,这个妨碍AI获取高质量上下文的壁垒,终于被打爆了。


  • OmniDocBench:97.18,第一(上海人工智能实验室开源,覆盖10类复杂文档)
  • olmOCR-Bench:87.84,第一(海外知名人工智能机构Ai2团队推出,7000多道单元测试级硬核题目)
  • DocParsingBench:87.76,第一(#1,覆盖5大行业、14个真实业务场景)


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


一个名为OXR的开源文档解析模型,三项世界级榜单,全部登顶。


并且,整套评测流程和代码,全量开源可复现。


我也上手简单试了一下,确实不太一样。终于不是人工智障了。


以前的工具,我基本只指望它能把图变成字,剩下的就靠AI自己推理意会了。


而OXR能一口气吞下13类文档元素:


表格、公式、代码块、图片、化学方程式、脚注、页眉、页脚、印章……


应用在具体场景下,是这样的——


杂志,输出保留完整语义结构、阅读顺序的结构化MD。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


数理公式,直接转成标准的LaTeX代码。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


文献?


也别让LLM自己慢吞吞地调用工具阅读了,双列排版也不影响质量。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


甚至,连数学试卷也能解析???


看来以后GPT能更好地帮助小学生完成暑假作业了o(╥﹏╥)o。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


当然,最令人激动的,还是开源这件事。


要知道,这类垂直小模型,和LLM开源的意义是很不一样的。


我说实话,LLM开源虽好,但基本和普通用户是没太大关系的。


就算是一个只有27B的模型,本地部署成本也高得离谱,起码上个M5 Pro 64G吧,这还不考虑输出速度的问题。


但OXR这家伙,就1.3B啊。。。


什么概念?


你拿张RTX 3060,基本就能满血跑,无限薅羊毛。


海外开发者们也是皆大欢喜了。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


有点东西。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


所以,一个1.3B的文档解析模型,究竟是怎么实现准确率SOTA的?


秘密,全部藏在后训练——


居然靠的是RSI???


揭秘RSI训练


长期以来,大家都有一个思维定势:


AI要做到极致高精度,必须堆百亿级大模型,堆海量人工标注。


但说实话,文档解析这个领域,标注数据简直就是个无底洞。


排版千奇百怪,专业公式、代码、图表错综复杂,纯靠人工标注不仅成本高到上天,而且人工标注的错误率本身就高得吓人。


真实世界里的长尾Bad Case你根本穷尽不了。工程师辛辛苦苦挑出坏样本、人工修正、重新训练,好不容易发了个新版本,遇到新的奇葩排版还是会挂。


数据准备的速度,死死卡住了模型进化的脖子。


团队在这方面做了比较激进的探索。


他们意识到,文档解析长期以来,都有一个容易被忽视的特性:


每一份输入,都有客观确定的标准答案。


文字对不对、表格跨行跨列有没有错、公式符号有没有漏,都能被精确测量。


既然能客观判断对错,那为什么还要等人类来擦屁股?


做完这个思维实验后,OXR做了一个决定:


在后训练阶段,引入面向文档解析的递归自我改进(RSI)训练范式。


不依赖新增的人类手工标注,让AI系统自己找错、自己分析原因、自己准备下一轮训练数据、自己迭代进化。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


这个RSI过程,大致可以分为三个阶段:


1、预测与分类(Prediction&Classification)


OXR先去解析海量的无标签真实文档。


紧接着,通用多模态模型(General VLM)登场,结合原始图像、解析结果和评判标准,把样本切分成三类:


  • Correct:完全正确,直接通过。
  • Wrong:明确判错,送去深度剖析。
  • Uncertain:预测不稳定,或者处于分布边缘,同样送去分析。


保留Uncertain这一档,是个比较反直觉的Know-How。


如果你只给模型Correct和Wrong两个非黑即白的选项,评判模型的犹豫就会被强行包装成一个确定标签,最后把毒素喂给下一轮训练。


有了Uncertain,拿不准的样本就能被兜底。


除了VLM外,OXR还会对自己进行多次rollout采样。


一份文档如果跑几次出来的结果大相径庭,说明模型底气不足,哪怕碰巧蒙对一次,也会被直接扔进Uncertain集合。


最后,在语义完全不变的前提下,系统会针对这些高分歧样本做轻微的图像扰动(小幅缩放、压缩、轻微模糊或平移)。


如果加了扰动后分歧进一步扩大,说明模型对这类无害的视觉变化过度敏感,这个扰动动作就会被当场记录为一条核心病因,直接指导下一轮针对性补强。


2、归因与训练规划(Attribution&Training Planning)


把错样本和弱样本筛出来之后,绝不能直接乱喂给模型,你得搞清楚它到底死在哪儿。


在这个阶段,General VLM会像一个老医生一样,逐个样本去诊断:是跨列单元格对齐失败,还是手写连笔识别错误?


诊断出的自然语言原因,会被输入到SigLIP2提取特征向量,然后通过独立的聚类模型进行聚类,形成清晰的原因簇(Reason clusters)。


比如,一张财务报表和一张化学实验记录表,外观和文字八竿子打不着,但如果归因聚类发现它们都死在某种罕见的跨行跨列结构上,这就会被提炼为一个共同的数据构造方向。


这就是精准打击,哪儿薄弱补哪儿。


3、数据生成(Data Generation)


有了明确的原因簇,生成器就知道该练什么题了。


OXR的具体做法是:原因簇提供结构难点,真实样本池提供版式与视觉风格参照。


每一次生成新数据,都会从真实样本中抓取排版风格作为锚点,把需要攻克的结构难点自然地融入进去。


前面在扰动测试中发现的视觉脆弱点,也会被系统性地编入合成管线,强制模型在练习中反复脱敏。


最后,生成出来的数据经过严格规范校验,直接回流去训练下一代OXR。


一轮跑完,模型的短板被补齐;新一轮真实文档再跑,又会暴露出新的短板,驱动下一轮迭代。


RSI,自此成型。


数据分布在每一轮迭代中变得越来越完备、越来越扎实。


这也是OXR能做到如此高智能密度的原因。


当数据质量高到一定程度,模型就不再需要靠臃肿的参数量,去死记硬背。


架构轻巧可插拔


聊完数据和算法,我们接着看下一个问题。


准确度第一,我可以理解。


但速度也是第一,是啥情况啊???


在单张RTX PRO 6000上,OXR端到端解析100页文档只要101.0秒,开源第一。


最开始我以为是参数小的原因。


但后面我才发现,文档解析这件事,光靠模型小,是做不到的。


这背后有很多反直觉的Know-How。


回顾这两年文档解析的技术演进,行业里其实走过了好几个阶段。


最开始大家搞Pipeline,检测、识别、排序各用一个独立专有模型,拼起来极其臃肿,维护成本上天。


后来VLM火了,大家发现所有任务本质上都是图片到序列的映射,于是开始尝试用端到端大模型一锅端,让大模型直接全页往外蹦字和排版。


这种方案虽然优雅,但速度慢如蜗牛,因为自回归生成长序列太吃算力了。


再后来,PaddleOCR-VL走出了很漂亮的一步:


把版面分析(LA)和阅读顺序(RO)合并成一个小模型,后面接识别(Recognition)模型,做成了两个模型、两个阶段。


这一下把版面检测的速度拉回了传统目标检测毫秒级的水平,直接成为了这两年的行业标准解法。


但,这就完美了吗?


并没有。每增加一条版面标注,就必须强行绑上一条阅读顺序标注,数据处理难度直接翻倍。


OXR团队在深入推演后,给出了一个完全不同的任务级重构方案:


独立的轻量模型负责版面分析(LA),OXR主模型同时负责内容识别(Recognition)与阅读顺序判断(RO)。


也就是:


Layout Analysis-->Recognition+Reading Order


这个看似简单的拆分组合,在工程上带来了两个巨大质变:


其一,彻底抹平了阅读顺序带来的性能损耗。


在整个流水线里,判断阅读顺序的耗时原本就远小于文本识别。


OXR把阅读顺序判断并入主模型之后,不仅没有增加额外时间,反而因为主模型本身具备语义理解能力(Content-Aware),使得阅读顺序的判断准确率大幅提升。


同时,前面的版面分析模型(LA)由于卸下了复杂的排序包袱,任务变得极度纯粹,可以直接采用更轻量的高效检测模型,整体吞吐量原地起飞。


其二,版面分析模块独立且完全可插拔。


不同业务,对版面的需求完全打架,这是一个长尾问题:


一个图文混排的区域,内容团队希望当成一整张图提取,知识库团队希望把里面的文字抠出来当正文;


密集排布的四格漫画,业务A想要整体裁切,业务B想要切成四个小图;


……


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


总之就是非常难定义,众口难调。


但在OXR的架构里,版面分析是一个完全独立的可插拔模块——


以最小的改造成本,实现最大的业务适配自由度。


RSI立大功!国产开源登顶全球第一,1.3B OXR重塑OCR


如果你的业务有着极其特殊的版面划分需求,比如你要处理古籍、医疗单据,你完全可以用自己训练的私有版面分析模型,无缝替换掉,


后端继续白嫖OXR强大的内容识别能力。


开箱即用生态


当然,既然是为开发者社区而生,一个模型吹得再天花乱坠,如果部署不了,那