跳到主要内容
AI News HubLIVE
站内改写2 分钟阅读

🤗 Kernels:重大更新

文章摘要

Hugging Face 的 Kernels 项目旨在标准化自定义内核的打包、分发和使用方式。本文总结了近期重大更新:引入新的“内核”仓库类型以提升可发现性;通过受信任的发布者和代码签名增强安全性;重构 CLI 以明确职责划分;扩展对 Torch Stable ABI 和 Apache TVM FFI 等框架的支持;为 AI 代理开发内核奠定基础;以及改进环境配置和兼容性检查工具。

🤗 Kernels:重大更新
报告错误

纠错通道尚未开通,可先复制下方文章信息留存。

查看更正说明
直接读正文

Hugging Face 的 Kernels 项目自发布以来,一直致力于为自定义内核的打包、分发和使用提供标准化方案。在最近几个月里,团队对项目进行了近乎完全的重构,并推出了一系列重大更新。

新的仓库类型 最显著的变化是 Hub 上新增了“kernel”仓库类型。这使得用户能够更直观地了解某个内核支持的加速器、操作系统和后端版本。所有内核现在都集中展示在 https://huggingface.co/kernels,大大提高了可发现性。

安全性强化 由于内核以与 Python 进程相同的权限运行原生代码,恶意内核可能造成严重破坏。为此,项目早期就通过 Nix 实现了可重复构建,确保用户能自行编译验证。最近又增加了两层防御:受信任的发布者和代码签名。默认情况下,kernels 包只加载来自受信任组织的内核。要加载其他来源,需显式设置 trust_remote_code=True。此外,代码签名使用 Sigstore 的 cosign 和临时私钥,即使 Hub 凭证泄露,攻击者也无法为恶意内核签名。目前签名验证尚在测试阶段,但内核构建工具已支持。

CLI 重构 之前 kernels 和 kernel-builder 的功能有些混杂。现在明确了分工:kernels 专注于加载和准备内核;kernel-builder 专注于构建。两者 CLI 更加精简和专用。

框架与后端扩展 新支持 Torch Stable ABI,使内核可兼容 Torch >=2.9 版本约两年。同时,Apache TVM FFI 成为继 Torch 之后第二个支持的框架,它提供标准化的 ABI,使内核能在 PyTorch、Jax、CuPy 等框架间互操作。

代理式内核开发基础 kernel-builder 和 kernels 为 AI 代理开发内核提供了完整工作流:代理可以自动搭建项目结构、进行可重复构建、基准测试并迭代优化。与 HF Jobs 的紧密集成让跨硬件评估变得简单。

其他改进 环境配置方面,提供了一键安装脚本和 Terraform 设置指南。内核构建后会自动生成系统卡片,展示接口和使用方法。新增 has_kernel() 和 get_kernel_variants() 方法,方便用户检查内核兼容性并获取拒绝原因。最后,改进了 manylinux_2_28 支持,动态链接 libstdc++ 以避免全局初始化导致的问题。

这些更新使 Kernels 项目更加成熟,既服务于内核开发者,也方便了终端用户。社区反馈将持续推动项目改进。

展开要点与分析

文章情报

工程师进阶

要点

  • 引入新的“内核”仓库类型,方便用户按加速器、操作系统和后端版本筛选内核。
  • 安全性提升:默认仅加载受信任发布者的内核,并增加代码签名功能,使用 Sigstore 的临时密钥。
  • CLI 分离为 kernels(加载)和 kernel-builder(构建),职责更清晰。
  • 扩展框架支持:Torch Stable ABI 和 Apache TVM FFI 使内核可跨框架使用。

要点与分析由自动化流程生成,可能有误,请结合原始来源核实。