Skip to content

Engine Reference

Engines registered per capability in the engine registry (natural_pdf.engine_registry.list_engines). “Requires” shows the install hint carried by the registration metadata; “included” means the registration declares no extra install requirement (availability may still depend on optional packages — run npdf doctor to check your environment).

This page lists the built-in engines only. Third-party plugins registered through the natural_pdf.engines entry point extend these lists at runtime in your environment; they are deliberately not part of the generated reference.

EngineRequiresNotes
defaultincludedoptions: DefaultCheckboxOptions
onnxpip install onnxruntime huggingface_huboptions: OnnxCheckboxOptions
vectorincludedoptions: VectorCheckboxOptions
vlmpip install openaioptions: VLMCheckboxOptions
EngineRequiresNotes
defaultincluded

Capability: deskew (also deskew.apply, deskew.detect)

Section titled “Capability: deskew (also deskew.apply, deskew.detect)”
EngineRequiresNotes
houghincluded
projectionincluded
standardincluded
EngineRequiresNotes
builtinincluded
builtin.contentincluded
builtin.headersincluded
builtin.linesincluded
builtin.stripesincluded
builtin.whitespaceincluded
EngineRequiresNotes
doclayoutpip install transformers torchoptions: DocLayoutOptions
geminiincludeddeprecated alias for vlm; options: VLMLayoutOptions
paddlepip install “natural-pdf[paddle]” or pip install paddleocroptions: PaddleLayoutOptions
suryapip install “surya-ocr<0.15”options: SuryaLayoutOptions
tatrincludedoptions: TATRLayoutOptions
vlmincludedoptions: VLMLayoutOptions
yolopip install “natural-pdf[all]” or pip install doclayout_yolooptions: YOLOLayoutOptions

Capability: ocr (also ocr.apply, ocr.extract)

Section titled “Capability: ocr (also ocr.apply, ocr.extract)”
EngineRequiresNotes
chandra2pip install chandra-ocr[hf]
doctrpip install python-doctr
easyocrpip install easyocr
paddlepip install “natural-pdf[paddle]” or pip install paddleocr
paddlevlpip install “natural-pdf[paddle]” or pip install paddleocr
rapidocrpip install “natural-pdf[all]” or pip install rapidocr
suryapip install surya-ocr
EngineRequiresNotes
nativeincluded
EngineRequiresNotes
latticeincluded
pdfplumberincluded
pdfplumber_autoincluded
streamincluded
tatrincluded
textincluded
EngineRequiresNotes
tatrincluded

The unified OCR registry behind page.apply_ocr(engine=...). Named VLM-family entries resolve to local vision-language models instead of classic OCR engines; the generic vlm entry can use either a local model or a configured remote client.

EngineTypeRequiresNotes
chandravlm_shorthandincludedVLM family: chandra
chandra2classicpip install chandra-ocr[hf]options: ChandraOCROptions
doctrclassicpip install python-doctroptions: DoctrOCROptions
dotsvlm_shorthandincludedVLM family: dots_mocr
easyocrclassicpip install easyocroptions: EasyOCROptions
glm_ocrvlm_shorthandincludedVLM family: glm_ocr
paddleclassicpip install “natural-pdf[paddle]” or pip install paddleocroptions: PaddleOCROptions
paddlevlauto_platformpip install “natural-pdf[paddle]” or pip install paddleocrVLM family: paddlevl; options: PaddleOCRVLOptions
rapidocrclassicpip install “natural-pdf[all]” or pip install rapidocroptions: RapidOCROptions
suryaclassicpip install surya-ocroptions: SuryaOCROptions
vlmvlm_genericincluded