mcpField
N
nvidia-kaggle-skill

nvidia-kaggle-skill

github.com/nvidiaデータ・データベース34254 回インストール12 週間前に更新
リポジトリ

nvidia-kaggle-skill について

Kaggle コンペの調査、情報収集、カーネルの再現、提出などに使うスキルです。個別のワークフローとスクリプトで大会情報、ディスカッション、データセット、提出を扱い、重要な操作には事前確認を求めます。

主な機能

  1. 01コンペとデータセット情報の取得
  2. 02ディスカッションとカーネル情報の収集
  3. 03コンペ調査とブリーフ作成
  4. 04Kaggle ノートブックのローカル再現
  5. 05データセットのアップロードやカーネル提出

活用シーン

  1. 01ルール、評価方法、日程の要約
  2. 02コミュニティの議論やコンペカーネルの検索
  3. 03コンペノートブックの取得とローカル再現
  4. 04データセットのアップロードや提出の準備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nvidia/nvidia-kaggle --skill nvidia-kaggle-skill

インストール後、Claude Code で/nvidia-kaggle-skillを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

kernel-setup.md
kernels.md
research-brief.md
evals/
evals.json
scripts/
constants.py
db_info.py
discussion_db_info.py
discussion_ingest.py
discussion_query.py
discussion_read.py
fetch_competition_info.py
fetch_dataset_info.py
fetch_kernel_score.py
fetch_leaderboard_writeups.py
fetch_top_kernel_scores.py
fetch_writeup.py
kernel_archive.py
kernel_db_info.py
kernel_ingest.py
kernel_query.py
kernel_read.py
scripts/discussions/
__init__.py
database.py
discussion_client.py
models.py
paths.py
scripts/kernels/
__init__.py
archive.py
database.py
kaggle_client.py

詳細

NVIDIA Kaggle スキル

目的

Kaggle コンペティションでの作業(背景情報の収集、解説記事、ディスカッション、カーネル、ローカルでの再現、提出、データセットのアップロード)には、このスキルを使用してください。

ユーザーが明示的にタスクを Kaggle に関連付けない限り、無関係な ML トレーニング、一般的なノートブックの編集、全般的なデータ分析、Kaggle 以外のデータセット管理には使用しないでください。

入力

入力必須説明
Kaggle のスラッグ、URL、解説記事の URL、カーネルの参照情報、またはローカルフォルダータスクによります依頼された Kaggle 操作の主な対象です。
KAGGLE_API_TOKENAPI/CLI を使用するワークフローでは必須Kaggle API、CLI、SDK 呼び出し用の KGAT トークン文字列です。
ディスク容量カーネルのセットアップでは必須入力データセット、コンペティションデータ、モデル、展開したアーカイブを保存できる容量が必要です。

前提条件

  • 参照先のワークフローに別途記載がない限り、このスキルのディレクトリからコマンドを実行してください。
  • 依頼されたワークフローで必要なランタイムパッケージのみをインストールしてください。
  • API、CLI、カーネル、ディスカッション、データセット、提出のワークフローを実行する前に、KAGGLE_API_TOKEN を設定してください。
  • コンペティションデータ、カーネルの入力データ、展開したアーカイブをダウンロードする前に、ローカルのディスク容量を確認してください。
  • コンペティションへの提出(提出ごとに 1 日あたりの枠を消費する場合があります)、データセットのアップロード、公開データセットの作成など、機密性があり外部から見える操作を行う前に、必ずユーザーの明示的な確認を得てください。KAGGLE_API_TOKEN は秘密情報として扱い、表示、ログへの記録、エコーを決して行わないでください。

ランタイム依存関係

依頼されたタスクに必要なパッケージのみを現在の環境にインストールし、スクリプトは python で実行してください。

Kaggle API、CLI、カーネル、ディスカッション、データセット、コンペティションページ、解説記事:

if command -v uv >/dev/null 2>&1; then
  uv pip install httpx kaggle kagglesdk nbformat pydantic python-dotenv rich
else
  python -m pip install httpx kaggle kagglesdk nbformat pydantic python-dotenv rich
fi

API/CLI タスクでは、Kaggle を呼び出す前に認証情報を確認してください。

: "${KAGGLE_API_TOKEN:?ERROR: KAGGLE_API_TOKEN environment variable is not set}"

ワークフロー

このワークフローカタログから適切な手順を選んでください。簡単なタスクでは、直接スクリプトコマンドを実行してください。別の Markdown ファイルを参照するワークフローでは、そのワークフローが必要な場合に限り、該当ファイルを読んでください。

利用可能な場合は、ランタイムの run_script ヘルパーを優先してください。たとえば、run_script("scripts/fetch_competition_info.py", args=["titanic"]) のように実行します。それ以外の場合は、このスキルのディレクトリから同等の python ./scripts/<script>.py ... コマンドを実行してください。

コンペティションの詳細

Kaggle コンペティションの概要、ルール、評価方法、スケジュール、データセットの説明を取得または要約するようユーザーから依頼された場合に使用します。

概要を取得:

python ./scripts/fetch_competition_info.py <competition-slug-or-url>

データセットの説明を取得:

python ./scripts/fetch_dataset_info.py <competition-slug-or-url>

スクリプトは、コンペティションのスラッグ単体、または https://www.kaggle.com/competitions/<slug> URL を受け付け、スラッグを自動的に抽出します。ユーザーからドキュメントとして保存するよう依頼された場合は、出力を Markdown に変換し、現在の作業ディレクトリに {slug}_competition_overview.md と {slug}_dataset_description.md という名前で保存してください。

リサーチ概要

