🚀 アップロードされたファインチューニング済みモデル
このQwen2_VLモデルは、UnslothとHuggingfaceのTRLライブラリを使用して、2倍速で学習されました。

- 開発者: JackChew
- ライセンス: apache - 2.0
- ファインチューニング元のモデル: unsloth/Qwen2-VL-2B-Instruct-16Bit
モデル情報
属性 |
详情 |
ベースモデル |
unsloth/Qwen2-VL-2B-Instruct |
タグ |
text-generation-inference, text-extraction, transformers, unsloth/Qwen2-VL-2B-Instruct-16Bit |
ベースモデル |
unsloth/Qwen2-VL-2B-Instruct-16Bit |
ライセンス |
apache - 2.0 |
言語 |
en |
✨ 主な機能
モデルの説明
通义千问 QWEN OCR は、テキスト抽出に特化した独自のモデルで、文書、表、給与明細書の画像からテキストを抽出するように特別に設計されています。このモデルの主な目的は、画像から完全なテキストを抽出し、情報を欠落させないことです。
Qwen2-VL-2B-OCRは、unsloth/Qwen2-VL-2B-Instructをファインチューニングしたバリアントで、光学文字認識(OCR)に特化して最適化されています。このモデルは、画像から完全なテキストを抽出するように学習されており、給与明細書、請求書、表などの文書を中心に対象としています。モデルは、情報の損失を最小限に抑えて正確なテキスト抽出を行い、すべての詳細を捕捉することを目指しています。このモデルは、画像からのテキスト生成に最先端の技術を使用しており、構造化されたレイアウトを持つ複雑な文書からのテキスト抽出など、さまざまなOCRタスクに対応しています。
想定される用途
このモデルの主な目的は、画像や文書、特に給与明細書や表から、重要な詳細を欠落させることなくデータを抽出することです。給与システム、金融、法的文書分析、および文書抽出が必要なあらゆる分野など、さまざまなドメインで適用できます。
プロンプトの例:
- テキスト: このモデルは
"画像/給与明細書からすべてのテキストを欠落なく抽出する"
というタスクに最適です。
モデルのベンチマーク
ベンチマーク結果
ベンチマーク |
InternVL2 - 2B |
MiniCPM - V 2.0 |
Qwen2 - VL - 2B |
MMMUval |
36.3 |
38.2 |
41.1 |
DocVQAtest |
86.9 |
- |
90.1 |
InfoVQAtest |
58.9 |
- |
65.5 |
ChartQAtest |
76.2 |
- |
73.5 |
TextVQAval |
73.4 |
- |
79.7 |
OCRBench |
781 |
605 |
794 |
MTVQA |
- |
- |
20.0 |
VCRen easy |
- |
- |
81.45 |
VCRzh easy |
- |
- |
46.16 |
RealWorldQA |
57.3 |
55.8 |
62.9 |
MMEsum |
1876.8 |
1808.6 |
1872.0 |
MMBench - ENtest |
73.2 |
69.1 |
74.9 |
MMBench - CNtest |
70.9 |
66.5 |
73.5 |
MMBench - V1.1test |
69.6 |
65.8 |
72.2 |
MMT - Benchtest |
- |
- |
54.5 |
MMStar |
49.8 |
39.1 |
48.0 |
MMVetGPT - 4 - Turbo |
39.7 |
41.0 |
49.5 |
HallBenchavg |
38.0 |
36.1 |
41.7 |
MathVistatestmini |
46.0 |
39.8 |
43.0 |
MathVision |
- |
- |
12.4 |
ファインチューニング後、このモデルは給与明細書からの関連セクションの抽出において大幅に改善され、以前は欠落していた 控除項目 セクションも抽出できるようになりました。
出力例の比較

