🚀 阿拉伯基础Nougat模型
阿拉伯基础Nougat是一个专为阿拉伯语书籍设计的端到端结构化光学字符识别(OCR)系统,能够将阿拉伯书籍页面图像转换为结构化文本。
🚀 快速开始
在线演示
你可以通过这个链接进行在线体验:Demo
本地使用
在本地使用前,请确保更新transformers
库:
pip install -U transformers
以下是使用该模型的示例代码:
from PIL import Image
import torch
from transformers import NougatProcessor, VisionEncoderDecoderModel
processor = NougatProcessor.from_pretrained("MohamedRashad/arabic-base-nougat")
model = VisionEncoderDecoderModel.from_pretrained("MohamedRashad/arabic-base-nougat", torch_dtype=torch.bfloat16, attn_implementation={"decoder": "flash_attention_2", "encoder": "eager"})
context_length = model.decoder.config.max_position_embeddings
torch_dtype = model.dtype
device = "cuda" if torch.cuda.is_available() else "cpu"
model.to(device)
def predict(img_path):
image = Image.open(img_path)
pixel_values = processor(image, return_tensors="pt").pixel_values.to(torch_dtype).to(device)
outputs = model.generate(
pixel_values.to(device),
repetition_penalty=1.5,
min_length=1,
max_new_tokens=context_length,
bad_words_ids=[[processor.tokenizer.unk_token_id]],
)
page_sequence = processor.batch_decode(outputs, skip_special_tokens=True)[0]
page_sequence = processor.post_process_generation(page_sequence, fix_markdown=False)
return page_sequence
print(predict("path/to/page_image.jpg"))
✨ 主要特性
阿拉伯基础Nougat模型基于facebook/nougat-base架构,并使用MohamedRashad/arabic-img2md数据集进行微调。它可以将阿拉伯书籍页面图像转换为结构化文本,尤其适用于需要Markdown格式的场景。
📚 详细文档
偏差、风险和局限性
- 文本幻觉:由于OCR任务的固有复杂性,模型偶尔可能会生成重复或错误的文本。
- 错误的图像路径:模型有时会输出与输入无关的图像路径,表明存在偶尔的混淆。
- 上下文长度限制:模型的最大上下文长度为2048个标记,对于较长的书籍页面,可能会导致转录不完整。
预期用途
该模型旨在将阿拉伯书籍页面的图像转换为结构化文本,特别是需要Markdown格式时。它适用于阿拉伯文学数字化领域的应用,以及从印刷材料中提取文本的任务。
伦理考虑
在需要精确OCR结果的情况下,用户必须意识到模型的局限性。建议用户验证和审查输出,特别是在精度至关重要的场景中。
模型详情
属性 |
详情 |
开发者 |
Mohamed Rashad |
模型类型 |
VisionEncoderDecoderModel |
支持语言 |
阿拉伯语和英语 |
许可证 |
GPL 3.0 |
微调基础模型 |
nougat-base |
致谢
如果使用或基于阿拉伯基础Nougat OCR进行开发,请感谢模型开发者和开源社区的贡献。此外,在重新分发或修改模型的任何版本时,请务必包含GPL 3.0许可证的副本。通过选择GPL 3.0许可证,你促进了开源原则,并确保模型的益处能够与更广泛的社区共享。
引用
如果你发现该模型有用,请引用相应的研究论文:
@misc{rashad2024arabicnougatfinetuningvisiontransformers,
title={Arabic-Nougat: Fine-Tuning Vision Transformers for Arabic OCR and Markdown Extraction},
author={Mohamed Rashad},
year={2024},
eprint={2411.17835},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2411.17835},
}
免责声明
阿拉伯基础Nougat OCR是按“原样”提供的工具,开发者不保证其适用于特定任务。建议用户根据自己的特定用例和需求,彻底评估模型的输出。
项目链接
