{"record":{"id":"d1f108ce48781087","repo":"huggingface/transformers","slug":"layerrepository-requires-kernels-to-be-installed","errorCode":null,"errorMessage":"LayerRepository requires `kernels` to be installed. Run `pip install kernels`.","messagePattern":"LayerRepository requires `kernels` to be installed\\. Run `pip install kernels`\\.","errorType":"exception","errorClass":"RuntimeError","httpStatus":null,"severity":"error","filePath":"src/transformers/integrations/hub_kernels.py","lineNumber":547,"sourceCode":"            return cls\n\n        return decorator\n\n    def use_kernelized_func(*args, **kwargs):\n        def decorator(cls):\n            return cls\n\n        return decorator\n\n    def use_kernel_func_from_hub(*args, **kwargs):\n        def decorator(cls):\n            return cls\n\n        return decorator\n\n    class LayerRepository:\n        def __init__(self, *args, **kwargs):\n            raise RuntimeError(\"LayerRepository requires `kernels` to be installed. Run `pip install kernels`.\")\n\n        def load(self):\n            raise NotImplementedError(\"LayerRepository requires `kernels` to be installed. Run `pip install kernels.\")\n\n    class LocalLayerRepository:\n        def __init__(self, *args, **kwargs):\n            raise RuntimeError(\"LocalLayerRepository requires `kernels` to be installed. Run `pip install kernels`.\")\n\n        def load(self):\n            raise NotImplementedError(\n                \"LocalLayerRepository requires `kernels` to be installed. Run `pip install kernels.\"\n            )\n\n    class FuncRepository:\n        def __init__(self, *args, **kwargs):\n            raise RuntimeError(\"FuncRepository requires `kernels` to be installed. Run `pip install kernels`.\")\n\n    def replace_kernel_forward_from_hub(*args, **kwargs):","sourceCodeStart":529,"sourceCodeEnd":565,"githubUrl":"https://github.com/huggingface/transformers/blob/a597f974857b3d92939971296bc0deb93d33d780/src/transformers/integrations/hub_kernels.py#L529-L565","documentation":"When the optional `kernels` package (hub kernels loader) is not installed, `hub_kernels.py` defines a fallback `LayerRepository` stub whose `__init__` immediately raises RuntimeError. This makes missing-dependency failures loud at the point of use instead of silently returning a non-functional object, and tells you the exact pip command to fix it.","triggerScenarios":"Importing or instantiating `LayerRepository(...)` from `transformers.integrations.hub_kernels` (or via `use_kernel_forward_from_hub` code paths that construct it) in an environment where `import kernels` fails.","commonSituations":"Running a kernel-enabled example (e.g. FLA/mamba hub kernels) in a slim install of transformers without the `[kernel]` extra; CI images that strip optional dependencies; code copied from a setup that had `kernels` installed.","solutions":["Install the dependency: `pip install kernels` (pin a compatible version, e.g. `pip install kernels==<KERNELS_MIN_VERSION>`).","Guard kernel-loading code behind `transformers.utils.import_utils.is_kernels_available()`.","If kernels are optional for your flow, skip the `use_kernel_forward_from_hub` decoration path when unavailable."],"exampleFix":"# before\nfrom transformers.integrations.hub_kernels import LayerRepository\nrepo = LayerRepository(\"kernels-community/foo\")  # RuntimeError\n\n# after\nfrom transformers.utils.import_utils import is_kernels_available\nif is_kernels_available():\n    from transformers.integrations.hub_kernels import LayerRepository\n    repo = LayerRepository(\"kernels-community/foo\")\nelse:\n    repo = None  # skip kernel loading","handlingStrategy":"type-guard","validationCode":"from transformers.utils.import_utils import is_kernels_available\nassert is_kernels_available(), \"pip install kernels\",\nrepo = LayerRepository(\"kernels-community/foo\")","typeGuard":"from transformers.utils.import_utils import is_kernels_available\n\ndef kernels_available() -> bool:\n    return is_kernels_available()","tryCatchPattern":"try:\n    repo = LayerRepository(repo_id)\nexcept RuntimeError as e:\n    if \"kernels\" in str(e):\n        repo = None  # degrade to non-kernel path\n    else:\n        raise","preventionTips":["Install the kernels extra in any environment that loads hub kernels.","Gate all hub_kernels imports behind is_kernels_available().","Pin kernels to the version range supported by your transformers version."],"tags":["dependencies","kernels","optional-install","runtime-error"],"backgroundTag":null,"analyzedSha":"a597f974857b3d92939971296bc0deb93d33d780","analyzedAt":"2026-08-14T18:24:08.354Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}