/ Модель

Характеристики

Контекст
8 192 токена
Лицензия
GPL 3.0
Архитектура
vision-encoder-decoder · dense
Библиотека
transformers
Опубликована
18 окт 2024

arabic-large-nougat

Описание изображенийИзображение → текст5 профессий

Модель OCR на архитектуре Nougat преобразует изображения страниц арабских книг в структурированный текст, включая Markdown.

91скачиваний за 30 дней18лайковвеса обновлены28 ноя 2024

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Распознавание текста» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Arabic Large Nougat — модель OCR, разработанная Mohamed Rashad для преобразования изображений страниц арабских книг в структурированный текст, в том числе с разметкой Markdown. Она построена на архитектуре VisionEncoderDecoderModel с архитектурой Nougat и обучена с нуля на наборе данных MohamedRashad/arabic-img2md с токенизатором riotu-lab/Aranizer-PBE-86k. Модель принимает изображения и генерирует текст; заявленная максимальная длина контекста — 2048 токенов.

Модель предназначена для оцифровки арабской литературы и извлечения текста из печатных материалов. Карточка указывает поддержку арабского и английского языков и лицензию GPL-3.0. Модель может повторять или ошибочно распознавать текст, а также генерировать нерелевантные пути к изображениям; длинные страницы могут быть транскрибированы не полностью. Результат следует проверять, особенно если важна точность.

Сценарии применения

  • распознавание текста на изображениях страниц арабских книг
  • оцифровка арабской литературы
  • извлечение структурированного текста из печатных материалов
  • преобразование страниц книги в Markdown

Ограничения

Модель может повторять или ошибочно распознавать текст и генерировать нерелевантные пути к изображениям. Контекст ограничен 2048 токенами, поэтому длинные страницы могут распознаваться не полностью; результат рекомендуется проверять.

Для каких профессий подходит5

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Arabic Large Nougat

End-to-End Structured OCR for Arabic books.

Description

Github 🤗 Hugging Face 📝 Paper 🗂️ Data 📽️ Demo

The arabic-large-nougat OCR is an end-to-end structured Optical Character Recognition (OCR) system designed specifically for the Arabic language.

This model was trained from scratch based on the new tokenizer riotu-lab/Aranizer-PBE-86k with the base nougat architecture. The training happened using the MohamedRashad/arabic-img2md dataset.

How to Get Started with the Model

Demo: https://huggingface.co/spaces/MohamedRashad/Arabic-Nougat

Or, use the code below to get started with the model locally.

Don't forget to update transformers: pip install -U transformers

from PIL import Image
import torch
from transformers import NougatProcessor, VisionEncoderDecoderModel

# Load the model and processor
processor = NougatProcessor.from_pretrained("MohamedRashad/arabic-large-nougat")
model = VisionEncoderDecoderModel.from_pretrained(
    "MohamedRashad/arabic-large-nougat",
    torch_dtype=torch.bfloat16,
    attn_implementation={"decoder": "flash_attention_2", "encoder": "eager"},
)

# Get the max context length of the model & dtype of the weights
context_length = model.decoder.config.max_position_embeddings
torch_dtype = model.dtype

# Move the model to GPU if available
device = "cuda" if torch.cuda.is_available() else "cpu"
model.to(device)


def predict(img_path):
    # prepare PDF image for the model
    image = Image.open(img_path)
    pixel_values = (
        processor(image, return_tensors="pt").pixel_values.to(torch_dtype).to(device)
    )

    # generate transcription
    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]
    return page_sequence


print(predict("path/to/page_image.jpg"))

Bias, Risks, and Limitations

  1. Text Hallucination: The model may occasionally generate repeated or incorrect text due to the inherent complexities of OCR tasks.
  2. Erroneous Image Paths: There are instances where the model outputs image paths that are not relevant to the input, indicating occasional confusion.
  3. Context Length Constraint: The model has a maximum context length of 2048 tokens, which may result in incomplete transcriptions for longer book pages.

Intended Use

The arabic-large-nougat OCR is designed for tasks that involve converting images of Arabic book pages into structured text, especially when Markdown format is desired. It is suitable for applications in the field of digitizing Arabic literature and facilitating text extraction from printed materials.

Ethical Considerations

It is crucial to be aware of the model's limitations, particularly in instances where accurate OCR results are critical. Users are advised to verify and review the output, especially in scenarios where precision is paramount.

Model Details

  • Developed by: Mohamed Rashad
  • Model type: VisionEncoderDecoderModel
  • Language(s) (NLP): Arabic & English
  • License: GPL 3.0

Acknowledgment

If you use or build upon the arabic-large-nougat OCR, please acknowledge the model developer and the open-source community for their contributions. Additionally, be sure to include a copy of the GPL 3.0 license with any redistributed or modified versions of the model.

By selecting the GPL 3.0 license, you promote the principles of open source and ensure that the benefits of the model are shared with the broader community.

Citation

If you find this model useful, please cite the corresponding research paper:

@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}, 
}

Disclaimer

The arabic-large-nougat OCR is a tool provided "as is," and the developers make no guarantees regarding its suitability for specific tasks. Users are encouraged to thoroughly evaluate the model's output for their particular use cases and requirements.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers

Можно запустить

Подбираем GPU…

Класс архитектуры
VisionEncoderDecoderModel
Ревизия весов
23ad1d7

0 моделей