在ec2上部署deepseekOCR模型

news/2025/11/15 0:05:22/文章来源:https://www.cnblogs.com/peacemaple/p/19223886

参考资料

  • https://deepseek-ocr.io/zh/
  • https://www.bilibili.com/video/BV1TPsBzaEdh/?vd_source=a136f72026ee8b3577e31b12a3a6f648

模型特性和比较

传统的OCR技术,虽然能够识别字符,却往往无法理解图像中的语义关系。这正是传统OCR的"瓶颈"所在。早期的OCR主要由两个独立的模块组成:

  • 文字检测(TextDetection):找到图像中哪里有文字
  • 文字识别(TextRecognition):识别每一段文字的具体内容

这些系统通常基于CNN(卷积神经网络)+LSTM(长短期记忆网络)的结构,比如CRNN、CTC识别模型等。这一阶段的OCR主要解决的是"机器读字"的问题一一识别准确率、字体鲁棒性、多语言支持等。

然而很快研究者开始意识到仅仅识别文字远远不够、机器还需要理解整个文档的结构与语义。于是、新的OCR模型开始引入

  • 视觉Transformer (Vision Transformer)结构
  • 布局分析(LayoutAnalysis)
  • 视觉语言对齐 (Vision-Language Alignment)。

这些模型不仅能识别文字,还能输出 Markdown、HTML或JSON 结构,理解表格、公式、图形之间的关系。此时的OCR模型仍然无法真正全面理解完整文档的语义,尤其是一些流程图、CAD图、装饰图等等,只局限在理解文档版面信息层面。

在2023年之后,大模型技术的爆发彻底改变了视觉理解的格局。以GPT-4V、Gemini 2、Qwen-VL、InternVL等为代表的多模态大模型(VLM,Vision-Language Model)出现,让人工智能真正具备了“同时理解文字与图像”的能力。多模态技术的核心思想是:将图像和语言映射到同一个语义空间中,让模型能够同时处理视觉信息和文本信息。这意味着模型能读懂论文PDF、解析图表、理解建筑图纸、甚至生成Markdown 结构的文本。

在现代多模态模型中,这种"图文对齐"通常分为三个关键步骤:

  1. 视觉编码(Vision Encoding)。模型需要将图像转换为一组高维视觉特征向量(visualembeddings)。这一过程由视觉编码器(Vision Encoder)完成,最早的代表就是CLIP的ViT模块。
  2. 语言编码(Text Encoding),文本会被输入到语言编码器(TextEncoder)换为相同维度的语言向量。至此图像和文本都被表示成一串高维token。但这两种token来自不同模态,尚未处于"同一个语义空间"中。
  3. 图文对齐 (Cross-Modal Alignment),对齐机制的核心目标是让视觉向量与语言向量在同一个空间中具有可比较的语义距离。

VL模型比较

模型名称 架构与技术特点 核心能力 应用场景/功能
Qwen-VL 自研视觉编码器 + LLM 联合训练 支持复杂文档理解与视觉推理 OCR 2.0、图文 RAG
DeepSeek-OCR ViT 视觉编码器 + 文本解码器 + Prompt路由机制 专注文档解析;融合OCR任务 PDF转Markdown、公式/表格解析

OCR模型比较

能力方向 传统OCR(1.0) 现代VLM OCR(2.0)
信息提取 仅识别文本字符 同时提取文本、表格、公式、图像语义
文档结构 无法保留层级 自动生成结构化 Markdown/HTML
语义理解 无上下文关联 理解逻辑、关系、描述性语义
应用范围 文档数字化 多模态RAG、知识抽取、科研分析、问答系统

DeepSeek-OCR则凭借极强的技术创新力、开创性的提出了”上下文光学压缩”方法,并原创提出DeepEncoder(DeepSeek视觉编码器、现已开源),从而能够更好的兼顾各类OCR任务的效果和效率。DeepSeek-OCR 是面向多模态文档理解与检索而生的 OCR 2.0/VLM 模型

