OCR计算机视觉多模态人工智能本地部署【免费下载链接】Unlimited-OCR-2-bf16项目地址https://ai.gitcode.com/hf_mirrors/mlx-community/Unlimited-OCR-2-bf16点击查看免费下载 本文带你彻底看懂Unlimited-OCR-2-bf16这套 OCR 大模型的输出协议PAGE、BLOCK、FORK三类标签分别承担什么职责、坐标如何归一化以及如何把原始输出转换Converter成干净的 Markdown 文档。1. Unlimited-OCR-2-bf16 是什么Unlimited-OCR-2-bf16 是百度 Unlimited-OCR-2 视觉语言 OCR 模型的 MLX bfloat16未量化版本由 mlx-vlm 转换而来。它把整页文档图像解析为带版面结构的文本而不是简单的一行行文字。也就是说你给它一页 PDF 截图它还给你标题在哪、公式在哪、图片在哪的结构化文档。关键源码入口模型定义modeling_unlimitedocr.py视觉编码器SAM CLIPdeepencoder.py稀疏注意力DASHdash_attention.py模型配置config.json2. 输出协议三层结构页 → 块 → 文本Unlimited-OCR-2 的原始输出是一套自定义标签协议层级如下层级标签职责页级PAGE分隔每一页的输出一页对应一个PAGE段块级BLOCK声明一个版面块类型标签 坐标框块内容label[x0, y0, x1, y1]FORKtext标签与框之后FORK后接该块的实际文本一个简化的输出示例真实输出中还有更完整的|ref|包裹形式PAGE |ref||det|title[50, 40, 950, 110]|/det|FORK第三章 注意力机制 |ref||det|text[60, 130, 940, 400]|/det|FORK注意力机制是现代模型的核心……2.1 块的两种写法解析函数 re_match() 同时支持两种块写法ref det 双标签|ref|…|/ref||det|label[x0, y0, x1, y1]|/det|—— 用于引用块如图片、公式纯 det 标签|det|label[x0, y0, x1, y1]|/det|—— 普通文本块label是块的类型如title、text、image、formula后面的[x0, y0, x1, y1]就是包围框坐标。2.2 坐标0–999 归一化坐标系这是新手最容易踩的坑框内坐标不是像素而是归一化到0–999的相对坐标。保存结果时会按比例还原为真实像素见 draw_bounding_boxes()真实 x x / 999 × 图片宽度 真实 y y / 999 × 图片高度所以在下游脚本里做坐标换算时除以999而不是图片尺寸。3.PAGE标签输入和输出共用同一个标记PAGE在这套模型里是双角色标记这也是 config.json 中page_token_id: 128827的用途所在输入侧多页推理时prompt 会自动展开为PAGEimage × 页数 指令见 _uocr_generate 上方的 infer() 文档。默认指令就是Multi page parsing.输出侧模型每解析完一页就输出一个PAGE下游按它切分页面。PAGE还服务于稀疏注意力page2d RoPE 和 DASH block-sparse attention 依据PAGE标记统计查询 token 属于哪一页从而让第 1 页的 token 只关注第 1 页的图实现多页并行推理时的注意力隔离详见 dash_attention.py。4. 跨页块cross_* 与 append_* 前缀遇到跨越页面边界的块典型如跨页表格、长公式时模型会用带前缀的块标签表达延续关系cross_*该块跨页断开了后续页会有对应片段append_*该块是前一页块的续写也就是说转换 Markdown 时不能假设一个块一定完整在某一页内需要按前缀把前后两页的片段拼接起来。5. 页数守卫模型如何保证输出页数正确_uocr_page_count_guard() 在解码每一步对 logits 做干预保证输出协议不出错输出的PAGE数超过输入页数 → 强制生成 EOS立即收尾当前页超过max_page_tokens默认 20000token → 强制输出下一个PAGE或 EOS页数还没生成够 → 禁止 EOS必须继续这解释了为什么你在实际使用中几乎不会遇到半截页面的输出。此外可选的 NoRepeatNGram_uocr_no_repeat_ngram()可以防止长文档中重复段落。6. 从原始输出到 Markdown转换规则保存结果的入口是 _uocr_save_results()转换逻辑可以归纳为 5 步按PAGE切页outputs.split(PAGE)[1:]与输入图片一一配对正则提取块用 re_match() 找出所有 ref/det 块图片块裁图label image的块按坐标裁出原图区域存为images/page_N_idx.jpg并把对应标签替换成 Markdown 图片语法其他块画框title等标签在原图上画出彩色检测框输出result_with_boxes_N.jpg便于人工核对落盘两个文件result.md按PAGE\n分节的 Markdown 成品result_raw.md原始协议输出留作调试7. 动手实践mlx-vlm 一行命令跑通先在 Mac/MLX 环境安装支持该模型的 mlx-vlm 分支见 README.mdpip install -U githttps://github.com/shuuul/mlx-vlm.git单页推理gundam 模式1024 全局视图 最多 16 个局部裁剪mlx_vlm.generate --model mlx-community/Unlimited-OCR-2-bf16 --image page.png \ --prompt Multi page parsing. --max-tokens 8192 --temperature 0多页一次请求每页一个 1024 基础视图mlx_vlm.generate --model mlx-community/Unlimited-OCR-2-bf16 --image p1.png p2.png \ --prompt Multi page parsing. --max-tokens 16384 --temperature 0⚠️ 建议固定--temperature 0贪心解码--max-tokens按每页约 2000–5000 token 预留避免截断PAGE段。拿到 stdout 后就可以对照第 6 节的规则自行解析或调用仓库内置的_uocr_save_results得到result.md。8. 常见坑速查现象原因处理建议输出里没有PAGE单页输入时 prompt 只有一个标记按整段即一页处理即可框画歪了把 0–999 坐标当成像素按x/999×宽换算表格缺右半跨页块被拆到下一页按cross_*/append_*前缀拼接长文档出现复读解码重复启用no_repeat_ngram_size参数9. 源码索引延伸阅读推理主流程与标签展开modeling_unlimitedocr.py块解析正则modeling_unlimitedocr.py坐标换算与画框modeling_unlimitedocr.py页数守卫modeling_unlimitedocr.pyMarkdown 落盘modeling_unlimitedocr.py稀疏注意力page2d RoPE / DASHdash_attention.py视觉塔SAM/CLIPdeepencoder.py注意力与 token 配置config.json10. 小结Unlimited-OCR-2-bf16 的输出协议本质上是一个三段式结构PAGE切页输入输出共用且驱动稀疏注意力BLOCK/|det|定位类型标签 0–999 归一化坐标框FORK承载文本cross_*/append_*处理跨页延续理解了这三层再把 0–999 坐标换算回像素、图片块裁切内嵌原始输出就能稳定地转成结构化 Markdown——这就是从模型吐出的一串标签到可读文档的完整链路。赞分享OCR计算机视觉多模态人工智能本地部署【免费下载链接】Unlimited-OCR-2-bf16项目地址https://ai.gitcode.com/hf_mirrors/mlx-community/Unlimited-OCR-2-bf16点击查看免费下载相关推荐Unlimited-OCR-2-6bit为什么霸榜文档OCRUnlimited-OCR-2系列评测与榜单解读Unlimited OCR 2 6bit为什么霸榜文档OCRUnlimited OCR 2系列评测与榜单解读 Unlimited OCR 2 6bit 是百度人工智能多模态计算机视觉OCR模型量化本地部署mlx_vlm.generate参数参考Unlimited-OCR-2-bf16 API完整清单与调用示例mlx_vlm.generate参数参考Unlimited OCR 2 bf16 API完整清单与调用示例 Unlimited OCR 2 bf16 是把百度OCR计算机视觉多模态人工智能本地部署使用 farmfe/js-plugin-electron 构建 Electron 应用Farm 桌面开发全指南使用 farmfe/js plugin electron 构建 Electron 应用Farm 桌面开发全指南 导读 本指南围绕 Farm 官方 JavaS人工智能多模态计算机视觉OCR本地部署模型量化大模型上一篇重新定义Windows远程桌面从限制到自由的体验革命下一篇XOutput5分钟解决游戏手柄兼容性问题让老设备焕发新生创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?