kotaro-kinoshita/yomitoku
YomiTokuはAIを活用した日本語文書解析エンジンを提供するPythonパッケージです。 Yomitoku is an AI-powered document image analysis package designed specifically for the Japanese language.
YomiToku – 面向日语的文档 AI
YomiToku 是一个开源的 Python 库,用于对日语(和英语)文档图像执行 OCR、版面分析、表格结构解析和阅读顺序估计。它附带四个针对特定任务训练的模型(文本检测、文本识别、版面分析和表格语义),可在 GPU 或 CPU 上运行,并提供轻量级“精简”模式以加快推理速度。
功能
- 全文 OCR – 识别超过 7000 个日语字符,支持手写、竖排和混合语言文本。
- 版面解析 – 识别段落、图形、表格和阅读顺序,保留文档的视觉结构。
- 表格语义解析器 – 将表格提取为键值对或网格数据,输出包含单元格 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 增强的选项。
相关
- 项目
- 项目
- 项目
- 项目
- 项目