nvidia-kaggle-skill について
Kaggle コンペの調査、情報収集、カーネルの再現、提出などに使うスキルです。個別のワークフローとスクリプトで大会情報、ディスカッション、データセット、提出を扱い、重要な操作には事前確認を求めます。
主な機能
- 01コンペとデータセット情報の取得
- 02ディスカッションとカーネル情報の収集
- 03コンペ調査とブリーフ作成
- 04Kaggle ノートブックのローカル再現
- 05データセットのアップロードやカーネル提出
活用シーン
- 01ルール、評価方法、日程の要約
- 02コミュニティの議論やコンペカーネルの検索
- 03コンペノートブックの取得とローカル再現
- 04データセットのアップロードや提出の準備
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ nvidia/ nvidia-kaggle --skill nvidia-kaggle-skillインストール後、Claude Code で/nvidia-kaggle-skillを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
kernel-setup.mdkernels.mdresearch-brief.mdevals/evals.jsonscripts/constants.pydb_info.pydiscussion_db_info.pydiscussion_ingest.pydiscussion_query.pydiscussion_read.pyfetch_competition_info.pyfetch_dataset_info.pyfetch_kernel_score.pyfetch_leaderboard_writeups.pyfetch_top_kernel_scores.pyfetch_writeup.pykernel_archive.pykernel_db_info.pykernel_ingest.pykernel_query.pykernel_read.pyscripts/discussions/__init__.pydatabase.pydiscussion_client.pymodels.pypaths.pyscripts/kernels/__init__.pyarchive.pydatabase.pykaggle_client.py詳細
NVIDIA Kaggle スキル
目的
Kaggle コンペティションでの作業(背景情報の収集、解説記事、ディスカッション、カーネル、ローカルでの再現、提出、データセットのアップロード)には、このスキルを使用してください。
ユーザーが明示的にタスクを Kaggle に関連付けない限り、無関係な ML トレーニング、一般的なノートブックの編集、全般的なデータ分析、Kaggle 以外のデータセット管理には使用しないでください。
入力
| 入力 | 必須 | 説明 |
|---|---|---|
| Kaggle のスラッグ、URL、解説記事の URL、カーネルの参照情報、またはローカルフォルダー | タスクによります | 依頼された Kaggle 操作の主な対象です。 |
KAGGLE_API_TOKEN | API/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/ディレクトリ内で完結しています。