模型采用“视觉编码器 → 投影/对齐(projector)→ 语言解码器”的统一框架:视觉端用 ViT 系列编码图像为高维 token,投影层将视觉表征映射到语言嵌入空间,与 LLM 在同一语义坐标系内对齐,随后由解码器根据指令(prompt)生成 Markdown、LaTeX、JSON 或解释性自然语言。相比传统流水线式 OCR(检测→识别→版面分析),这种端到端的对齐与生成能在同一个模型里完成 文本提取 + 结构理解 + 语义生成,减少误差累积,更适合复杂版面与跨页关联的信息抽取。

为同时兼顾效果与效率,DeepSeek-OCR 提出 上下文光学压缩(Contexts Optical Compression):在保持语义判别力的前提下,用更少的“视觉标记”(visual tokens)去“浓缩”文档关键信息,再交给 LLM 的推理能力补全上下文关系。这等于在视觉侧做“语义压缩”,在语言侧做“上下文复原”。其结果是:以小体量模型即可覆盖高难度的版面理解任务,显著降低显存与计算开销,同时在 PDF→Markdown、表格/公式解析、图像语义描述等核心指标上维持高质量输出,成为多模态 PDF RAG 系统中兼顾精度/吞吐/部署成本的务实解法。

模型部署

DeepSeek-OCR目前不提供在线API,需本地推理。单卡≥7GB显存可运行。DeepSeek-OcR支持两条推理路径:vLLM (高吞吐、流式友好)与 HuggingFace Transformers(依赖少、兼容面广)。

模型下载略过

镜像选择为

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/vllm/vllm-openai:v0.8.5
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/vllm/vllm-openai:v0.8.5  docker.io/vllm/vllm-openai:v0.8.5

修改入口后方便调试

FROM docker.io/vllm/vllm-openai:v0.8.5
# COPY ./entrypoint.sh /usr/local/bin/dockerd_entrypoint.sh
ENTRYPOINT ["/usr/bin/bash"]

启动容器

docker build -t zhaojiew-vllm:0.8.5 .docker run -it --rm \--name deepseekocr \--network=host \-v /home/ubuntu/.cache/modelscope/hub/models/:/models \-v /home/ubuntu/vlmodel/deepseekocr:/workspace \--gpus all \zhaojiew-vllm:0.8.5

安装依赖,由于镜像本身为0.8.5,所以只需要req即可

# pip install torch==2.6.0 torchvision==0.21.0 torchaudio==2.6.0 --index-url https://mirrors.aliyun.com/pypi/simple/
# wget https://github.com/vllm-project/vllm/releases/download/v0.8.5/vllm-0.8.5+cu118-cp38-abi3-manylinux1_x86_64.whl
# pip install vllm-0.8.5+cu118-cp38-abi3-manylinux1_x86_64.whl
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
pip install flash-attn==2.7.3 --no-build-isolation -i https://mirrors.aliyun.com/pypi/simple/

在安装flash-attn时卡在build阶段,手动安装预编译版本

wget https://github.com/Dao-AILab/flash-attention/releases/download/v2.7.3/flash_attn-2.7.3+cu11torch2.2cxx11abiFALSE-cp312-cp312-linux_x86_64.whlpip install flash_attn-2.7.3+cu11torch2.2cxx11abiFALSE-cp312-cp312-linux_x86_64.whl

运行脚本测试python3 DeepSeek-OCR-master/DeepSeek-OCR-hf/run_dpsk_ocr.py。使用transform库推理,内容如下

from transformers import AutoModel, AutoTokenizer
import torch
import osos.environ["CUDA_VISIBLE_DEVICES"] = '0'model_name = '/models/deepseek-ai/DeepSeek-OCR'
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
model = AutoModel.from_pretrained(model_name, _attn_implementation='flash_attention_2', trust_remote_code=True, use_safetensors=True)
model = model.eval().cuda().to(torch.bfloat16)# prompt = "<image>\nFree OCR. "
prompt = "<image>\ndescribe the image."
image_file = '/workspace/image_input/house.jpg'
output_path = '/workspace/image_output'res = model.infer(tokenizer, prompt=prompt, image_file=image_file, output_path = output_path, base_size = 1024, image_size = 640, crop_mode=True, save_results = True, test_compress = True)

