Atomgit-Ascend/deepseek-ocr2
模型介绍文件和版本Pull Requests讨论分析

DeepSeek-OCR-2 项目说明

项目简介

本项目目标为“小窗体验需求”,基于 DeepSeek-OCR-2 模型提供图片转文本(Markdown)能力。模型完整部署在 昇腾 910B NPU 上,通过 docker 与 docker-compose 实现快速体验 OCR 推理服务。

项目目录结构如下:

.
├── app                 # FastAPI 服务与模型推理逻辑
├── t-unit              # 测试样例(包含 URL 与 Base64 测试脚本)
├── deploy              # 部署相关代码(模型适配文件)
├── model               # 模型及权重文件(下载后放置于此目录)
├── Dockerfile
└── docker-compose.yaml

基本环境

  • 硬件要求:昇腾 910B NPU
  • 操作系统:Linux
  • 推荐 Python 版本:3.10 及以上
  • 容器环境:Docker 与 docker-compose

一键部署流程

一、代码获取

从 atomgit 拉取项目源码:

git clone git@atomgit.com:wuyw/models_inference.git
cd models_inference/deepseek-orc2

二、资源准备

  1. 下载 DeepSeek-OCR-2 模型

    • 从 AtomGit 下载。
    • 下载完成后,将模型权重目录放置于 models_inference/deepseek-orc2/model/deepseek-ai/DeepSeek-OCR-2/ 下。
  2. 模型适配文件
    deploy/model/modeling_deepseekocr2.py 会在构建镜像时自动复制到模型目录。

三、项目镜像构建

docker build -t models_inference_deepseek_orc_2:latest .

四、启动服务

使用 docker-compose 启动容器:

docker-compose up -d

容器启动后进入容器并启动服务:

docker exec -it models_inference_deepseek_orc_2 bash
cd /data/work/app
python main.py

服务默认监听端口 8016,宿主机映射端口为 18003。

快速测试

  • 测试用例位于 t-unit 目录,包含网络图片 URL 与 Base64 图片两种测试方式。
  1. 网络图片 URL 测试
curl -X POST http://localhost:18003/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-orc2",
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "text",
            "text": "请提取图片中信息"
          },
          {
            "type": "image_url",
            "image_url": {
              "url": "https://example.com/test-image.jpg"
            }
          }
        ]
      }
    ]
  }'
  1. Base64 图片测试
# 1. 将图片编码为 base64,并去除换行符
base64 example.jpg | tr -d '\n' > img.b64

# 2. 发送推理请求
curl -X POST http://localhost:18003/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-orc2",
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "text",
            "text": "请提取图片中信息"
          },
          {
            "type": "image_url",
            "image_url": {
              "url": "'"$(cat img.b64)"'"
            }
          }
        ]
      }
    ]
  }'
  1. 本地脚本测试(可选)
python t-unit/t-local.py