Workflow leaderboard / Research / PDF & document processing
Extract PDF tables into analysis-ready data
PDF 表格转分析数据
Extract tables from research PDFs into CSV and JSON with page provenance and validation checks before analysis.
Variants
Free & local / 免费本地
~30 min setup
8 GB RAM works for ordinary papers; 16 GB is safer for long scanned reports. GPU is optional.
| Component | Role | Price | Link |
|---|---|---|---|
| Docling 2.117.0 | layout-aware PDF and table extraction | Free / 免费open-source local processingchecked 2026-08-02 | https://github.com/docling-project/docling/releases/tag/v2.117.0 |
| DuckDB 1.5.5 | schema inspection, validation and export | Free / 免费MIT licensed in-process databasechecked 2026-08-02 | https://github.com/duckdb/duckdb/releases/tag/v1.5.5 |
Extract and profile tables
uv venv --python 3.12 .venv
. .venv/bin/activate
uv pip install 'docling==2.117.0' 'duckdb==1.5.5'
mkdir -p extracted
docling input.pdf --to json --to md --output extracted
# After exporting each reviewed table as extracted/table_001.csv:
duckdb -c "CREATE OR REPLACE TABLE t AS SELECT * FROM read_csv_auto('extracted/table_001.csv', header=true); COPY (SUMMARIZE t) TO 'extracted/table_001_profile.csv' (HEADER, DELIMITER ','); COPY t TO 'extracted/table_001.parquet' (FORMAT parquet);"
Table extraction audit
Compare the extracted table with the named page in the source PDF. Check title, header hierarchy, row labels, column order, merged cells, footnotes, units, decimal signs, missing-value symbols and superscripts. Return a correction list with page number, row key, column key, extracted value, visible source value and confidence. Do not fill values that are unreadable.
Known pitfalls
- Visually merged cells often need manual normalization.
- A plausible CSV can still have shifted columns; validate totals and row counts.
- Keep page and table identifiers beside every export.
- Do not coerce symbols such as <0.01 or NR into numeric nulls without a documented rule.
Cloud premium / 云端高配
~45 min setup
No local accelerator required. Suitable for batch workloads with approved cloud processing.
| Component | Role | Price | Link |
|---|---|---|---|
| Google Cloud Layout Parser current managed processor | managed structure and table-oriented layout extraction | Usage-based / 按用量计费$10 per 1,000 pageschecked 2026-08-02 | https://cloud.google.com/products/document-ai/pricing |
| DuckDB 1.5.5 | local validation of downloaded structured output | Free / 免费local open-source validation layerchecked 2026-08-02 | https://github.com/duckdb/duckdb/releases/tag/v1.5.5 |
Table artifact acceptance contract
artifact_version: table-extract.v1
required_fields:
- source_pdf_sha256
- source_page
- table_index
- table_title
- columns
- rows
- footnotes
checks:
page_exists: true
headers_nonempty: true
unique_row_keys: preferred
preserve_inequality_signs: true
preserve_missing_value_tokens: true
require_human_review_for_merged_cells: true
Known pitfalls
- Layout Parser and OCR can incur separate charges.
- Managed extraction still needs visual review for scientific tables.
- The $10 rate is per 1,000 pages, not per table.
- Store source hashes so corrected source PDFs do not silently reuse stale tables.