{"record":{"id":"8f5434d6d53dd271","repo":"docling-project/docling","slug":"no-extraction-pipeline-could-be-initialized-for-i","errorCode":null,"errorMessage":"No extraction pipeline could be initialized for {in_doc.file}.","messagePattern":"No extraction pipeline could be initialized for (.+?)\\.","errorType":"exception","errorClass":"ConversionError","httpStatus":null,"severity":"error","filePath":"docling/document_extractor.py","lineNumber":280,"sourceCode":"            )\n\n    def _execute_extraction_pipeline(\n        self,\n        in_doc: InputDocument,\n        raises_on_error: bool,\n        template: ExtractionTemplateType,\n    ) -> ExtractionResult:\n        if not in_doc.valid:\n            return ExtractionResult(\n                input=in_doc,\n                status=ConversionStatus.FAILURE,\n                errors=build_invalid_input_errors(in_doc),\n            )\n\n        pipeline = self._get_pipeline(in_doc.format)\n        if pipeline is None:\n            if raises_on_error:\n                raise ConversionError(\n                    f\"No extraction pipeline could be initialized for {in_doc.file}.\"\n                )\n            else:\n                return ExtractionResult(input=in_doc, status=ConversionStatus.FAILURE)\n\n        return pipeline.execute(\n            in_doc, raises_on_error=raises_on_error, template=template\n        )\n\n    def _get_pipeline(\n        self, doc_format: InputFormat\n    ) -> Optional[BaseExtractionPipeline]:\n        \"\"\"Retrieve or initialize a pipeline, reusing instances based on class and options.\"\"\"\n        fopt = self.extraction_format_to_options.get(doc_format)\n        if fopt is None or fopt.pipeline_options is None:\n            return None\n\n        pipeline_class = fopt.pipeline_cls","sourceCodeStart":262,"sourceCodeEnd":298,"githubUrl":"https://github.com/docling-project/docling/blob/61d76f1ff3f8428065465889f7b4577da7df704c/docling/document_extractor.py#L262-L298","documentation":"ConversionError raised by DocumentExtractor._execute_extraction when the input document is valid but _get_pipeline(in_doc.format) returns None, i.e. no extraction pipeline is configured for that format. With raises_on_error=False it instead returns a FAILURE ExtractionResult.","triggerScenarios":"Running extract() on a valid document whose format has no matching entry in the extractor's format_to_options map (no format_options supplied for that InputFormat).","commonSituations":"Using DocumentExtractor with default options on formats outside the defaults; constructing the extractor with format_options keyed by the wrong InputFormat; typo'd pipeline class registration.","solutions":["Supply format_options for the format: DocumentExtractor(format_options={InputFormat.PDF: ExtractionFormatOption(pipeline_cls=ExtractionVlmPipeline)}).","Verify the key you used in format_options is the same InputFormat the file resolves to (extension-based).","Set raises_on_error=False to get a FAILURE result instead of an exception and inspect it."],"exampleFix":"# before\nextractor = DocumentExtractor()  # relies on defaults for a non-default format\n\n# after\nfrom docling.datamodel.settings import ExtractionFormatOption\nextractor = DocumentExtractor(\n    format_options={InputFormat.PDF: ExtractionFormatOption()}  # explicit pipeline\n)","handlingStrategy":"validation","validationCode":"fmt = InputFormat.PDF  # resolved from extension\nif fmt not in extractor.format_to_options:\n    raise SystemExit(f'add format_options for {fmt} to DocumentExtractor')","typeGuard":null,"tryCatchPattern":"from docling.datamodel.base_models import ConversionError\ntry:\n    res = extractor.extract(path, raises_on_error=True)\nexcept ConversionError as e:\n    if 'No extraction pipeline' in str(e):\n        raise SystemExit('configure ExtractionFormatOption(pipeline_cls=...) for this format')\n    raise","preventionTips":["Configure format_options for every format you will extract before starting a batch.","Unit-test extractor setup against the exact InputFormat your inputs resolve to."],"tags":["extraction","pipeline","configuration"],"backgroundTag":null,"analyzedSha":"61d76f1ff3f8428065465889f7b4577da7df704c","analyzedAt":"2026-08-14T23:53:18.727Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}