Ascend-SACT/dots.ocr
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

一、背景与模型介绍

dots.ocr 是一个强大的多语言文档解析器,它在单一的视觉语言模型中统一了版面检测与内容识别,同时保持良好的阅读顺序。尽管其基础仅为紧凑的 17 亿参数语言模型,它依然实现了最先进(SOTA)的性能。

二、资源列表

A2开箱环境信息:

驱动版本:25.2.0
CANN版本:8.2.RC1
torch版本:2.7.1
torch_npu版本:2.7.1rc1
vllm版本:0.9.1
vllm-ascend版本:0.9.1
硬件配置:单张910B3
部署镜像:quay.io/ascend/vllm-ascend:v0.9.1-dev

三、部署实践

1. 拉起镜像

docker run -itd  \
--privileged=true \
--name dots.ocr --network=host --pid=host --detach=true --shm-size=64g \
--device=/dev/davinci0 --device=/dev/davinci1 --device=/dev/davinci2 \
--device=/dev/davinci3 --device=/dev/davinci4 --device=/dev/davinci5 \
--device=/dev/davinci6 --device=/dev/davinci7 \
--device /dev/davinci_manager \
--device /dev/devmm_svm \
--device /dev/hisi_hdc \
-v /usr/local/sbin:/usr/local/sbin \
-v /usr/local/dcmi:/usr/local/dcmi \
-v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \
-v /usr/local/Ascend/driver/lib64/:/usr/local/Ascend/driver/lib64/ \
-v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info \
-v /etc/ascend_install.info:/etc/ascend_install.info \
-v /root/.cache:/root/.cache \
-v /tmp:/tmp \
-p $PORT:8000 \
-v /home/usr:/home/usr \
quay.io/ascend/vllm-ascend:v0.9.1-dev /bin/bash

2. 下载权重和自定义架构代码

从hf-mirror下载模型权重和自定义架构代码:

git clone https://hf-mirror.com/rednote-hilab/dots.ocr

存放于镜像指定目录如:

/home/usr/dots.ocr

使用本模型仓中的适配版架构代码覆盖原始hf仓代码

3. 拉起vllm-ascend推理服务

指定服务部署的NPU卡:

export ASCEND_RT_VISIBLE_DEVICES=0

向vllm文件中添加模型导入语句:

sed -i '/^from vllm\.entrypoints\.cli\.main import main$/a from DotsOCR 
import modeling_dots_ocr_vllm' `which vllm` 

拉起vllm-ascend推理服务:

python -m vllm.entrypoints.openai.api_server \
--port 8000 \
--model /home/usr/dots.ocr/  \
--trust-remote-code \
--served-model-name dots.ocr \
--dtype bfloat16 \
--enforce-eager

四、推理测试

使用本仓脚本demo_vllm.py进行vllm推理测试:

python3 demo_vllm.py --prompt_mode prompt_layout_all_en

其中prompt_mode prompt_layout_all_en模式对应提示词为:

Please output the layout information from the PDF image, including each layout element's bbox, its category, and the corresponding text content within the bbox.

1. Bbox format: [x1, y1, x2, y2]

2. Layout Categories: The possible categories are ['Caption', 'Footnote', 'Formula', 'List-item', 'Page-footer', 'Page-header', 'Picture', 'Section-header', 'Table', 'Text', 'Title'].

3. Text Extraction & Formatting Rules:
    - Picture: For the 'Picture' category, the text field should be omitted.
    - Formula: Format its text as LaTeX.
    - Table: Format its text as HTML.
    - All Others (Text, Title, etc.): Format their text as Markdown.

4. Constraints:
    - The output text must be the original text from the image, with no translation.
    - All layout elements must be sorted according to human reading order.

5. Final Output: The entire output must be a single JSON object.

本仓库测试样本图片[caibao_001.png]对应的预测结果为(markdown格式):

於12月31日

