tilegym-monkey-patch-kernels-to-transformers について
Hugging Face Transformersのソースを変更せず、TileGymのcuTileカーネルをモデルに組み込むAIエージェント向けスキルです。未対応の処理向けのカーネル作成と、正確性および性能の検証も支援します。
主な機能
- 01モンキーパッチでモデル要素を置換
- 02既存のTileGymカーネルを統合
- 03未対応コード向けcuTileカーネルを作成
- 04正確性とエンドツーエンドのスループットを確認
- 05DefinitionとSolutionのメタデータでカーネルを管理
活用シーン
- 01モデル要素をTileGymカーネルに置換
- 02対象モデルのカーネル対応範囲を拡大
- 03エンドツーエンドの正確性と性能を評価
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ nvidia/ skills --skill tilegym-monkey-patch-kernels-to-transformersインストール後、Claude Code で/tilegym-monkey-patch-kernels-to-transformersを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
BENCHMARK.mdskill-card.mdskill.oms.sigevals/evals.jsonreferences/auto-kernelize.mdenvironment-setup.mdkernel-integration.mdkernel-inventory-schema.md詳細
🤗 Transformers に cuTile カーネルを統合・作成する
TileGym プロジェクトの主な目的は、LLM の学習と推論に高性能なカーネルを提供することです。TileGym プロジェクトで利用できる適切なカーネルを Hugging Face の transformers ライブラリが提供する LLM モデルに統合し、エンドツーエンドでの機能的な正しさと性能向上を検証します。transformers のソースコードを変更する代わりに、非侵襲的なモンキーパッチ方式を採用します。統合対象の Transformer モデルを実装する transformers ライブラリ内の特定のモジュール、クラス、メソッドを置き換え、モデルのインスタンス化時にそのモデルの中核コンポーネントが TileGym の実装に置き換わるようにします。実行時には、モデルは内部で TileGym カーネルを呼び出します。さらに、自動リサーチスタイルのエージェントハーネスのループに従い、対象モデルに新しい cuTile カーネルを作成して統合し、カーネルのカバレッジとエンドツーエンドのスループットを向上させます。
手順
人間の読者向けです。お好みの AI エージェントに、スキル名と対象モデル ID を指定するだけです。例:
Hi, please /monkey-patch-kernels-to-transformers Qwen/Qwen3.5-0.8B.
エージェントからいくつか質問される場合があります。必要な点を明確にし、実行を承認してください。
ワークフロー
- 実験環境を準備します。environment-setup.md に従ってください
- 既存の TileGym カーネルを対象モデルに統合します。kernel-integration.md に従ってください
- 対応できていない PyTorch コード向けの新しい cuTile カーネルを自律的に作成します。auto-kernelize.md に従ってください
- 制約を考慮しながら、新しい cuTile カーネルを自由に追加してください
- 自動カーネル化ループの停止条件を満たすまで続けてください
- 要約して報告します
規律
このワークフローを実行する AI エージェント向けです。
カーネルのインベントリ
再利用可能な Transformer ローカルカーネルは、FlashInfer-Bench 形式の Definition および Solution メタデータで表現する必要があります。計算要件の調査、既存カーネルのインベントリ作成、候補の提案、新たに生成するカーネルの作成を行う際は、kernel-inventory-schema.md に従ってください。