DeepSeek-OCR-2 vLLM部署指南用AsyncLLMEngine构建流式输出OCR推理服务【免费下载链接】DeepSeek-OCR-2Visual Causal Flow项目地址: https://gitcode.com/gh_mirrors/de/DeepSeek-OCR-2DeepSeek-OCR-2 是 DeepSeek 推出的新一代视觉因果流Visual Causal FlowOCR 大模型支持将文档图片高保真地转换为 Markdown。本文带你用 vLLM 部署 DeepSeek-OCR-2通过AsyncLLMEngine实现逐 token 流式输出并掌握图片流式推理与 PDF 高并发批处理两种服务模式快速搭建你的 OCR 推理服务。项目亮点为什么选择 DeepSeek-OCR-2DeepSeek-OCR-2 的视觉编码器DeepEncoder V2采用LM as Vision Encoder设计——用 Qwen2 语言模型代替传统 CLIP 作为视觉编码器并引入因果可读顺序new reading order让模型像人眼一样按阅读顺序扫描文档。对比 v1 架构可以看到v2 在 non-causal 的 Tokenizer 之后新增了 causal 的 LM 视觉编码层这正是文档理解能力跃升的关键。环境准备一键安装步骤官方推荐环境为CUDA 11.8 PyTorch 2.6.0 vLLM 0.8.5# 1. 克隆仓库 git clone https://gitcode.com/gh_mirrors/de/DeepSeek-OCR-2 cd DeepSeek-OCR-2/DeepSeek-OCR2-master/DeepSeek-OCR2-vllm # 2. 创建 Python 环境 conda create -n deepseek-ocr2 python3.12.9 -y conda activate deepseek-ocr2 # 3. 安装依赖torch cu118 vllm 0.8.5 whl flash-attn pip install torch2.6.0 torchvision0.21.0 torchaudio2.6.0 --index-url https://download.pytorch.org/whl/cu118 pip install vllm-0.8.5cu118-cp38-abi3-manylinux1_x86_64.whl # 需提前下载该 whl pip install -r ../../requirements.txt pip install flash-attn2.7.3 --no-build-isolation⚠️ 安装时若提示vllm 0.8.5cu118 requires transformers4.51.1的版本冲突可忽略——vLLM 与 Transformers 双端运行不受影响。核心原理AsyncLLMEngine 如何实现流式输出流式推理的核心在 run_dpsk_ocr2_image.py 的stream_generate函数关键只有三步注册模型将自定义的多模态模型 DeepseekOCR2ForCausalLM 注册到 vLLM 的ModelRegistry构建异步引擎AsyncLLMEngine.from_engine_args(AsyncEngineArgs(...))设置max_model_len8192、gpu_memory_utilization0.75异步迭代增量文本async for request_output in engine.generate(request, sampling_params, request_id): full_text request_output.outputs[0].text new_text full_text[printed_length:] # 只打印新增部分 print(new_text, end, flushTrue) printed_length len(full_text)async for每轮拿到的是累计全文用printed_length切出增量即可实现打字机效果——这是构建 SSE 流式 OCR API 的标准做法。此外还挂载了NoRepeatNGramLogitsProcessor见 process/ngram_norepeat.py通过 n-gram 去重防止长表格输出陷入重复循环并对td、/td加白名单保护 HTML 结构不被误杀。场景一图片流式 OCR推荐入门python run_dpsk_ocr2_image.py运行流程读取INPUT_PATH图片 →DeepseekOCR2Processor动态分块编码见 process/image_process.pyAsyncLLMEngine 逐 token 流式输出 Markdown自动后处理解析|ref|定位框 → 在图上绘制彩色边界框、裁出内嵌图片最终产出 3 样文件result.mmd干净版 Markdown含图片引用result_with_boxes.jpg带布局框标注的可视化图images/从文档中裁剪出的子图动态分辨率默认 (0~6)×768×768 1×1024×1024 分块最大仅 256144 个视觉 token显存占用非常友好。场景二PDF 高并发批处理python run_dpsk_ocr2_pdf.pyPDF 场景改用同步LLM接口 max_num_seqsMAX_CONCURRENCY默认 100 并发配合 64 个预处理的线程池整体速度与 DeepSeek-OCR 持平。流程为PDF 逐页 144 DPI 渲染 → 批量推理 → 合并输出带分页标记的.mmd并用img2pdf回排出布局标注 PDF。关键参数调优清单所有参数集中在 config.py上手必改 3 处参数说明建议MODEL_PATH模型路径填本地权重目录或deepseek-ai/DeepSeek-OCR-2INPUT_PATH/OUTPUT_PATH输入输出目录按你的数据改MAX_CONCURRENCY并发数显存不足时调低如 32PROMPT推理提示词见下方两种模式NUM_WORKERS图像预处理线程CPU 核多可上调两种官方提示词文档转 Markdown带布局image\n|grounding|Convert the document to markdown.纯文字 OCR无布局image\nFree OCR.批量评测基准如 OmniDocBench v1.5则使用 run_dpsk_ocr2_eval_batch.py。常见问题速查显存不够 OOM调低gpu_memory_utilization与MAX_CONCURRENCY或换 24G 以上显存的 GPU输出表格无限重复确认已启用NoRepeatNGramLogitsProcessorPDF 场景可关闭SKIP_REPEAT观察图片方向错乱推理脚本内置 EXIF 转正ImageOps.exif_transpose无需手动处理想用 HuggingFace 直接推理见 DeepSeek-OCR2-hf/run_dpsk_ocr2.py基于flash_attention_2适合快速验证而非高吞吐服务。总结DeepSeek-OCR-2 的 vLLM 部署路径非常清晰AsyncLLMEngine负责单图流式输出、LLM批量接口负责 PDF 高并发二者共享同一套模型注册与动态分辨率编码逻辑。按照本指南 30 分钟内即可跑通首个流式 OCR 请求并在此基础上轻松封装为 HTTP/SSE 推理服务。【免费下载链接】DeepSeek-OCR-2Visual Causal Flow项目地址: https://gitcode.com/gh_mirrors/de/DeepSeek-OCR-2创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考