Выпускать
[2024/11/4] Шесть групп в чате.
[24.10.2024] Предыдущие четыре группы в чате заполнены, поэтому мы создали пятую группу.
[2024/10/11] Слишком много друзей хотят присоединиться к группе WeChat, поэтому мы создали четвертую группу.
[2024/10/2] версии GOT-OCR2.0 для onnx и mnn.
[29.09.2024]??? Сообщество реализовало первую версию llama_cpp_inference.
[24.09.2024]??? Поддержка быстрой настройки ms-swift для ваших собственных данных.
[23.09.2024]??? Мы выпускаем официальную демо-версию Modelscope. Большое спасибо за то, что Modelscope предоставил ресурсы графического процессора.
[2024/9/14]??? Выпускаем официальную демо-версию. Большое спасибо Huggingface за предоставление ресурсов графического процессора.
[2024/9/13]??? Мы выпускаем развертывание Huggingface.
[2024/9/03]??? Мы открываем исходный код кодов, весов и тестов. Статью можно найти в этом репозитории. Мы также отправили его в Arxiv.
[2024/9/03]??? Выпускаем модель OCR-2.0 GOT!
Мы призываем всех разрабатывать приложения GOT на основе этого репозитория. Спасибо за следующие вклады:
ссылка на vllm ~ автор: @Jay
Поддержка onnx и mnn ~ автор: @BaofengZan
Вывод llama_cpp ~ участник: @ 1694439208
Колаб GOT ~ автор: @Zizhe Wang
Версия GOT для процессора ~ автор: @ElvisClaros
Онлайн-демо ~ автор: @Joseph Pollack
Dokcer и демо-версия клиента ~ автор: @QIN2DIM
Графический интерфейс GOT ~ автор: @XJF2332
Установить
ПОЛУЧИЛ гири
Демо
Тренироваться
Тонкая настройка
Оценить
На пути к OCR-2.0 через унифицированную сквозную модель
Наша среда — cuda11.8+torch2.0.1.
Клонируйте этот репозиторий и перейдите в папку GOT.
git clone https://github.com/Ucas-HaoranWei/GOT-OCR2.0.gitcd 'папка GOT'
Установить пакет
conda create -n получил python=3.10 -y активация конды получена пип установить -e .
Установить Flash-Внимание
pip install ninja pip install flash-attn --no-build-isolation
Обнимающее лицо
Гугл Диск
Код BaiduYun: OCR2
простые тексты OCR:
python3 GOT/demo/run_ocr_2.0.py --имя-модели /GOT_weights/ --файл-изображения /an/image/file.png --type ocr
формат текста OCR:
python3 GOT/demo/run_ocr_2.0.py --имя-модели /GOT_weights/ --файл-изображения /an/image/file.png --формат типа
мелкозернистое распознавание текста:
python3 GOT/demo/run_ocr_2.0.py --имя-модели /GOT_weights/ --файл-изображения /an/image/file.png --type format/ocr --box [x1,y1,x2,y2]
python3 GOT/demo/run_ocr_2.0.py --имя-модели /GOT_weights/ --файл-изображения /an/image/file.png --type format/ocr --color красный/зеленый/синий
распознавание текста с несколькими кадрами:
python3 GOT/demo/run_ocr_2.0_crop.py --имя-модели /GOT_weights/ --файл-изображения /an/image/file.png
многостраничное распознавание текста (путь к изображению содержит несколько файлов .png):
python3 GOT/demo/run_ocr_2.0_crop.py --имя-модели /GOT_weights/ --файл-изображения /images/path/ --multi-page
визуализировать отформатированные результаты OCR:
python3 GOT/demo/run_ocr_2.0.py --имя-модели /GOT_weights/ --файл-изображения /an/image/file.png --формат типа --render
Примечание . Результаты рендеринга можно найти в /results/demo.html. Откройте demo.html, чтобы увидеть результаты.
Образец поезда можно найти здесь. Обратите внимание, что «
Эта база кода поддерживает только постобучение (этап 2/этап 3) для наших весов GOT.
Если вы хотите тренироваться с этапа 1, описанного в нашей статье, вам понадобится этот репозиторий.
глубокая скорость /GOT-OCR-2.0-master/GOT/train/train_GOT.py --deepspeed /GOT-OCR-2.0-master/zero_config/zero2.json --имя_модели_или_путь /GOT_weights/ --use_im_start_end Истина --bf16 Правда --gradient_accumulation_steps 2 --evaluation_strategy "нет" --save_strategy "шаги" --save_steps 200 --save_total_limit 1 --weight_decay 0. --warmup_ratio 0,001 --lr_scheduler_type "косинус" --logging_steps 1 --tf32 Правда --model_max_length 8192 --gradient_checkpointing Истина --dataloader_num_workers 8 --report_to нет --per_device_train_batch_size 2 --num_train_epochs 1 --learning_rate 2e-5 --datasets pdf-ocr+scence --output_dir/ваш/выход/путь
Примечание :
Измените соответствующую информацию о данных в файле Constant.py.
Измените строку 37 в разговоре_dataset_qwen.py на свое имя_данных.
Быстрая точная настройка с помощью ms-swift:
git клон https://github.com/modelscope/ms-swift.gitcd ms-swift pip install -e .[llm]
# по умолчанию: sft LLM и проектор, заморозить видеокодерCUDA_VISIBLE_DEVICES=0 Swift sft --model_type got-ocr2 --model_id_or_path stepfun-ai/GOT-OCR2_0 --sft_type лора --dataset latex-ocr-print#5000# Deepspeed ZeRO2NPROC_PER_NODE=4 CUDA_VISIBLE_DEVICES=0,1,2,3 быстрый переход --model_type got-ocr2 --model_id_or_path stepfun-ai/GOT-OCR2_0 --sft_type лора --dataset latex-ocr-print#5000 --deepspeed по умолчанию-ноль2
С вашими данными :
--dataset train.jsonl --val_dataset val.jsonl (необязательно)
Формат данных :
{"query": "55555", "response": "66666", "images": ["image_path"]} {"query": " eeee", "response": "ffffff", "history": [], "images": ["image_path1", "image_path2"]} {"запрос": "EEEEE", "ответ": "FFFFF", "история": [["запрос1", "ответ1"], ["запрос2", "ответ2"]]}
Более подробную информацию можно увидеть в ms-swift.
Мы используем тесты Fox и OneChart, а другие тесты можно найти по ссылке для скачивания весов.
Коды оценки можно найти в GOT/eval.
Вы можете использовать Assessment_GOT.py для запуска оценки. Если у вас 8 графических процессоров, параметр --num-chunks можно установить равным 8.
python3 GOT/eval/evaluate_GOT.py --model-name /GOT_weights/ --gtfile_path xxxx.json --image_path /image/path/ --out_path /data/eval_results/GOT_mathpix_test/ --num-chunks 8 --datatype OCR
Если вы заинтересованы в этой работе или у вас есть вопросы по коду или статье, присоединяйтесь к нашей группе общения в Wechat.
Примечание . Все пять групп Wechat заполнены, присоединяйтесь к группе 6.
Не стесняйтесь обращаться ко мне по электронной почте [email protected], если у вас есть какие-либо вопросы.
Варьируйте: кодовую базу, на которой мы строили!
Qwen: базовая модель Vary для LLM, которая хорошо говорит как на английском, так и на китайском языке!
@article{wei2024general, title={Общая теория оптического распознавания символов: на пути к оптическому распознаванию символов 2.0 через единую сквозную модель}, автор={Вэй, Хаоран и Лю, Чэнлун и Чен, Цзиньюэ и Ван, Цзя и Конг, Линъюй и Сюй, Яньмин и Гэ, Чжэн и Чжао, Лян и Сунь, Цзяньцзянь и Пэн, Юанг и другие}, журнал={препринт arXiv arXiv:2409.01704}, год={2024}}@article{wei2023vary, title={Vary: Scaling словарь видения для больших моделей языка видения}, автор={Вэй, Хаоран и Конг, Линъюй и Чен, Цзиньюэ и Чжао, Лян и Гэ, Чжэн и Ян, Цзиньжун и Сунь, Цзяньцзянь и Хань, Чуньруй и Чжан, Сянъюй }, журнал={препринт arXiv arXiv:2312.06109}, год={2023}}