GLM-OCR实战:如何把一份PDF从图片变成结构化Markdown
GLM-OCR实战如何把一份PDF从图片变成结构化Markdown【免费下载链接】GLM-OCRGLM-OCR: Accurate × Fast × Comprehensive项目地址: https://gitcode.com/GitHub_Trending/gl/GLM-OCR 如果你正在找一款能快速把 PDF 变成结构化 Markdown 的 OCR 工具那么 GLM-OCR 值得放进你的工具箱。GLM-OCR 是一款面向复杂文档理解的多模态 OCR 模型它能把扫描件、拍照件甚至整份 PDF 逐页转成带表格、公式LaTeX和版式坐标的结构化 Markdown总参数量仅 0.9B支持云端 API 与本地自部署是新手上手文档结构化成本很低的高精度 × 快 × 全面方案。为什么选 GLM-OCR不止识别文字传统 OCR 往往只吐出一堆纯文本段落错位、表格散架、公式变成乱码。GLM-OCR 走的是两阶段路线版面分析基于 PP-DocLayout-V3 先找出页面上的文本、表格、公式、图片等区域并行识别把每个区域裁剪后并行送入视觉语言模型识别再按阅读顺序合并。关键特性一览 在 OmniDocBench V1.5 上取得 94.62 分综合排名第一 复杂表格、代码密集文档、印章、手写体等真实高难场景表现稳定⚡ 0.9B 参数支持 vLLM、SGLang、Ollama 部署推理成本低 全面开源提供完整 SDK 与 Web 应用一行命令即可调用原始输入文档论文页图片长这样版面元素混杂着正文与数学公式三步流水线PDF 是怎么变成 Markdown 的GLM-OCR 的核心是一条三段式异步流水线源码在 glmocr/pipeline/pipeline.py阶段模块做什么① 加载页面PageLoader读取图片PDF 先转成逐页图片② 版面检测LayoutDetector检测每页的文本/表格/公式/图片区域③ 区域识别OCRClient调用 GLM-OCR 模型服务并行识别各区域④ 结果格式化ResultFormatter按阅读顺序合并输出 JSON Markdown各模块可单独替换扩展页面加载见 glmocr/dataloader/page_loader.py版面检测见 glmocr/layout/layout_detector.py结果格式化见 glmocr/postprocess/result_formatter.py。下图是第②步的效果——版面上每个区域都被框出并标注类型最快上手四步完成配置第 1 步安装 SDK按场景选择最轻量的安装方式# 云端 API 模式无需 GPU安装最快 pip install glmocr # 本地自部署完整流水线含版面分析 pip install glmocr[selfhosted]第 2 步安装 PopplerPDF 转图片依赖PDF 输入依赖 Poppler 工具集pdftoppm等。参考 examples/example.py 中的检测逻辑macOS 可执行brew install popplerLinux 可用apt install poppler-utils。第 3 步准备 OCR 模型服务三种方式任选其一配置文件为 glmocr/config.yamlMaaS 云端 API推荐新手在config.yaml中启用pipeline.maas并填入 API KeySDK 只负责转发请求直接返回 Markdown JSON 版面详情本地无需 GPUvLLM / SGLang 自部署本地起模型服务SDK 跑完整流水线数据完全可控SDK Server ClientGPU 机器上跑服务其他机器免 GPU 远程调用第 4 步一行命令解析# 解析整份 PDF结果输出到指定目录 glmocr parse 文档.pdf --output ./results/ # 也可以直接解析目录里所有图片 glmocr parse examples/source/Python 调用同样简洁from glmocr import parseresult parse(文档.pdf)后调用result.save()即可见 glmocr/api.py。读懂结果.md、.json 和版面可视化解析完成后输出目录会生成三类产物results/ └── 文档名/ ├── 文档名.md # 结构化 Markdown正文 表格 LaTeX 公式 ├── 文档名.json # 逐元素的结构化数据 └── layout_vis/ # 版面检测可视化图片其中.json是结构化的关键。每个元素都有index、label文本/公式/表格、content和bbox_2d像素坐标例如论文页的输出节选自 examples/result/paper/paper.json{ index: 2, label: formula, content: $$\\sum_{i1}^{n} x_i \\frac{\\partial R}{\\partial x_i} d R.$$ , bbox_2d: [234, 200, 341, 234] }对应的 Markdown 版本见 examples/result/paper/paper.md——公式已转为可渲染的 LaTeX。坐标信息则让你可以反向定位原文位置比如做原文 ↔ 识别结果高亮联动。实战一份 41 页 PDF 的解析效果仓库自带了一份 41 页的真实 PDF 测试文档examples/source/GLM-4.5V.pdf解析结果完整保存在 examples/result/GLM-4.5V/包括 41 页的 Markdown、JSON 和逐页版面可视化。下图是其中一页的检测结果段落、公式、图表区域都被准确划分多元素混合页面同样不在话下比如财务报表中的大表格表格会被输出为带thead/tbody的 HTML 表格数据一个不少见 examples/result/table/table.json。覆盖更多真实场景GLM-OCR 针对真实业务痛点做了优化仓库examples/result/下有对应的效果展示✍️手写文档见 examples/result/handwritten/handwritten.md印章识别见 examples/result/seal/seal.md代码截图见 examples/result/code/code.md化学式微调还附了基于 LLaMA-Factory 的微调示例见 examples/finetune/README_zh.md进阶开箱即用的 Web 应用 不想敲命令行仓库内置了一套完整的 Web 文档处理应用FastAPI 异步后端 React 前端支持上传 PDF → 实时进度跟踪 → 页面级高亮联动 → Markdown 预览/导出还带任务队列、自动重试与多 Worker 并发架构说明见 apps/backend/README.md。# 用 Docker 一键启动前后端 bash apps/start-docker.sh # 或本地开发模式 bash apps/start-local.sh # 前端 http://localhost:5173后端 API 文档 http://localhost:8000/docs其中 PDF 转图片步骤的实现在 apps/backend/app/core/steps/pdf_to_image.py结果合并步骤在 apps/backend/app/core/steps/merge_results.py想定制流程可以从这里入手。此外GLM-OCR 还支持 Agent Skill 模式pip install glmocr 配置 API Key即可让 AI 助手直接把提取这张图片/这份 PDF 的文字这类任务委托给 GLM-OCR详见 skills/glmocr/SKILL.md。小结你的需求推荐路径快速体验、无 GPUMaaS 云端 API pip install glmocr数据不出内网vLLM/SGLang 自部署 glmocr[selfhosted]团队批量处理Web 应用apps/或 Flask 服务python -m glmocr.server接入 AI AgentSkill 模式skills/glmocr/一句话总结装好 SDK、配好模型服务、执行glmocr parse 你的文档.pdf几分钟后你就拿到一份干净的结构化 Markdown 和可定位每个元素的 JSON——这就是 GLM-OCR 把图片 PDF 变结构化文档的全部成本。【免费下载链接】GLM-OCRGLM-OCR: Accurate × Fast × Comprehensive项目地址: https://gitcode.com/GitHub_Trending/gl/GLM-OCR创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考