Image-Text-to-Text
GGUF
Korean
English
Chinese
llama.cpp
ocr
document-understanding
korean
multimodal
vision
deepseek-ocr
batiai
quantized
conversational
Instructions to use batiai/batisee with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use batiai/batisee with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf batiai/batisee:Q4_K_M # Run inference directly in the terminal: llama cli -hf batiai/batisee:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf batiai/batisee:Q4_K_M # Run inference directly in the terminal: llama cli -hf batiai/batisee:Q4_K_M
Build from source code
git clone https://github.com/ggml-org/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-app # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama serve -hf batiai/batisee:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama cli -hf batiai/batisee:Q4_K_M
Use Docker
docker model run hf.co/batiai/batisee:Q4_K_M
- Llama new
- LM Studio
- Jan
- vLLM
How to use batiai/batisee with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "batiai/batisee" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "batiai/batisee", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/batiai/batisee:Q4_K_M
- Ollama
How to use batiai/batisee with Ollama:
ollama run hf.co/batiai/batisee:Q4_K_M
- Unsloth Desktop
- Docker Model Runner
How to use batiai/batisee with Docker Model Runner:
docker model run hf.co/batiai/batisee:Q4_K_M
- Lemonade
How to use batiai/batisee with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull batiai/batisee:Q4_K_M
Run and chat with the model
lemonade run user.batisee-Q4_K_M
List all available models
lemonade list
- Atomic Chat
honesty: v2 손글씨 인식 회귀 명시(v1 우세), 정확도=합성 in-domain 범위, 손글씨 교정 재학습 진행중
Browse files
README.md
CHANGED
|
@@ -47,7 +47,10 @@ library_name: llama.cpp
|
|
| 47 |
- **Our own conversion** — GGUF built directly from `baidu/Unlimited-OCR` original safetensors, BatiAI-signed (`general.author = BatiAI`).
|
| 48 |
- **MIT** — fully commercial-friendly.
|
| 49 |
|
| 50 |
-
## 🆕 batisee **v2** (recommended) —
|
|
|
|
|
|
|
|
|
|
| 51 |
|
| 52 |
**v2** is a **BatiAI fine-tune** of batisee (LoRA on the text decoder), trained on rendered Korean
|
| 53 |
documents **+ real AI-Hub Korean handwriting**. It targets a failure mode we found while stress-testing v1:
|
|
@@ -72,7 +75,11 @@ v2 cures this.
|
|
| 72 |
**CER 0.349 → 0.245** (~30 % relative), **every category down** — receipt 0.148→0.065,
|
| 73 |
multi-column 0.637→0.242, form 0.231→0.136, invoice 0.310→0.242, official 0.065→0.018, report 0.047→0.030.
|
| 74 |
|
| 75 |
-
3. **Handwriting
|
|
|
|
|
|
|
|
|
|
|
|
|
| 76 |
|
| 77 |
**v2 files** — in the `v2/` folder; the v1 files stay at the repo root, unchanged:
|
| 78 |
|
|
@@ -98,8 +105,10 @@ removes the loops without hurting tables or legitimate repeated cells (validated
|
|
| 98 |
36 dense synthetic pages; tables/receipts unaffected). Use this recipe for v2.
|
| 99 |
|
| 100 |
**Honest limitations (read before you rely on it):**
|
| 101 |
-
-
|
| 102 |
-
|
|
|
|
|
|
|
| 103 |
- Tables are scored by **structure (TEDS)**, not CER — cell text can still slip on hard scans.
|
| 104 |
- **There is no separate "field-extraction" mode.** An `"extract fields."` prompt returns the same full-page
|
| 105 |
parse as `"document parsing."`, *not* structured JSON — parse the full-page output yourself for key/values.
|
|
@@ -107,8 +116,7 @@ removes the loops without hurting tables or legitimate repeated cells (validated
|
|
| 107 |
**v2** 는 batisee 의 **BatiAI 파인튜닝**(텍스트 디코더 LoRA)입니다. 렌더 한국어 문서 **+ 실제 AI-Hub 한국어 손글씨**로 학습했고,
|
| 108 |
v1 의 약점(밀집 영수증·다단 페이지에서 Q4 GGUF 가 `<|det|>image` 수만 토큰 반복 루프에 빠지는 현상 — 강한 penalty 로도 안 고쳐짐)을
|
| 109 |
**파인튜닝으로 해결**했습니다. 밀집 문서 CER 17–27(퇴화)→**0.20**, 루프 4/24→**0/24**, 파스 CER 0.349→0.245(약 30%↓, 전 카테고리 개선),
|
| 110 |
-
|
| 111 |
-
표는 구조(TEDS) 기준, **별도 필드추출(JSON) 기능 없음**(`extract fields.` = `document parsing.` 과 동일 출력).
|
| 112 |
|
| 113 |
## ⭐ Korean OCR results / 한국어 OCR 검증
|
| 114 |
|
|
@@ -177,10 +185,11 @@ This model is a GGUF distribution of `baidu/Unlimited-OCR` (**MIT**), which is b
|
|
| 177 |
|
| 178 |
## Roadmap
|
| 179 |
|
| 180 |
-
- ✅ **v2 shipped** —
|
| 181 |
-
-
|
|
|
|
| 182 |
- Ollama support once the `deepseek2ocr` engine merges.
|
| 183 |
-
- ✅ **v2 출시
|
| 184 |
|
| 185 |
## About BatiFlow
|
| 186 |
|
|
|
|
| 47 |
- **Our own conversion** — GGUF built directly from `baidu/Unlimited-OCR` original safetensors, BatiAI-signed (`general.author = BatiAI`).
|
| 48 |
- **MIT** — fully commercial-friendly.
|
| 49 |
|
| 50 |
+
## 🆕 batisee **v2** (recommended for printed / dense documents) — fixes dense-document looping
|
| 51 |
+
|
| 52 |
+
> **Which to use:** **v2** for printed / dense / structured documents (receipts, multi-column, forms — fixes v1's looping).
|
| 53 |
+
> **v1** (repo root) for **free handwriting** — v2 currently regresses there (see point 3 below). A corrected handwriting fine-tune is in progress.
|
| 54 |
|
| 55 |
**v2** is a **BatiAI fine-tune** of batisee (LoRA on the text decoder), trained on rendered Korean
|
| 56 |
documents **+ real AI-Hub Korean handwriting**. It targets a failure mode we found while stress-testing v1:
|
|
|
|
| 75 |
**CER 0.349 → 0.245** (~30 % relative), **every category down** — receipt 0.148→0.065,
|
| 76 |
multi-column 0.637→0.242, form 0.231→0.136, invoice 0.310→0.242, official 0.065→0.018, report 0.047→0.030.
|
| 77 |
|
| 78 |
+
3. **⚠️ Handwriting — loop-safe, but a recognition regression vs v1 (be aware).** v2 no longer *loops* on
|
| 79 |
+
handwriting (0 degenerate / 80 pages), **but it recognizes real Korean handwriting *worse* than v1.**
|
| 80 |
+
On held-out real AI-Hub handwriting, order-agnostic word recall is **≈ 7 % for v2 vs ≈ 30 % for v1** — the
|
| 81 |
+
fine-tune over-anchored on printed-document patterns and tends to hallucinate document vocabulary on
|
| 82 |
+
free handwriting. **For handwriting, prefer v1 (repo root).** A corrected handwriting fine-tune is in progress.
|
| 83 |
|
| 84 |
**v2 files** — in the `v2/` folder; the v1 files stay at the repo root, unchanged:
|
| 85 |
|
|
|
|
| 105 |
36 dense synthetic pages; tables/receipts unaffected). Use this recipe for v2.
|
| 106 |
|
| 107 |
**Honest limitations (read before you rely on it):**
|
| 108 |
+
- **Accuracy gains are measured on rendered/synthetic Korean documents** (same generator family used for
|
| 109 |
+
fine-tuning — in-domain). Real-world generalization beyond that is **not** proven by these numbers.
|
| 110 |
+
- **Free handwriting is a regression vs v1** (word-recall ≈ 7 % vs ≈ 30 %) — see point 3 above. Use v1 for handwriting.
|
| 111 |
+
- Real-world **camera photos and heavy skew remain the frontier** (shared with v1; quantified separately).
|
| 112 |
- Tables are scored by **structure (TEDS)**, not CER — cell text can still slip on hard scans.
|
| 113 |
- **There is no separate "field-extraction" mode.** An `"extract fields."` prompt returns the same full-page
|
| 114 |
parse as `"document parsing."`, *not* structured JSON — parse the full-page output yourself for key/values.
|
|
|
|
| 116 |
**v2** 는 batisee 의 **BatiAI 파인튜닝**(텍스트 디코더 LoRA)입니다. 렌더 한국어 문서 **+ 실제 AI-Hub 한국어 손글씨**로 학습했고,
|
| 117 |
v1 의 약점(밀집 영수증·다단 페이지에서 Q4 GGUF 가 `<|det|>image` 수만 토큰 반복 루프에 빠지는 현상 — 강한 penalty 로도 안 고쳐짐)을
|
| 118 |
**파인튜닝으로 해결**했습니다. 밀집 문서 CER 17–27(퇴화)→**0.20**, 루프 4/24→**0/24**, 파스 CER 0.349→0.245(약 30%↓, 전 카테고리 개선),
|
| 119 |
+
**반드시 v2 레시피(`--repeat-penalty 1.1 --repeat-last-n 512`)** 사용. ⚠️ **손글씨는 v1보다 퇴행**(루프는 0/80이나 실제 인식은 v2 단어 recall ≈7% < v1 ≈30% — 파인튜닝이 인쇄문서에 과적합) → **손글씨는 v1(루트) 권장**, 교정 재학습 진행 중. 정확도 수치는 **합성 in-domain 기준**(실 일반화 미증명). 표는 구조(TEDS) 기준, **별도 필드추출(JSON) 기능 없음**(`extract fields.` = `document parsing.` 과 동일 출력).
|
|
|
|
| 120 |
|
| 121 |
## ⭐ Korean OCR results / 한국어 OCR 검증
|
| 122 |
|
|
|
|
| 185 |
|
| 186 |
## Roadmap
|
| 187 |
|
| 188 |
+
- ✅ **v2 shipped** — fixes dense-document looping, ~30 % parse-CER reduction on printed docs. See the v2 section above.
|
| 189 |
+
- 🔧 **In progress — handwriting fine-tune (corrected):** v2 regressed free-handwriting recognition vs v1 (over-anchored on printed docs). Re-doing it with spatial-order labels + anti-forgetting recipe + a word-recall no-regression gate vs v1.
|
| 190 |
+
- Next: **real-world camera photos / heavy skew / low-quality scans** — still the frontier; v2's measured gains are on rendered/synthetic docs.
|
| 191 |
- Ollama support once the `deepseek2ocr` engine merges.
|
| 192 |
+
- ✅ **v2 출시** — 밀집문서 루프 해결 + 인쇄문서 파스 CER 약 30%↓. 🔧 **손글씨는 교정 재학습 진행 중**(v2가 v1 대비 손글씨 퇴행 → 공간정렬 라벨+anti-forgetting+무회귀 게이트). 실 카메라/왜곡은 다음 프론티어.
|
| 193 |
|
| 194 |
## About BatiFlow
|
| 195 |
|