Logics-Parsing 文档解析工具
阿里文档智能解析 v1/v2 | GitHub 1.3k ⭐
文档图片 → 结构化 HTML | 复杂布局 | 公式识别 | 化学结构 | 代码块
一、核心定位
本技能整合阿里巴巴 Logics-Parsing 文档解析工具,核心理念:
End-to-End Document Parsing
从文档图片直接输出结构化结果,无需复杂 pipeline
二、版本对比
| 维度 |
v1 |
v2(推荐) |
| 发布 |
2025-09 |
2026-02 |
| 性能 |
基础 SOTA |
全面领先 |
| LogicsDocBench |
基准 |
82.16 分 |
| OmniDocBench |
基准 |
93.23 分 |
| Parsing-2.0 |
❌ 不支持 |
✅ 支持 |
| 结构化内容 |
公式/化学 |
+ 流程图/乐谱/代码 |
三、核心能力
3.1 支持的内容类型
| 类型 |
输出格式 |
说明 |
| 文本段落 |
HTML <p> |
自动识别标题/页眉/页脚 |
| 表格 |
HTML Table |
跨页表格合并 |
| 科学公式 |
LaTeX / MathML |
复杂公式精准识别 |
| 化学结构 |
SMILES 格式 |
分子式标准化 |
| 流程图 |
Mermaid 语法 |
v2 新增 |
| 乐谱 |
ABC Notation |
v2 新增 |
| 代码块 |
语法高亮代码 |
v2 新增 |
| 手写内容 |
独立标注 |
区分打印/手写 |
3.2 输出结构
<div class="content-block" category="formula" bbox="[x1,y1,x2,y2]">
<!-- 公式内容 + 坐标 + OCR 文本 -->
</div>
每个元素包含:
- category: 元素类型(paragraph/table/formula/figure 等)
- bbox: 边界框坐标
- text: OCR 识别文本
四、 Benchmarks 性能
4.1 LogicsDocBench(自建基准)
| 模型 |
总体分数 |
| Logics-Parsing-v2 |
82.16 ✅ |
| GPT-5 |
46.0 |
| Gemini 2.5 pro |
26.0 |
| Qwen2.5VL-72B |
34.9 |
| SmolDocling |
92.7 |
4.2 OmniDocBench-v1.5(公开基准)
| 模型 |
总体分数 |
| Logics-Parsing-v2 |
93.23 ✅ |
| GPT-5 |
46.0 |
| Gemini 2.5 pro |
46.0 |
| Qwen2VL-72B |
35.9 |
| Doubao-1.6 |
31.7 |
五、安装方式
5.1 基础安装(推荐 v2)
# 1. 克隆仓库
git clone https://github.com/alibaba/Logics-Parsing.git
cd Logics-Parsing
# 2. 创建环境(Python 3.10)
conda create -n logics-parsing python=3.10
conda activate logics-parsing
# 3. 安装依赖
pip install -r requirements.txt
# 4. 下载模型(Modelscope)
pip install modelscope
python download_model_v2.py -t modelscope
# 或从 HuggingFace
pip install huggingface_hub
python download_model_v2.py -t huggingface
5.2 快速安装(仅 v1)
conda create -n logics-parsing python=3.10
conda activate logics-parsing
pip install -r requirements.txt
# 下载模型
python download_model.py -t modelscope
六、快速开始
6.1 v2 推理命令
python3 inference_v2.py \
--image_path PATH_TO_INPUT_IMG \
--output_path PATH_TO_OUTPUT \
--model_path PATH_TO_MODEL
6.2 v1 推理命令
python3 inference.py \
--image_path PATH_TO_INPUT_IMG \
--output_path PATH_TO_OUTPUT \
--model_path PATH_TO_MODEL
6.3 Python API
from logics_parsing import LogicsParser
# 初始化
parser = LogicsParser(model_path="path/to/model")
# 解析文档
result = parser.parse("document.jpg")
# 输出 HTML
print(result.html)
# 输出结构化 JSON
print(result.to_json())
七、应用场景
7.1 学术文档处理
| 场景 |
能力 |
| 论文 PDF 解析 |
提取公式/表格/参考文献 |
| 化学论文 |
SMILES 格式分子结构 |
| 数学讲义 |
LaTeX 公式精准提取 |
| 教科书 |
复杂布局(多栏/跨页)处理 |
7.2 商业文档处理
| 场景 |
能力 |
| 合同解析 |
条款表格结构化 |
| 财务报表 |
数字表格提取 |
| 发票识别 |
表单字段提取 |
| 报纸剪报 |
复杂排版处理 |
7.3 Parsing-2.0 场景(v2 新增)
| 场景 |
输出格式 |
| 流程图 |
Mermaid 代码 |
| 乐谱 |
ABC Notation |
| 代码块 |
语法高亮代码 |
| Pseudocode |
结构化伪代码 |
八、输出示例
8.1 输入
[复杂布局学术论文图片,包含多栏文字、跨页表格、化学结构式]
8.2 结构化输出(HTML)
<div class="content-block" category="paragraph" bbox="[120,340,580,420]">
<p>We introduce a new document parsing model...</p>
</div>
<div class="content-block" category="formula" bbox="[200,450,400,520]">
<span class="latex">E = mc^2</span>
</div>
<div class="content-block" category="chemistry" bbox="[100,550,300,700]">
<span class="smiles">CC(=O)OC(=O)C</span>
</div>
<div class="content-block" category="table" bbox="[50,750,600,900]">
<table>
<tr><td>Method</td><td>Score</td></tr>
<tr><td>Logics-Parsing</td><td>82.16</td></tr>
</table>
</div>
九、与其他技能关联
| 本技能 |
关联技能 |
关系 |
| Logics-Parsing |
ai-research-tools |
论文解析 + 科研自动化 |
| Logics-Parsing |
browser-use |
网页内容抓取 + 解析 |
| Logics-Parsing |
obsidian-handbook |
解析结果存入 Obsidian |
| Logics-Parsing |
math-theory-notes |
数学公式识别 |
十、常见问题
| 问题 |
解决方案 |
| 模型下载慢 |
使用 Modelscope(国内推荐) |
| 显存不足 |
减小 image_size 参数 |
| OCR 乱码 |
检查字体配置 |
| 表格识别不准 |
使用 v2 版本性能更优 |
十一、注意事项
⚠️ 注意事项:
- Python 3.10+ required
- 需要 GPU(推荐 8GB+ 显存)
- 模型文件较大(~2GB),下载需要网络
- 部分功能需要额外字体支持
十二、使用方式
触发场景
用户说「解析这篇 PDF」→ 调用 Logics-Parsing v2
用户说「提取论文公式」→ 调用 Logics-Parsing
用户说「识别化学结构式」→ SMILES 格式输出
用户说「将 PDF 转 HTML」→ 结构化 HTML 输出
用户说「解析乐谱」→ v2 Parsing-2.0 功能
组合使用
用户:「帮我把这篇论文的关键公式和表格提取出来」
→ 使用 Logics-Parsing v2 解析
→ 提取公式(LaTeX)+ 表格(HTML)
→ 存入 Obsidian 或知识库
本技能整合阿里 Logics-Parsing 文档解析工具的完整安装与使用指南