OCR DocVQA Donut
简介
核心亮点
- 端到端架构,无需额外部署 OCR 引擎
- 高效处理发票、凭证等结构化文档提取
- 直接将图像转化为文本答案,减少解析误差
- MIT 协议开源,部署灵活且集成成本低
使用方法
# 安装 Hugging Face transformers
pip install transformers torch
# 使用 transformers 加载模型
from transformers import AutoModel, AutoTokenizer
model = AutoModel.from_pretrained("jinhybr/OCR-DocVQA-Donut")
tokenizer = AutoTokenizer.from_pretrained("jinhybr/OCR-DocVQA-Donut")
Hugging Face 下载
我们推荐使用命令行或者 Hugging Face Hub SDK 来进行模型的下载。
操作指引:在下载前,请先通过如下命令安装 huggingface_hub:
pip install -U huggingface_hub
命令行下载
下载完整模型库
huggingface-cli download jinhybr/OCR-DocVQA-Donut
下载单个文件到指定本地文件夹(以下载 config.json 到当前路径下 ./dir 目录为例)
huggingface-cli download jinhybr/OCR-DocVQA-Donut config.json --local-dir ./dir
SDK 下载
# 模型下载
from huggingface_hub import snapshot_download
model_dir = snapshot_download('jinhybr/OCR-DocVQA-Donut')
Git 下载
请确保 lfs 已经被正确安装
git lfs install
git clone https://huggingface.co/jinhybr/OCR-DocVQA-Donut
如果您希望跳过 lfs 大文件下载,可以使用如下命令
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/jinhybr/OCR-DocVQA-Donut
模型文件托管在 Hugging Face Hub,使用 HF CLI / SDK / Git 直接下载,不经过本站。
PyTorch / Transformers 使用
安装 Transformers
pip install -U transformers torch
模型加载和推理
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained('jinhybr/OCR-DocVQA-Donut')
tokenizer = AutoTokenizer.from_pretrained('jinhybr/OCR-DocVQA-Donut')
完整文档
---
license: mit
pipeline_tag: document-question-answering
tags:
- donut
- image-to-text
- vision
widget:
- text: "What is the invoice number?"
src: "https://huggingface.co/spaces/impira/docquery/resolve/2359223c1837a7587402bda0f2643382a6eefeab/invoice.png"
- text: "What is the purchase amount?"
src: "https://huggingface.co/spaces/impira/docquery/resolve/2359223c1837a7587402bda0f2643382a6eefeab/contract.jpeg"
---
Donut (base-sized model, fine-tuned on DocVQA)
Donut model fine-tuned on DocVQA. It was introduced in the paper OCR-free Document Understanding Transformer by Geewok et al. and first released in this repository.
Disclaimer: The team releasing Donut did not write a model card for this model so this model card has been written by the Hugging Face team.
Model description
Donut consists of a vision encoder (Swin Transformer) and a text decoder (BART). Given an image, the encoder first encodes the image into a tensor of embeddings (of shape batch_size, seq_len, hidden_size), after which the decoder autoregressively generates text, conditioned on the encoding of the encoder.
Intended uses & limitations
This model is fine-tuned on DocVQA, a document visual question answering dataset.
We refer to the documentation which includes code examples.