Company Documents v2
A reproducible document generator and public dataset of 353,580 English and French business PDFs across 13 document types.
Timeline
Published in October 2026; successor to CompanyDocuments.
Role & Scope
Built source adapters, document templates, annotation and validation steps, scan augmentation, and dataset publishing.
Team Setup
Created by Ayoub Cherguelaine, with publicly available generator code.
Context
Problem: Document-AI training needs varied business layouts with aligned text, field values, and coordinates for evaluating extraction.
Solution: Built a seeded pipeline that renders documents for 60 synthetic companies, checks text and financial totals, and exports gold fields, word boxes, and degraded scans.
Impact: Published 404,514 PDF pages and 120,523 degraded page images, with company-based splits for classification, OCR, and field extraction.
Implementation Details
Architecture
Northwind, AdventureWorks, Chinook, and Sakila feed normalized records into Jinja2 templates and WeasyPrint PDFs. The pipeline extracts text and coordinates, augments scan images, and exports Parquet shards.
Data & Evaluation
Checks compare rendered PDF text with gold values and verify arithmetic using Decimal. Splits hold out issuing companies, while source records and layout families may overlap. Document classes are imbalanced.
Production & Ops
Seeded generation resumes from checkpoints. Publishing one document type at a time limits local disk use; Hugging Face provides per-type subsets and streaming Parquet access. Code and generated documents use Apache-2.0.
Lessons Learned
Useful synthetic data needs aligned annotations, validation, and clear split boundaries. Simulated layouts and scan artifacts still require evaluation against real documents.
Links
Last verified: October 18, 2026
Public Evidence
Last verified: October 18, 2026