InternScience/StructTable-InternVL2-1B
模型介绍
文件和版本
Pull Requests
讨论
分析

StructEqTable-Deploy:高效开源表格转 LaTeX 工具包

[ GitHub 仓库 ] [ 相关论文 ] [ 官网 ]

[ 数据集🤗 ] [ 模型🤗 ] [ 演示💬 ]

欢迎使用 StructEqTable-Deploy 官方仓库,这是一个将表格图片转换为 LaTeX/HTML/Markdown 的解决方案,由 DocGenome benchmark 提供的大规模可扩展数据驱动。

概述

表格是学术论文、财务报表、发票、网页等众多场景中结构化数据的有效表达形式。从表格图片中提取表格数据并基于提取结果执行下游推理任务极具挑战性,主要在于表格通常包含复杂的行列标题及跨单元格操作。为应对上述挑战,我们提出了 TableX——一个从 DocGenome benchmark 中提取的大规模多模态表格预训练基准,包含超过 200 万条高质量图像-LaTeX 配对数据,涵盖 156 个学科类别。此外,得益于如此大规模的数据,我们训练了一个端到端模型 StructEqTable,能够从表格图片中精确获取对应的 LaTeX 描述,并执行多种表格相关推理任务,包括结构提取和问答,从而拓宽了其应用范围和潜力。

更新日志

  • [2024/12/12] 🔥 我们发布了最新模型 StructTable-InternVL2-1B v0.2,显著增强了 HTML 和 Markdown 格式的识别稳定性!

  • [2024/10/19] 我们发布了最新模型 StructTable-InternVL2-1B!

    得益于 IntenrVL2 强大的基础能力,并通过在合成表格数据和 DocGenome 数据集上进行微调,StructTable 能够将表格图片转换为 LaTeX、HTML 和 Markdown 等多种常见表格格式。此外,相比 v0.2 版本,推理速度得到了显著提升。

  • [2024/8/22] 我们发布了 StructTable-base-v0.2,基于 DocGenome 数据集微调而成。该版本通过数据增强和减少图像 token 数量,实现了推理速度和鲁棒性的提升。

  • [2024/8/08] 我们发布了 TensorRT 加速版本,在 A100 GPU 上处理大多数图像仅需约 1 秒。请按照教程安装环境并编译模型权重。

  • [2024/7/30] 我们发布了 StructEqTable 的首个版本。

待办事项

  • 发布 StructEqTable 的推理代码和检查点。
  • 支持 StructEqTable 的中文版本。
  • 使用 TensorRT-LLM 加速的 StructEqTable 版本。
  • 扩展更多表格图像领域,提升模型的通用能力。
  • 使用 LMDeploy 工具包实现 StructTable-InternVL2-1B 的高效推理。
  • 发布我们的表格预训练和微调代码

安装

conda create -n structeqtable python>=3.10
conda activate structeqtable

# Install from Source code  (Suggested)
git clone https://github.com/UniModal4Reasoning/StructEqTable-Deploy.git
cd StructEqTable-Deploy
python setup develop

# or Install from Github repo
pip install "git+https://github.com/UniModal4Reasoning/StructEqTable-Deploy.git"

# or Install from PyPI
pip install struct-eqtable==0.3.0

模型仓库

基础模型模型规模训练数据数据增强LMDeployTensorRTHuggingFace
InternVL2-1B~1BDocGenome 和合成数据✔✔StructTable-InternVL2-1B v0.2
InternVL2-1B~1BDocGenome 和合成数据✔✔StructTable-InternVL2-1B v0.1
Pix2Struct-base~300MDocGenome✔✔StructTable-base v0.2
Pix2Struct-base~300MDocGenome✔StructTable-base v0.1

快速演示

  • 运行 demo/demo.py
cd tools/demo

python demo.py \
  --image_path ./demo.png \
  --ckpt_path U4R/StructTable-InternVL2-1B \
  --output_format latex
  • HTML 或 Markdown 格式输出(仅由 StructTable-InternVL2-1B 支持)
python demo.py \
  --image_path ./demo.png \
  --ckpt_path U4R/StructTable-InternVL2-1B \
  --output_format html markdown

高效推理

  • 安装 LMDeploy Tookit
pip install lmdeploy
  • 运行 demo/demo.py
cd tools/demo

python demo.py \
  --image_path ./demo.png \
  --ckpt_path U4R/StructTable-InternVL2-1B \
  --output_format latex \
  --lmdeploy
  • 可视化结果

    你可以将输出的 LaTeX 代码复制到 demo.tex 中,然后使用 Overleaf 进行表格可视化。

致谢

  • DocGenome. 一个用于训练和测试多模态大模型的开源大规模科学文档基准。
  • ChartVLM. 一个面向复杂图表推理的通用基准与基础模型。
  • Pix2Struct. 以截图解析作为视觉语言理解的预训练方法。
  • InternVL Family. 一系列强大的基础视觉-语言模型。
  • LMDeploy. 一套用于压缩、部署和推理服务 LLM 与 MLLM 的工具包。
  • UniMERNet. 一个面向真实场景数学公式识别的通用网络。
  • Donut. UniMERNet 中的 Transformer 编码器-解码器架构参考了 Donut。
  • Nougat. 数据增强方法参考了 Nougat。
  • TensorRT-LLM. 模型推理加速使用 TensorRT-LLM。

许可证

StructEqTable 基于 Apache License 2.0 发布。

引用

如果你在研究中觉得我们的模型 / 代码 / 论文对你有帮助,请考虑点个 ⭐ 并引用 📝,谢谢 :)

@article{xia2024docgenome,
  title={DocGenome: An Open Large-scale Scientific Document Benchmark for Training and Testing Multi-modal Large Language Models},
  author={Xia, Renqiu and Mao, Song and Yan, Xiangchao and Zhou, Hongbin and Zhang, Bo and Peng, Haoyang and Pi, Jiahao and Fu, Daocheng and Wu, Wenjie and Ye, Hancheng and others},
  journal={arXiv preprint arXiv:2406.11633},
  year={2024}
}

联系我们

如果您遇到任何问题或有疑问,请随时通过 zhouhongbin@pjlab.org.cn 与我们联系。