{"record":{"id":"8801b2b3118d5abb","repo":"vllm-project/vllm","slug":"unsupported-ec-role-self-ec-role-supported-rol","errorCode":null,"errorMessage":"Unsupported ec_role: {self.ec_role}. Supported roles are {get_args(ECRole)}","messagePattern":"Unsupported ec_role: (.+?)\\. Supported roles are (.+?)","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"vllm/config/ec_transfer.py","lineNumber":83,"sourceCode":"\n        Provide a hash that uniquely identifies all the configs\n        that affect the structure of the computation\n        graph from input ids/embeddings to the final hidden states,\n        excluding anything before input ids/embeddings and after\n        the final hidden states.\n        \"\"\"\n        # no factors to consider.\n        # this config will not affect the computation graph.\n        factors: list[Any] = []\n        hash_str = hashlib.md5(str(factors).encode(), usedforsecurity=False).hexdigest()\n        return hash_str\n\n    def __post_init__(self) -> None:\n        if self.engine_id is None:\n            self.engine_id = str(uuid.uuid4())\n\n        if self.ec_role is not None and self.ec_role not in get_args(ECRole):\n            raise ValueError(\n                f\"Unsupported ec_role: {self.ec_role}. \"\n                f\"Supported roles are {get_args(ECRole)}\"\n            )\n\n        if self.ec_connector is not None and self.ec_role is None:\n            raise ValueError(\n                \"Please specify ec_role when ec_connector \"\n                f\"is set, supported roles are {get_args(ECRole)}\"\n            )\n\n    @property\n    def is_ec_transfer_instance(self) -> bool:\n        return self.ec_connector is not None and self.ec_role in get_args(ECRole)\n\n    @property\n    def is_ec_producer(self) -> bool:\n        return self.ec_connector is not None and self.ec_role in get_args(ECProducer)\n","sourceCodeStart":65,"sourceCodeEnd":101,"githubUrl":"https://github.com/vllm-project/vllm/blob/c794754062d49a8fdb63ab3c5215b488b865030c/vllm/config/ec_transfer.py#L65-L101","documentation":"Error \"Unsupported ec_role: {self.ec_role}. Supported roles are {get_args(ECRole)}\" thrown in vllm-project/vllm.","triggerScenarios":"Raised at vllm/config/ec_transfer.py:83 when validation fails: Unsupported ec_role. Typically triggered by an incompatible or incomplete vLLM configuration, an unsupported platform/backend combination, or a runtime resource/dependency that is missing.","commonSituations":"Commonly encountered at vllm/config/ec_transfer.py:83 during vLLM startup/config validation or runtime setup when: (1) conflicting CLI flags or config fields are combined, (2) the current platform (CUDA/ROCm/CPU/XPU) or installed optional packages do not support the requested feature, or (3) a required value is absent or out of range. Resolve by correcting the configuration as described in the message, or by selecting a supported alternative.","solutions":["Set ec_role to one of the supported roles listed in the error (e.g. 'ec_producer' or 'ec_consumer')."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"c794754062d49a8fdb63ab3c5215b488b865030c","analyzedAt":"2026-08-14T21:17:39.825Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}