ユーザーから、自然な表現で「このコンペティションを調査し、リンクといくつかのグラフを含む概要を作成して」といった依頼を受けた場合に使用します。スキルの個別のリサーチワークフローを自分で組み合わせ、分析やプロットのコードを作成して、概要を作成してください。概要の正確性、有益性、読みやすさを保つための原則(実際の情報源をリンクで引用する方法、収集した情報に基づく正確で読みやすいプロットの作成方法)については、./research-brief.md を読んでください。これらの原則はスキルに含まれているため、ユーザーが明示する必要はありません。

解説記事

解説記事を 1 件取得する、上位 k 件を取得する、リーダーボード上の解説記事へのリンクを見つける、解決策の記事を要約するようユーザーから依頼された場合に使用します。./writeups.md を読んでください。

ディスカッション

Kaggle コンペティションのディスカッション、コミュニティの知見、質問、ヒント、特定のディスカッションスレッドについてユーザーから依頼された場合に使用します。

python ./scripts/discussion_ingest.py <competition_id> [--max-pages N] [--sort-by hotness|votes|comments|created|updated] [--page-size N] [--nofetch-comments]
python ./scripts/discussion_query.py <competition_id> [--search TERM] [--min-votes N] [--author NAME] [--limit N] [--as-json]
python ./scripts/discussion_read.py <discussion_id> [--competition-id ID]
python ./scripts/discussion_db_info.py [competition_id]

ストレージ:

パス内容
data/discussions.dbディスカッション、コメント、コンペティションのメタデータを保存する SQLite キャッシュ

データベースが空の場合は、クエリや読み取りの前に必ず取り込みを実行してください。Kaggle のレート制限や API の形式が変わった場合に備え、再試行回数を制限してください。

カーネル

ユーザーがカーネルの取り込み、クエリ、読み取り、公開カーネルの調査、カーネルスコアの取得、またはカーネルの系譜の分析を求めた場合に使用します。./kernels.mdを読みます。

カーネルのセットアップ

ユーザーが入力データを含む Kaggle ノートブックをローカルにダウンロードして再現したい場合に使用します。./kernel-setup.mdを読みます。

提出

ユーザーが Kaggle カーネルをコンペティションにプッシュ、ポーリング、または提出したい場合に使用します。./submission.mdを読みます。

データセットのアップロード

ユーザーがローカルファイルから Kaggle データセットを作成または更新したい場合に使用します。

python ./scripts/upload_dataset.py <path-to-data-folder> [--title "My Dataset"] [--public] [--version-notes "notes"] [--dir-mode zip|tar|skip] [--collaborator user:reader]

デフォルト:

  • ユーザーが明示的に--publicを指定しない限り、データセットは非公開です。
  • --titleが省略された場合は、フォルダー名からタイトルを決定します。
  • 既存のdataset-metadata.jsonに説明、キーワード、サブタイトル、またはライセンスのフィールドがある場合は、それらを保持します。
  • データセットがすでに存在する場合は、黙って上書きせず、--version-notesを指定するよう求めるか、指定された値を使用します。

出力

  • コンペティション詳細スクリプトは、Markdown として保存できるように整形したテキストを出力します。
  • ディスカッションスクリプトは、data/discussions.dbの読み書きを行い、表、JSON、またはレンダリングしたスレッドを出力します。
  • データセットのアップロードでは、データフォルダーにdataset-metadata.jsonを書き込み、Kaggle データセットの URL を出力します。
  • 参照されるワークフローは、Markdown ファイルの説明に従って、Markdown レポート、ノートブックキャッシュ、ローカルカーネルのワークスペース、または提出ログを書き込む場合があります。

トラブルシューティング

Kaggle ワークフローでよくある障害には、この表を使用してください。ワークフローファイルで追加できるのは、ここで扱われていない限定的な項目のみです。

症状原因対応
KAGGLE_API_TOKENがない、または無効有効な Kaggle 認証情報がない状態で、API/CLI を使用するワークフローが開始されました。Kaggle API/CLI の呼び出しを開始する前に停止し、KAGGLE_API_TOKENを設定して、同じコマンドを再実行します。
ディスカッションまたはカーネルのクエリ結果が空対象のコンペティションのローカルキャッシュが作成されていません。該当する取り込みスクリプトを先に実行してから、もう一度クエリします。
非公開、アクセス制限あり、または利用できない Kaggle コンテンツ現在のアカウントにアクセス権がない、ルールへの同意が済んでいない、またはコンテンツが削除されています。URL/参照先を報告し、再試行する前にアクセス状況をユーザーに確認します。
Kaggle API、SDK、レート制限、またはページ構造のエラーKaggle から部分的なデータが返された、API/レイアウトが変更された、またはリクエストが制限されました。失敗したコマンドと出力をそのまま保持し、再試行回数を制限して、確認できない情報にはその旨を明記します。
ディスク容量不足またはアーカイブの展開エラーコンペティションデータ、カーネル入力、モデル、または展開したアーカイブがローカル容量を超えたか、展開に失敗しました。停止し、ワークスペースの部分的な状態を報告してから、ファイルの削除や再試行の前にユーザーに確認します。
提出の再試行または提出状況が不確か提出が成功すると、コンペティションの提出枠が消費される場合があります。既存のログを読み、提出ワークフローを再実行する前にユーザーの明示的な意思を確認します。

ランタイムの互換性

このスキルは、Agent Skills の規約に従うすべてのエージェントランタイムで動作します。Codex はリポジトリのチェックアウトまたはプラグインのインストールを使用し、Claude Code はマーケットプレイスからプラグインをインストールして使用し、Claude Agent SDK は同じプロジェクトスコープのプラグイン設定を読み込めます。スクリプトは、このスキルの scripts/ディレクトリ内で完結しています。

コメント