本地部署PaddleOCR,消费级显卡轻松跑,支持本地图片和PDF文件

大家好,我是 Ai 学习的老章

前文我在【教程】DeepSeek-OCR 本地部署(上):CUDA 升级 12.9,vLLM 升级至最新稳定版一文中提到,vLLM 0.11.2 稳定版原生支持 DeepSeek-OCR ,且兼容 OpenAI API 格式在线推理,操作更便捷。但 vLLM 0.11.1 及以上版本默认要求 CUDA 12.9,需先完成 CUDA 升级。完成升级后,我用最新版 vLLM 本地成功部署了 DeepSeek-OCR,用 Python 写了一个 api_server.py,使其更便捷滴支持本地图片和 PDF 文档

不过说实话,我测试了 N 多题目,DeepSeek-OCR 效果不如更小参数的 PaddleOCR-VL,本文我试了最新版vLLM本地部署显存占用更小的PaddleOCR,验证了api_server.py在简单修改模型名称后依然好用。

1、PaddleOCR 简介

PaddleOCR-VL 是一款面向文档解析的 SOTA 且资源高效的模型。其核心组件为 PaddleOCR-VL-0.9B------一个非常轻量级的视觉语言模型 (VLM),通过将 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型融合,实现精准的元素识别。

在页面级文档解析和元素级识别任务中,PaddleOCR - VL 都展现出了卓越的性能。在 OmniDocBench v1.5 和 v1.0 等广泛使用的公共基准测试中,该模型在整体、文本、公式、表格及阅读顺序等多项指标上均达到了最先进水平,大幅超越现有的基于管道的解决方案,与顶尖视觉语言模型相比也极具竞争力。这意味着无论是简单的文本提取,还是复杂的表格、公式、图表识别,PaddleOCR - VL 都能出色完成任务。

2、PaddleOCR 本地部署

1️⃣ 下载模型文件

复制代码
  pip install modelscope
modelscope download --model PaddlePaddle/PaddleOCR-VL  --local_dir ./PaddleOCR

2️⃣ vLLM Docker 部署 PaddleOCR

复制代码
  docker run -d --rm --runtime=nvidia --name paddle-ocr --ipc=host --gpus '"device=1"' -p 8000:8000 -v /data/llm-models:/models vllm/vllm-openai:v0.11.2 --model /models/PaddleOCR --max-num-batched-tokens 16384 --port 8000  --no-enable-prefix-caching --mm-processor-cache-gb 0 --trust_remote_code

#https://docs.vllm.ai/projects/recipes/en/latest/PaddlePaddle/PaddleOCR-VL.html

我用单卡 4090 跑,显存的占用只有 1.89GB,剩余空间留给了 KV cache

3、API 修改,运行

前文中的 api_server.py 仅需把 DeepSeekOCR 修改为 PaddleOCR 即可

一个新的终端 中,运行以下命令:

复制代码
  uvicorn api_server:app --host 0.0.0.0 --port 8002

调用方法重复一下

  • URL: /models/v1/models/deepseek-ocr/inference
  • 方法 (Method): POST
  • 内容类型 (Content-Type): multipart/form-data

表单数据参数:

参数 类型 是否必须 描述 默认值
file 文件 (File) 需要处理的 PDF (.pdf) 或图像 (.png, .jpg, .jpeg) 文件。 -
prompt 字符串 (String) 一个可选的文本提示,用于指导 OCR 模型的输出格式或焦点。 "Convert the document to markdown."
复制代码
  ## 示例 1: 处理 PDF 文件
curl -X POST "http://localhost:8002/models/v1/models/PaddleOCR/inference" \
     -F "file=@/path/to/your/report.pdf"

# 示例 2: 处理图像文件
curl -X POST "http://localhost:8002/models/v1/models/PaddleOCR/inference" \
     -F "file=@/path/to/your/receipt.png"


# 示例 3: 使用自定义提示处理文件
curl -X POST "http://localhost:8002/models/v1/models/PaddleOCR/inference" \
     -F "file=@/path/to/your/document.pdf" \
     -F "prompt=将此文档中的所有表格提取为 markdown 格式。"

速度也是超级快

一个强大的开源 OCR 工具,基于 DeepSeek OCR
DeepSeek-OCR 桌面客户端,Windows 用户优先体验

相关推荐
速德瑞仪器2 天前
中国计量科学研究院检定速德瑞三款紫外辐照计,获标准级水平
经验分享·紫外辐照计
自然石人2 天前
石都随笔:深耕不张扬,平凡自有千钧力
网络·经验分享·百度·传媒·新浪微博
Rain的Java大神之路2 天前
如何保证接口幂等
java·经验分享·后端·面试·架构
数智启示录2 天前
Doris精讲篇(六) 从第一批小文件到 -235:Doris 是怎样被正常写入拖死的
大数据·数据库·经验分享·面试·flink
luj_17682 天前
尾椎藏今生记忆?骨盆对应不确定性
开发语言·网络·c++·经验分享·算法
随便做点啥2 天前
32卡-64G-910B4-16后端-(Qwen3.8-27B-W8A8)集群部署报告
运维·服务器·经验分享·docker·vllm
天竺鼠不该去劝架2 天前
AI幻觉引发业务风险?企业智能体执行层隔离解决方案
经验分享
知产xiao_xin2 天前
知识产权入门 —— 相关权(邻接权)
经验分享·笔记·知识产权
Regentsoft丽晶软件2 天前
品牌方新品上市促销政策无法实时同步经销商,有没有支持总部-经销商-终端一站式的分销解决方案?
人工智能·经验分享·数据库架构
知产xiao_xin2 天前
知识产权入门 —— 版权
经验分享·笔记·知识产权