{"record":{"id":"3a0fbe58b5a20dda","repo":"PaddlePaddle/PaddleOCR","slug":"invalid-pipeline-version-pipeline-version-supp","errorCode":null,"errorMessage":"Invalid pipeline version: {pipeline_version}. Supported versions are {_AVAILABLE_PIPELINE_VERSIONS}.","messagePattern":"Invalid pipeline version: (.+?)\\. Supported versions are (.+?)\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"paddleocr/_pipelines/paddleocr_vl.py","lineNumber":71,"sourceCode":"        vl_rec_api_key=None,\n        doc_orientation_classify_model_name=None,\n        doc_orientation_classify_model_dir=None,\n        doc_unwarping_model_name=None,\n        doc_unwarping_model_dir=None,\n        use_doc_orientation_classify=None,\n        use_doc_unwarping=None,\n        use_layout_detection=None,\n        use_chart_recognition=None,\n        use_seal_recognition=None,\n        use_ocr_for_image_block=None,\n        format_block_content=None,\n        merge_layout_blocks=None,\n        markdown_ignore_labels=None,\n        use_queues=None,\n        **kwargs,\n    ):\n        if pipeline_version not in _AVAILABLE_PIPELINE_VERSIONS:\n            raise ValueError(\n                f\"Invalid pipeline version: {pipeline_version}. Supported versions are {_AVAILABLE_PIPELINE_VERSIONS}.\"\n            )\n\n        if vl_rec_backend is not None and vl_rec_backend not in _SUPPORTED_VL_BACKENDS:\n            raise ValueError(\n                f\"Invalid backend for the VL recognition module: {vl_rec_backend}. Supported values are {_SUPPORTED_VL_BACKENDS}.\"\n            )\n\n        params = locals().copy()\n        params.pop(\"self\")\n        params.pop(\"pipeline_version\")\n        params.pop(\"kwargs\")\n        self._params = params\n        self.pipeline_version = pipeline_version\n\n        super().__init__(**kwargs)\n\n    @property","sourceCodeStart":53,"sourceCodeEnd":89,"githubUrl":"https://github.com/PaddlePaddle/PaddleOCR/blob/2661c7c0ef5c613e8f93c6e93b2e052399f0f854/paddleocr/_pipelines/paddleocr_vl.py#L53-L89","documentation":"The PaddleOCR-VL pipeline constructor validates pipeline_version against _AVAILABLE_PIPELINE_VERSIONS (['v1','v1.5','v1.6']) and raises ValueError for anything else, including omitted values only if the default is not in the list — in practice this fires when an explicit wrong version string is passed. It fails fast before any model is loaded.","triggerScenarios":"PaddleOCRVL(pipeline_version='v2'), PaddleOCRVL(pipeline_version='1.6') (missing 'v'), or a version not yet shipped in the installed paddleocr release.","commonSituations":"Using a version string from release notes newer than the installed package; copy-pasting 'v1.5'-style strings into deployments with older paddleocr; CI building with a pinned older version while config targets a newer one.","solutions":["Pass a listed version, e.g. pipeline_version='v1.6', or omit it to use the default.","Upgrade paddleocr to the release that ships the version you need.","Print/inspect paddleocr._pipelines.paddleocr_vl._AVAILABLE_PIPELINE_VERSIONS for your install to see what is valid."],"exampleFix":"# before\npipe = PaddleOCRVL(pipeline_version='1.6')  # ValueError\n# after\npipe = PaddleOCRVL(pipeline_version='v1.6')","handlingStrategy":"validation","validationCode":"from paddleocr._pipelines.paddleocr_vl import _AVAILABLE_PIPELINE_VERSIONS\n\ndef valid_pipeline_version(v: str) -> bool:\n    return v is None or v in _AVAILABLE_PIPELINE_VERSIONS","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Read valid versions from _AVAILABLE_PIPELINE_VERSIONS for the installed release","Use the 'v' prefix ('v1.6', not '1.6')","Re-validate config after upgrading paddleocr, since the version list grows"],"tags":["vl-pipeline","version-validation","config","valueerror"],"backgroundTag":null,"analyzedSha":"2661c7c0ef5c613e8f93c6e93b2e052399f0f854","analyzedAt":"2026-08-14T20:17:30.180Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}