<table><thead><tr><th></th><th>附註</th><th>2024年<br>人民幣百萬元</th><th>2023年<br>人民幣百萬元</th></tr></thead><tbody><tr><td>非流動資產</td><td></td><td></td><td></td></tr><tr><td>物業、廠房及設備</td><td>6</td><td>21,077</td><td>22,694</td></tr><tr><td>投資物業</td><td>7</td><td>15,687</td><td>16,625</td></tr><tr><td>無形資產</td><td></td><td>776</td><td>1,004</td></tr><tr><td>使用權資產</td><td></td><td>6,317</td><td>5,671</td></tr><tr><td>在建物業</td><td>8</td><td>9,751</td><td>13,282</td></tr><tr><td>於合營企業之投資</td><td>9(b)</td><td>29,621</td><td>31,023</td></tr><tr><td>於聯營公司之投資</td><td>9(c)</td><td>15,910</td><td>17,680</td></tr><tr><td>以公允價值計量且其變動計入其他綜合收益的金融資產</td><td>10</td><td>4,627</td><td>7,408</td></tr><tr><td>貿易及其他應收款</td><td>13</td><td>783</td><td>848</td></tr><tr><td>遞延所得稅資產</td><td>27</td><td>14,409</td><td>20,570</td></tr><tr><td></td><td></td><td>118,958</td><td>136,805</td></tr><tr><td>流動資產</td><td></td><td></td><td></td></tr><tr><td>在建物業</td><td>8</td><td>465,996</td><td>657,167</td></tr><tr><td>持作銷售的已落成物業</td><td>11</td><td>112,271</td><td>75,855</td></tr><tr><td>存貨</td><td>12</td><td>4,996</td><td>7,806</td></tr><tr><td>貿易及其他應收款</td><td>13</td><td>267,649</td><td>299,294</td></tr><tr><td>合同資產及合同取得成本</td><td>14</td><td>10,137</td><td>15,943</td></tr><tr><td>預付所得稅金</td><td></td><td>17,238</td><td>24,618</td></tr><tr><td>以公允價值計量且其變動計入損益的金融資產</td><td>17</td><td>8,701</td><td>11,688</td></tr><tr><td>受限制現金</td><td>15</td><td>23,535</td><td>56,686</td></tr><tr><td>現金及現金等價物</td><td>16</td><td>6,362</td><td>7,130</td></tr><tr><td></td><td></td><td>916,885</td><td>1,156,187</td></tr><tr><td>流動負債</td><td></td><td></td><td></td></tr><tr><td>合同負債</td><td>19</td><td>281,988</td><td>489,021</td></tr><tr><td>貿易及其他應付款</td><td>18</td><td>394,857</td><td>408,378</td></tr><tr><td>當期所得稅負債</td><td></td><td>38,918</td><td>36,131</td></tr><tr><td>優先票據</td><td>20</td><td>73,084</td><td>68,367</td></tr><tr><td>公司債券</td><td>21</td><td>9,607</td><td>3,170</td></tr><tr><td>可換股債券</td><td>22</td><td>6,691</td><td>6,171</td></tr><tr><td>銀行及其他借款</td><td>23</td><td>137,413</td><td>114,665</td></tr><tr><td>租賃負債</td><td></td><td>192</td><td>282</td></tr><tr><td>衍生金融工具</td><td></td><td>-</td><td>60</td></tr><tr><td></td><td></td><td>942,750</td><td>1,126,245</td></tr><tr><td>流動(負債)/資產淨值</td><td></td><td>(25,865)</td><td>29,942</td></tr><tr><td>總資產減流動負債</td><td></td><td>93,093</td><td>166,747</td></tr></tbody></table>

于12月31日

附注2024年
人民币百万元
2023年
人民币百万元
非流动资产
物业、厂房及设备621,07722,694
投资物业715,68716,625
无形资产7761,004
使用权资产6,3175,671
在建物业89,75113,282
于合营企业之投资9(b)29,62131,023
于联营公司之投资9(c)15,91017,680
以公允价值计量且其变动计入其他综合收益的金融资产104,6277,408
贸易及其他应收款13783848
递延所得税资产2714,40920,570
118,958136,805
流动资产
在建物业8465,996657,167
持作销售的已落成物业11112,27175,855
存货124,9967,806
贸易及其他应收款13267,649299,294
合同资产及合同取得成本1410,13715,943
预付所得税金17,23824,618
以公允价值计量且其变动计入损益的金融资产178,70111,688
受限制现金1523,53556,686
现金及现金等价物166,3627,130
916,8851,156,187
流动负债
合同负债19281,988489,021
贸易及其他应付款18394,857408,378
当期所得税负债38,91836,131
优先票据2073,08468,367
公司债券219,6073,170
可换股债券226,6916,171
银行及其他借款23137,413114,665
租赁负债192282
衍生金融工具-60
942,7501,126,245
流动(负债)/资产净值(25,865)29,942
总资产减流动负债93,093166,747