ファインチューニング済みモデル:
給与明細書から抽出されたデータは以下の通りです。
従業員情報:
- 入社日: 2018 - 06 - 23
- 給与期間: 2021年8月
- 従業員名: Sally Harley
- 役職: マーケティングエグゼクティブ
- 部署: マーケティング
収入:
収入項目 |
金額 |
控除項目 |
金額 |
基本給 |
10000 |
積立金 |
1200 |
インセンティブ |
1000 |
職業税 |
500 |
家賃手当 |
400 |
ローン |
400 |
食事手当 |
200 |
|
9500 |
総収入: $11,600
総控除額: $2,100
実支給額: $9,500
雇用主署名
従業員署名
元のモデル:
元のモデルは以下のデータを抽出しましたが、控除項目 セクションを欠落させました。
- 入社日: 2018 - 06 - 23
- 給与期間: 2021年8月
- 従業員名: Sally Harley
- 役職: マーケティングエグゼクティブ
- 部署: マーケティング
- 収入:
- 基本給: $10,000
- インセンティブ給: $1,000
- 家賃手当: $400
- 食事手当: $200
- 総収入: $11,600
- 総控除額: $2,100
- 実支給額: $9,500
- 雇用主署名: [署名]
- 従業員署名: [署名]
- これはシステム生成の給与明細書です
📦 インストール
このモデルを使用するには、GPUのVRAMが少なくとも16GBあることが推奨されます。学習には大量のメモリが必要なため、メモリが少ないGPUでは、バッチサイズを小さくするか、勾配累積を行う必要があるかもしれません。
💻 使用例
基本的な使用法
モデルとプロセッサの読み込み
from transformers import AutoProcessor, AutoModelForImageTextToText
processor = AutoProcessor.from_pretrained("JackChew/Qwen2-VL-2B-OCR")
model = AutoModelForImageTextToText.from_pretrained("JackChew/Qwen2-VL-2B-OCR")
画像の読み込み
from PIL import Image
image_path = "xxxxx"
image = Image.open(image_path)
モデルの準備、入力の前処理、推論の実行
import requests
import torch
from torchvision import io
from typing import Dict
model = model.to("cuda")
conversation = [
{
"role":"user",
"content":[
{
"type":"image",
},
{
"type":"text",
"text":"extract all data from this payslip without miss anything"
}
]
}
]
text_prompt = processor.apply_chat_template(conversation, add_generation_prompt=True)
inputs = processor(text=[text_prompt], images=[image], padding=True, return_tensors="pt")
inputs = inputs.to('cuda')
output_ids = model.generate(**inputs, max_new_tokens=2048)
generated_ids = [output_ids[len(input_ids):] for input_ids, output_ids in zip(inputs.input_ids, output_ids)]
output_text = processor.batch_decode(generated_ids, skip_special_tokens=True, clean_up_tokenization_spaces=True)
print(output_text)
高度な使用法
推論中のCUDAメモリ問題の対処
モデルの推論中にCUDAメモリ問題が発生した場合、一般的な解決策は入力画像のサイズを縮小することです。これにより、メモリ使用量が減少し、モデルが画像をより効率的に処理できるようになります。
image = image.resize((image.width // 2, image.height // 2))
🔧 技術詳細
モデルのファインチューニングの詳細
このモデルは、Unslothフレームワークを使用してファインチューニングされました。このフレームワークは、HuggingfaceのTRL(Training Reinforcement Learning)ライブラリを使用して学習を2倍速にしました。LoRA(Low - Rank Adaptation)を適用して、パラメータの小さなサブセットのみをファインチューニングすることで、学習時間と計算リソースを大幅に削減しました。ファインチューニングは、ビジョンと言語の両方のレイヤーに焦点を当てて行われ、モデルが複雑なOCRタスクを効率的に処理できるようにしました。
総学習可能パラメータ数: 57,901,056
モデルのアーキテクチャ
モデルのアーキテクチャと詳細な仕様について詳しく知りたい場合は、以下のリンクからHugging Faceのソースページを参照できます。
Qwen2-VL-2B-Instructモデルページ
📄 ライセンス
このモデルは、apache - 2.0ライセンスの下で提供されています。