Model reference · open weights
TableFormerV2 is an open-weight language model from docling-project. TableFormerV2 (FP32) weighs 105 MB; the smallest configuration that runs it is RTX 3060 12 GB.
For self-hosting, compare this build's requirements below with the GPU you plan to rent.
Summary of the docling-project/TableFormerV2 model card, 2026-10-15
What it is
| Released by | docling-project |
|---|---|
| Released | 2026-01-20 |
| Parameters | 52M |
| VRAM | 105 MB for the weights |
What it runs on
How much memory each request adds isn't estimated yet for this architecture. The weights need at least the cards below, plus room for the context.
| Card | Weights alone |
|---|---|
| RTX 3060 12 GB | fits |
| RTX 4060 Ti 16 GB | fits |
| RTX 3090 24 GB | fits |
| RTX 4090 24 GB | fits |
| RTX 5090 32 GB | fits |
| L40S 48 GB | fits |
| A100 80 GB | fits |
| H100 80 GB | fits |
| RTX PRO 6000 Blackwell 96 GB | fits |
| DGX Spark (GB10) 128 GB unified | fits |
| H200 141 GB | fits |
| B200 180 GB | fits |
From the model card
[!WARNING] Preview model. TableFormerV2 is a preview release. Its weights, outputs, and integration options can change in future releases without notice. The default table structure model in Docling is still TableFormer V1.
TableFormerV2 is a table structure recognition model for
Docling. It takes an image of a
table and predicts its structure as an
OTSL token sequence, together with a
bounding box for each cell. Docling then maps the cells back to the text of the
document to build a TableItem in the DoclingDocument.
| Developed by | IBM Research, for the Docling project |
| Model type | Image-to-sequence (table structure + cell boxes) |
| Parameters | ~52M (FP32) |
| Input | Table crop, resized to 448×448 |
| Output | OTSL structure tokens and one bounding box per cell |
| License | Apache-2.0 |
| Status | Preview |
The design is lightweight. It targets fast CPU inference and GPU batch inference.
The model implementation is in
docling-ibm-models
(docling_ibm_models.tableformer_v2).
Install Docling:
pip install docling
Docling downloads the weights from this repository automatically the first time you use the model. To download them before you run a conversion (for example, for offline use), run:
docling-tools models download tableformerv2
The fastest way to enable TableFormerV2 is to select it by name.
CLI:
docling report.pdf --table-structure-engine docling_tableformer_v2
Docling Serve / Service Client: set the tableformer_v2 preset.
from docling.datamodel.service.options import ConvertDocumentsOptions
from docling.service_client import DoclingServiceClient
options = ConvertDocumentsOptions(table_structure_preset="tableformer_v2")
with DoclingServiceClient(url="http://localhost:5001") as client:
result = client.convert(source="report.pdf", options=options)
print(result.document.export_to_markdown())
Use the Python SDK when you need full control over the pipeline. Set
table_structure_options to TableStructureV2Options:
from docling.datamodel.accelerator_options import AcceleratorOptions
from docling.datamodel.base_models import InputFormat
from docling.datamodel.pipeline_options import (
PdfPipelineOptions,
TableStructureV2Options,
)
from docling.document_converter import DocumentConverter, PdfFormatOption
pipeline_options = PdfPipelineOptions(
do_table_structure=True,
table_structure_options=TableStructureV2Options(
# True: match the predicted cells to the text cells of the PDF.
# False: use the cells predicted by the model and ignore the PDF cells.
do_cell_matching=True,
),
accelerator_options=AcceleratorOptions(device="auto", num_threads=8),
)
converter = DocumentConverter(
format_options={
InputFormat.PDF: PdfFormatOption(pipeline_options=pipeline_options),
}
)
result = converter.convert("report.pdf")
for table in result.document.tables:
print(table.export_to_dataframe())
To load pre-downloaded weights, set artifacts_path on the pipeline options:
pipeline_options = PdfPipelineOptions(
artifacts_path="/path/to/models", # contains docling-project--TableFormerV2/
table_structure_options=TableStructureV2Options(),
)
| Option | Default | Description |
|---|---|---|
do_cell_matching | True | Match the predicted cells to the PDF text cells. Set to False if PDF cells span more than one column, because this can break the table output. |
This model is released under the Apache License 2.0.
If you use TableFormerV2, please cite Docling:
@misc{Docling,
author = {Docling Team},
title = {Docling: An Efficient Open-Source Toolkit for AI-driven Document Conversion},
url = {https://arxiv.org/abs/2501.17887},
eprint = {2501.17887},
archivePrefix = {arXiv},
doi = {10.48550/arXiv.2501.17887},
year = {2025}
}
Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.