PaddleOCR 3.5: Running OCR and Document Parsing Tasks with a Transformers Backend
Hugging Face
PaddleOCR 3.5 now lets its OCR and document-parsing models run directly through Hugging Face Transformers. Basically, it slots into your existing PyTorch stack instead of forcing a separate runtime.
Based on reporting by Hugging Face — read the original for the full story.
Summary, retelling and take written by AI under human oversight; images are AI-generated illustrations. How we work · Report an error
PaddleOCR has quietly been one of the more capable open OCR toolkits around, powering everything from receipt scanning to messy PDF ingestion. With version 3.5, the team added something that matters more to developers than any accuracy bump: you can now pick Transformers as the inference backend, just by setting engine="transformers" when you spin up a pipeline.
This isn't a new model. PP-OCRv5 and PaddleOCR-VL 1.5 still do the actual reading of text, tables, and layouts. What changed is the plumbing underneath them. Previously, running these models meant working inside Paddle's own static or dynamic graph runtimes. Now Transformers is a peer option, and you configure it through an engine_config dictionary where you set things like dtype, device placement, and attention implementation (sdpa, for instance). PaddleOCR still handles the actual pipeline logic behind the scenes, so nobody has to hand-wire the internal steps.
The real audience here is anyone building RAG systems, document agents, or search tools that already live in PyTorch and Transformers land. Getting clean structured text out of scanned PDFs, screenshots, and chart-heavy pages is usually the unglamorous but critical first step before any LLM touches the data — get it wrong and the whole downstream pipeline inherits the mess. By making PaddleOCR speak Transformers natively, PaddlePaddle is betting that lowering integration friction will matter more to most teams than squeezing out extra throughput.
And that tradeoff is explicit in their own guidance: if raw OCR speed is what you care about, stick with the default paddle_static backend. The Transformers option is for teams that want Hub-based model discovery, easier deployment inside PyTorch services, or just a more familiar development loop. You install paddleocr 3.5.0, paddlex 3.5.2, transformers 5.4.0 or newer, plus a matching PyTorch build, and you're off — either through the CLI with a simple --engine transformers flag or through the Python API.
There's also a live demo on Hugging Face Spaces running in float32 for broad compatibility, though PaddlePaddle notes that bfloat16 and tuned attention settings will likely perform better on real hardware. Nothing here replaces anything; it just adds a lane.
My take — AI-written commentary, not fact-checked reporting
This is the unglamorous kind of release that actually moves the ecosystem forward — not a flashy new model, but one fewer reason for teams to maintain two separate ML stacks just to get OCR working. I'd rather see more open toolkits do exactly this than chase benchmark headlines, because the boring integration work is usually what decides whether a good open model actually gets used in production.
Read more about this at: Hugging Face