MCPcopy
hub / github.com/huggingface/transformers / get_kernel

Function get_kernel

src/transformers/integrations/hub_kernels.py:445–471  ·  view source on GitHub ↗
(
    kernel_name: str,
    revision: str | None = None,
    version: int | str | None = None,
    allow_all_kernels: bool = False,
)

Source from the content-addressed store, hash-verified

443
444
445def get_kernel(
446 kernel_name: str,
447 revision: str | None = None,
448 version: int | str | None = None,
449 allow_all_kernels: bool = False,
450) -> ModuleType:
451 from .. import __version__
452
453 if not _kernels_available:
454 raise ImportError(
455 "`kernels` is either not installed or uses an incompatible version. Please install the latest version "
456 "with `pip install -U kernels`."
457 )
458
459 repo_parent = kernel_name.split("/")[0]
460 # all `kernels-community` repos are trusted by default!
461 if repo_parent != "kernels-community" and not allow_all_kernels:
462 raise ValueError(
463 "You need to specify `allow_all_kernels=True` to use kernels outside of the `kernels-community` repository"
464 )
465
466 user_agent = {"framework": "transformers", "version": __version__, "repo_id": kernel_name}
467 kernels_version = importlib.metadata.version("kernels")
468 if pkg_version.parse(kernels_version) >= pkg_version.parse("0.10.4"):
469 return get_kernel_hub(kernel_name, revision=revision, version=version, user_agent=user_agent)
470 else:
471 return get_kernel_hub(kernel_name, revision=revision, version=version)
472
473
474def use_kernelized_func(module_names: list[Callable] | Callable):

Callers 15

require_flash_attnFunction · 0.90
require_all_flash_attnFunction · 0.90
lazy_load_kernelFunction · 0.85
replace_with_eetq_linearFunction · 0.85
get_quantize_fp8_per_rowFunction · 0.85
_get_metal_kernelFunction · 0.85
load_cuda_kernelsFunction · 0.85

Calls 2

splitMethod · 0.80
parseMethod · 0.45