首次报错,查看官方的cuda环境cuda11.8

Traceback (most recent call last): File "/workspace/DeepSeek-OCR/DeepSeek-OCR-master/DeepSeek-OCR-hf/run_dpsk_ocr.py", line 9, in <module> model = AutoModel.from_pretrained(model_name, _attn_implementation='flash_attention_2', trust_remote_code=True, use_safetensors=True) 
...
File "/usr/local/lib/python3.12/dist-packages/flash_attn/init.py", line 3, in <module> from flash_attn.flash_attn_interface import ( File "/usr/local/lib/python3.12/dist-packages/flash_attn/flash_attn_interface.py", line 15, in <module> import flash_attn_2_cuda as flash_attn_gpu ImportError: libcudart.so.11.0: cannot open shared object file: No such file or directory

安装对应的cuda

apt update
apt install -y cuda-toolkit-11-8

第二次报错,说明flash-attn不兼容没注意torch版本之前是2.2,下载2.8的

Traceback (most recent call last):File "/workspace/DeepSeek-OCR/DeepSeek-OCR-master/DeepSeek-OCR-hf/run_dpsk_ocr.py", line 9, in <module>model = AutoModel.from_pretrained(model_name, _attn_implementation='flash_attention_2', trust_remote_code=True, use_safetensors=True)
...
ImportError: /usr/local/lib/python3.12/dist-packages/flash_attn_2_cuda.cpython-312-x86_64-linux-gnu.so: undefined symbol: _ZN3c104cuda9SetDeviceEi

安装对应版本的flash-attn

wget https://github.com/Dao-AILab/flash-attention/releases/download/v2.7.3/flash_attn-2.7.3+cu12torch2.6cxx11abiFALSE-cp312-cp312-linux_x86_64.whl
pip install flash_attn-2.7.3+cu12torch2.6cxx11abiFALSE-cp312-cp312-linux_x86_64.whl

再次运行,使用如下的image

image-20251114235103003

结果如下

image-20251114234433896

除了使用 transformers库进行直接推理外、DeepSeek-OcR模型还支持基于vLLM的高性能调用流程。VLLM是目前主流的高吞吐推理引擎之一,能够显著提升多模态大模型的推理速度与显存利用率,尤其在处理长文档或多页PDF时优势明显。通过vLLM调用,DeepSeek-OCR可以在流式(streaming)模式下快速生成Markdown、图文描述或结构化输出,实现低延迟、高并发的推理体验。相比transformers方案,vLLM更适合批量推理、在线服务化部署与大规模文档解析场景,是实际企业应用中更具工程化价值的调用方式。

修改config.py配置

image

直接运行# python3 DeepSeek-OCR/DeepSeek-OCR-master/DeepSeek-OCR-vllm/run_dpsk_ocr_image.py,结果相同

image-20251114235948275

可以使用的提示词样例如下,参考视频的解读即可

# document: <image>\n<|grounding|>Convert the document to markdown.
# other image: <image>\n<|grounding|>OCR this image.
# without layouts: <image>\nFree OCR.
# figures in document: <image>\nParse the figure.
# general: <image>\nDescribe this image in detail.
# rec: <image>\nLocate <|ref|>xxxx<|/ref|> in the image.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/965793.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软件工程学习日志2025.11.14

今天收到了《机器学习B》课程的第一份实验任务书,终于要从理论走向动手实践了!我花了一些时间仔细阅读了任务书,并规划了一下未来八周的上机安排。这是一场硬仗,我得好好记录下来。 📅 实验时间线:一场为期八周…

AI写论文神器!6大AI工具助你高效完成毕业论文(附查重攻略)

毕业论文查重高、AI痕迹重?别慌!本文分享6大高效AI论文工具——鲲鹏智写、AI论文及时雨、图灵论文AI、通义千问、巨鲸写作、PubMed,涵盖一键生成初稿、智能降重/AIGC优化、问卷数据全流程支持、文献综述自动生成等功…

Intel N100是个性价比很高的CPU

Nsort程序是一款高性能的排序软件,由微软研究院开发,主要用于大规模数据排序的基准测试。‌它在2004年3月和4月的基准测试中创造了以下记录:‌2004年3月‌:在32处理器的Itanium 2 NEC Express5800/1320Xd服务器上,…

MC 红石电路

MC 红石电路 非门或非门

二手电商寄卖大致流程

二手电商寄卖业务是一种C2B2C模式,即个人卖家将闲置物品委托给平台进行销售,平台负责质检、定价、上架和销售,成交后按约定比例收取佣金的服务模式。 卖家可以并非个人卖家 也可以专门卖二手的公司 平台 渠道 乃至自…

11月14日日记

1.今天上形势与政策 2.明天休息 3.连接池的核心参数(maxActive、maxIdle、minIdle、maxWait)如何合理配置?

2025五大中文表达能力机构推荐: 避坑指南!告别表达卡顿!

2025五大中文表达能力机构推荐: 避坑指南!告别表达卡顿!一、推荐背景与评价体系​ 随着课标改革对综合素质评价的重视及未来社会对沟通协作能力的更高要求,少儿表达训练已成为越来越多家庭的“刚需”。数据显示,超…

why should woman have a shorter name

because they are women. not men, obviously.

使用DeepSeek润色论文:掌握这些高效指令,精准润色

DeepSeek作为强大的AI润色工具,凭借其精准的语义理解和高效的文本生成能力,成为学术写作的得力助手。本文深入解析DeepSeek的润色原理,涵盖基础与高级润色指令,包括语法修正、词汇优化、句子结构与逻辑连贯性提升,…

轨迹方程1

Problem 已知双曲线 $ x^2 -\frac{y^2}{3}=1 $ ,双曲线上一点 $ P(x_0,y_0) \hspace {0.1cm} (x_0>0) $ , 双曲线在点 $ P $ 处的切线 $ l:x_0x - \frac{y_0y}{3} =1 $ . 若 $ l \bot \hspace {0.1cm} l $ 且 $ \…

Marie Curie the shortest

the topest committee likes the shorter named woman in English. the best fail of C is pinyin.

2025亲测靠谱的5家留学机构推荐,新通教育必看!

2025亲测靠谱的5家留学机构推荐,新通教育必看!开头先掏心窝子:我花3个月避过的留学中介坑 2025年留学申请季又卷起来了,但中介市场的坑真的没少! 前阵子帮学弟选机构,发现他差点被“保录Top50”的噱头骗钱;我自…

2025.11.14

长春行第3天

Whistle操作文档

https://wproxy.org/docs/gui/network.html

线世界“3P”:数码影音界的璀璨明珠

被音响发烧友争相传颂的线世界“3P”,突出WireWorld 美国线世界在数码影音界至高无上的科技实力和品牌地位,受人膜拜,崇敬。神秘的 “线世界” 3P 登场在数码影音的广袤宇宙中,隐藏着一组被发烧友们奉为传奇的存在…

C# 流程控制(学习笔记3)

1.条件语句public void Test3(){int a = 1; int b = 2;int c = a + b;if (c > 0){MessageBox.Show(c.ToString());}else if (c == 0){MessageBox.Show("c=0");}else{MessageBox.Show("c<0")…

在周五晚上

在周五晚上可乐干脆面 辣条和双休 还有 想要追的剧 在周五晚上,可能这就是我的人生巅峰了黑化和强化 相随 只有自己才能伴自己同行明天会是今年的第一场雪吗活着就好每个人都戴着面具而活为了让别人舒服 而聪明者和心…

藤校录取率超93%!2025年美国留学中介TOP5推荐,附专属申请方案

藤校录取率超93%!2025年美国留学中介TOP5推荐,附专属申请方案随着美国顶尖院校申请竞争日趋激烈,优质留学中介已成为学子冲刺名校的重要助力。专业的美国留学中介不仅能精准匹配院校资源、打造个性化申请方案,更能…