kotaro-kinoshita/yomitoku
YomiTokuはAIを活用した日本語文書解析エンジンを提供するPythonパッケージです。 Yomitoku is an AI-powered document image analysis package designed specifically for the Japanese language.
YomiToku – 일본어 특화 문서 AI
YomiToku는 일본어(및 영어) 문서 이미지에서 OCR, 레이아웃 분석, 표 구조 파싱, 읽기 순서 추정을 수행하는 오픈소스 Python 라이브러리입니다. 네 가지 목적별 훈련 모델(텍스트 감지, 텍스트 인식, 레이아웃, 표 의미)을 제공하며, GPU 또는 CPU에서 실행할 수 있고, 더 빠른 추론을 위한 경량 “lite” 모드도 지원합니다.
기능
- 전체 텍스트 OCR – 7,000개 이상의 일본어 문자를 인식하며, 손글씨, 세로쓰기, 혼합 언어 텍스트를 지원합니다.
- 레이아웃 파싱 – 문단, 그림, 표, 읽기 순서를 식별하여 문서의 시각적 구조를 보존합니다.
- 표 의미 파서 – 표를 키-값 쌍 또는 그리드 데이터로 추출하고, 셀 ID와 좌표가 포함된 구조화된 JSON을 출력합니다.
- 提取器 – 根据用户提供的模式,将表单中的字段通过基于规则或 LLM 增强的方式提取为 YAML/JSON。
- 多种导出格式 – Markdown、HTML、JSON、CSV、可搜索 PDF,以及可选的图形/图像导出。
主要特性
| 特性 | 详情 |
|---|---|
| 以日语为中心的模型 | 基于日语文档数据集训练;支持竖排书写和手写字符。 |
| GPU 加速,低显存 | 支持 ≤8 GB 显存;轻量模型(--lite)可在 CPU 上流畅运行。 |
| Web 演示 | 通过 WebAssembly/WebGPU 进行纯浏览器推理(无需上传图像)。 |
| CLI 和 Python API | yomitoku 用于批量处理,yomitoku_table 用于表格解析,yomitoku_extract/yomitoku_extract_with_llm 用于结构化提取。 |
| 可扩展提取 | 基于规则(快速,无需 LLM)和基于 LLM(通过 vLLM,例如 Qwen-3-8B-Instruct)模式。 |
| 商业许可 | 在 CC BY-NC-SA 4.0 下非商业用途免费;企业功能提供付费本地或 AWS Marketplace 许可。 |
安装
pip install yomitoku # 核心 OCR 和版面
# 提取功能的可选扩展
pip install "yomitoku[extract]"
需要 Python 3.10-3.13、PyTorch ≥2.5,以及 CUDA ≥11.8 以支持 GPU 加速。对于没有兼容 CUDA 的环境,提供了 Dockerfile。
快速开始(CLI)
# 完整 OCR + 版面,输出带图形的 Markdown
yomitoku path/to/image_or_dir -f md -o out_dir -v --figure
# 更快的纯 CPU 模式
yomitoku path/to/image -f json --lite -d cpu -o out_dir
快速开始(Python API)
import cv2
from yomitoku import DocumentAnalyzer
# 可选的轻量配置
configs = {
"ocr": {
"text_recognizer": {
"model_name": "parseq-tiny-dynw-v4",
"dynamic_width": True,
"batch_bucketing": True,
"device": "cpu",
},
"text_detector": {"device": "cpu", "infer_onnx": True},
}
}
analyzer = DocumentAnalyzer(configs=configs, device="cpu")
img = cv2.imread("sample.jpg")
results, ocr_vis, layout_vis = analyzer(img)
results.to_json("output.json")
表格语义解析器(CLI)
yomitoku_table docs/ -o tables_out -v # 提取键值对和网格 JSON
选项: --simple(仅文本)、--raw(完整模式)、--lite、--grid_only、--kv_only 等。
提取器(CLI)
# 基于规则的提取
yomitoku_extract invoice.jpg -s schema.yaml -o out_dir -v
# 基于 LLM 的提取(需要运行 vLLM 服务器)
yomitoku_extract_with_llm receipt.jpg -s schema.yaml -m Qwen/Qwen3-8B-Instruct
文档与演示
- 在线文档:https://kotaro-kinoshita.github.io/yomitoku/
- 浏览器演示(无需安装):https://yomitoku-studio.mlism.com
- OCR/版面结果画廊:仓库中的
gallery.md和gallery_table_semantic_parser.md。
许可证
源代码和模型权重在 CC BY-NC-SA 4.0(允许非商业用途)下发布。商业部署需要付费许可证(本地或 AWS Marketplace)。
总结
YomiToku 提供了一个即用型、面向日语的文档 OCR 和版面处理流水线,可在普通硬件上本地运行,或通过零安装的 Web 演示访问。它适合需要从表单中提取高精度日语文本、表格解析或结构化数据的开发者,并提供基于规则和 LLM 增强的选项。
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트