huggingface/kernels

Build compute kernels and load them from the Hub.

解決する課題

Pythonライブラリやアプリケーションが、従来のPythonパッケージインストールや PYTHONPATH の制限を回避し、Hugging Face Hub から直接最適化された計算カーネルを動的にロードする方法を提供します。

仕組み

このプロジェクトは、ユーザーがHubから特定のバージョンのカーネルをダウンロードして実行できるようにするPythonパッケージ (kernels) で構成されています。開発者向けには、これらのポータブルで互換性のあるカーネルを作成するための kernel-builder ツールが含まれています。これらのカーネルは、異なるPythonバージョン、PyTorchビルド構成、およびさまざまなハードウェアバックエンド間でポータブルになるように設計されています。

対象ユーザー

  • AI開発者: 複雑なインストールプロセスを管理することなく、高性能で最適化された計算カーネルを使用したい方。
  • カーネル作成者: 複数のハードウェアアーキテクチャやソフトウェア環境で動作するポータブルなカーネルを構築・配布するためのツールを必要としている方。

ハイライト

  • 動的ロード: PYTHONPATH に含める必要なく、Hubからカーネルをロード可能。
  • バージョン管理: 単一のPythonプロセス内で同じカーネルの複数バージョンをロードすることをサポート。
  • 幅広いハードウェアサポート: CUDA、CPU、ROCm、XPU、Metal、TPUなど、さまざまなサポートレベルのハードウェアをサポート。
  • ポータブルな互換性: さまざまなPyTorchビルド構成およびC++ ABI間で動作するように設計。

関連

  • Dispatch
  • Dispatch
  • Dispatch
  • プロジェクト
  • Dispatch