GLM-OCR Ollama本地部署教程:最简单的本地文档OCR方案
【免费下载链接】GLM-OCRGLM-OCR: Accurate × Fast × Comprehensive项目地址: https://gitcode.com/GitHub_Trending/gl/GLM-OCR
GLM-OCR 是一款面向复杂文档理解的多模态 OCR 模型(总参数量仅 0.9B),本文带你用 Ollama 在本地完成 GLM-OCR 部署,实现免 GPU 的文档 OCR 识别——把 PDF、截图、手写稿转成结构化 Markdown,数据全程不出内网,是个人与轻量团队最省心的本地文档 OCR 方案。
为什么选择 Ollama 做 GLM-OCR 本地部署
相比 vLLM、SGLang 等推理框架,Ollama 的优势对新手非常友好:
- 零门槛:一条命令安装、一条命令拉取模型,无需配置 CUDA 环境
- CPU 也能跑:GLM-OCR 仅 0.9B 参数,官方文档明确推荐"纯 CPU 场景用 Ollama"
- 隐私安全:文档图片完全在本地处理,适合处理合同、财报等敏感材料
- 生态通用:Ollama 是本地部署大模型的事实标准,学会后可复用到大模型项目
官方 Ollama 部署指南位于 examples/ollama-deploy/README.md,核心配置逻辑实现在 glmocr/ocr_client.py 中,默认配置模板见 glmocr/config.yaml。
第一步:安装 Ollama 并拉取 GLM-OCR 模型
macOS / Linux:在终端执行官方安装脚本(访问 Ollama 官网下载即可),安装后服务默认运行在http://localhost:11434:
curl -fsSL https://ollama.ai/install.sh | sh ollama --version # 验证安装Windows:从 Ollama 官网下载安装包,双击安装即可。
接着拉取 GLM-OCR 模型:
ollama pull glm-ocr:latest ollama list # 确认模型已就位如果服务没有自动启动,执行ollama serve手动拉起。
第二步:安装 GLM-OCR SDK 并配置
本地部署需要"自部署完整流水线"版本(包含版面分析模块):
pip install "glmocr[selfhosted]"然后在项目目录创建config.yaml,这是最关键的一步——必须使用 Ollama 原生接口,否则会报 502 错误:
pipeline: maas: enabled: false ocr_api: api_host: localhost api_port: 11434 api_path: /api/generate # Ollama 原生端点 model: glm-ocr:latest # 必须指定模型名 api_mode: ollama_generate # 使用 Ollama 原生请求格式⚠️避坑提示:Ollama 的 OpenAI 兼容接口对视觉请求支持有限,官方推荐直接使用原生
/api/generate端点。这也是新手最常踩的 502 Bad Gateway 坑。
第三步:一行命令完成文档 OCR
配置完成后,解析一张图片只需一条命令:
glmocr parse examples/source/code.png --config config.yaml仓库自带多种示例素材可以直接试跑:
| 示例素材 | 路径 | 考察能力 |
|---|---|---|
| 代码截图 | examples/source/code.png | 代码结构还原 |
| 手写中文 | examples/source/handwritten.png | 手写体识别 |
| 财务表格 | examples/source/table.png | 复杂表格 |
| 学术论文 | examples/source/paper.png | 数学公式 |
批量处理整个目录,或指定输出目录:
glmocr parse examples/source/ --output ./results/看看 GLM-OCR 本地识别效果
下面这些图片都来自仓库的示例结果目录,是 GLM-OCR 真实跑出的版面分析效果:
技术文档中的正文、公式、条款编号均被准确框出并分类
手写中文场景:GLM-OCR 将整段手写内容识别为可编辑 Markdown
财报表格以 0.93 的置信度被整体检出,转换后保留完整行列结构
学术论文双栏排版:正文与 LaTeX 公式分别识别,还原度高
对应的结构化结果(Markdown + JSON 版面详情)可查看 examples/result/handwritten/handwritten.md 和 examples/result/paper/paper.md。
验证部署是否成功
三步检查,快速定位问题:
ollama list # 1. 模型是否在本地 ollama ps # 2. 模型是否在运行 curl http://localhost:11434/api/generate \ -d '{"model":"glm-ocr:latest","prompt":"Hello","stream":false}' # 3. API 是否通常见问题速查:
- 报 502 Bad Gateway:检查
config.yaml中api_path是否为/api/generate、api_mode是否为ollama_generate(缺少model字段也会导致失败) - 解析速度慢:首次调用模型需加载进内存,属正常现象;CPU 部署大 PDF 建议逐页处理
- 想换自定义模型:可用 Modelfile 创建,方法见官方指南 examples/ollama-deploy/README.md
生产环境建议与总结
官方给出的选型建议是:个人测试、CPU 机器 → Ollama;高并发生产服务 → vLLM / SGLang;Apple Silicon 用户还有专门的 MLX 部署方案。
回顾一下整个 GLM-OCR Ollama 本地部署流程,总共只有四步:
- 安装 Ollama,
ollama pull glm-ocr:latest pip install "glmocr[selfhosted]"- 写好
config.yaml(记得api_mode: ollama_generate) glmocr parse 你的文件.png开跑 🎉
从安装到出结果,熟练后 10 分钟内即可完成。如果你的场景是对内网的合同、票据、扫描件做批量电子化,这套本地文档 OCR 方案在成本与隐私之间取得了很好的平衡。更多架构细节可阅读 glmocr/pipeline/pipeline.py 中的流水线实现,或直接查阅仓库主文档 README_zh.md。
【免费下载链接】GLM-OCRGLM-OCR: Accurate × Fast × Comprehensive项目地址: https://gitcode.com/GitHub_Trending/gl/GLM-OCR
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考