hugging-face-dataset-viewer について
Hugging Face Dataset Viewer API を使ってデータセットを読み取り専用で調べる skill です。行のプレビュー、ページ取得、検索、フィルター、メタデータ取得に対応し、データセットを確認するエージェントに適しています。
主な機能
- 01データセットの利用可否と構成の確認
- 02行のプレビューとページ取得
- 03テキスト検索と条件フィルター
- 04Parquet シャードリンクの取得
- 05サイズ、統計、Croissant メタデータの取得
活用シーン
- 01データセットの行をサンプル確認
- 02テキストや条件でレコードを検索
- 03データセット規模と列統計の確認
- 04後続処理用の Parquet シャードを特定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill hugging-face-dataset-viewerインストール後、Claude Code で/hugging-face-dataset-viewerを入力して読み込まれたか確認します。
詳細
Hugging Face Dataset Viewer
使用するタイミング
Hugging Face Dataset Viewer が必要なときにこのスキルを使用します。
このスキルは、データセットの探索と抽出のために読み取り専用の Dataset Viewer API 呼び出しを実行するために使用します。
基本的なワークフロー
- 必要に応じて
/is-validでデータセットの利用可否を検証します。 /splitsでconfig+splitを解決します。/first-rowsでプレビューします。/rowsでoffsetとlength(最大 100)を使ってコンテンツをページネーションします。- テキスト一致には
/search、行の述語には/filterを使用します。 /parquetで parquet リンクを、/sizeと/statisticsで合計とメタデータを取得します。
デフォルト
- ベース URL:
https://datasets-server.huggingface.co - デフォルトの API メソッド:
GET - クエリパラメータは URL エンコードする必要があります。
offsetは 0 始まりです。- 行のようなエンドポイントでは、
lengthの最大値は通常100です。 - ゲート付き/プライベートデータセットには
Authorization: Bearer <HF_TOKEN>が必要です。
Dataset Viewer
データセットを検証:/is-valid?dataset=<namespace/repo>サブセットと分割を一覧表示:/splits?dataset=<namespace/repo>先頭行をプレビュー:/first-rows?dataset=<namespace/repo>&config=<config>&split=<split>行をページネーション:/rows?dataset=<namespace/repo>&config=<config>&split=<split>&offset=<int>&length=<int>テキストを検索:/search?dataset=<namespace/repo>&config=<config>&split=<split>&query=<text>&offset=<int>&length=<int>述語でフィルタリング:/filter?dataset=<namespace/repo>&config=<config>&split=<split>&where=<predicate>&orderby=<sort>&offset=<int>&length=<int>parquet シャードを一覧表示:/parquet?dataset=<namespace/repo>サイズの合計を取得:/size?dataset=<namespace/repo>列の統計を取得:/statistics?dataset=<namespace/repo>&config=<config>&split=<split>Croissant メタデータを取得(利用可能な場合):/croissant?dataset=<namespace/repo>
ページネーションのパターン:
curl "https://datasets-server.huggingface.co/rows?dataset=stanfordnlp/imdb&config=plain_text&split=train&offset=0&length=100"
curl "https://datasets-server.huggingface.co/rows?dataset=stanfordnlp/imdb&config=plain_text&split=train&offset=100&length=100"
ページネーションが部分的である場合は、num_rows_total、num_rows_per_page、partial などのレスポンスフィールドを使用して継続ロジックを駆動します。
検索/フィルタの注意点:
/searchは文字列列に一致します(全文検索スタイルの動作は API 内部のものです)。/filterはwhereに述語構文、orderbyにオプションの並べ替えが必要です。- フィルタリングと検索は読み取り専用かつ副作用のない状態に保ってください。
CLI ベースの parquet URL 検出や SQL については、hf datasets parquet と hf datasets sql を併用した hf-cli スキルを使用してください。
データセットの作成とアップロード
依存関係の制約に応じて、これらのフローのいずれかを使用してください。
ローカル依存関係ゼロ(Hub UI):
- ブラウザでデータセットリポジトリを作成します:
https://huggingface.co/new-dataset - リポジトリの「Files and versions」ページで parquet ファイルをアップロードします。
- Dataset Viewer にシャードが表示されることを確認します:
curl -s "https://datasets-server.huggingface.co/parquet?dataset=<namespace>/<repo>"
低依存関係の CLI フロー(npx @huggingface/hub / hfjs):
- 認証トークンを設定します:
export HF_TOKEN=<your_hf_token>
- parquet フォルダをデータセットリポジトリにアップロードします(リポジトリが存在しない場合は自動作成されます):
npx -y @huggingface/hub upload datasets/<namespace>/<repo> ./local/parquet-folder data
- 作成時にプライベートリポジトリとしてアップロードします:
npx -y @huggingface/hub upload datasets/<namespace>/<repo> ./local/parquet-folder data --private
アップロード後、/parquet を呼び出して <config>/<split>/<shard> の値を検出し、@~parquet でクエリを実行します。
エージェントトレース
Hub は Claude Code、Codex、Pi Agent からの生のエージェントセッショントレースをサポートしています。それらを元の JSONL ファイルとして Hugging Face Datasets にアップロードすると、Hub はトレース形式を自動検出し、データセットに Traces タグを付け、セッション、ターン、ツール呼び出し、モデル応答を閲覧するためのトレースビューアを有効にします。一般的なローカルセッションディレクトリ:
- Claude Code:
~/.claude/projects - Codex:
~/.codex/sessions - Pi:
~/.pi/agent/sessions
トレースにはプロンプト、ファイルパス、ツール出力、シークレット、PII が含まれる可能性があるため、デフォルトではプライベートデータセットリポジトリを使用してください。元の .jsonl ファイルを保持し、すべてのセッションをデータセットのルートにアップロードするのではなく、プロジェクト/cwd ごとにネストしてください。
hf repos create <namespace>/<repo> --type dataset --private --exist-ok
hf upload <namespace>/<repo> ~/.codex/sessions codex/<project-or-cwd> --type dataset
制限事項
- このスキルは、タスクがその上流製品または API のスコープに明確に一致する場合にのみ使用してください。
- 変更を加える前に、コマンド、API の動作、料金、クォータ、認証情報、デプロイへの影響を、最新の公式ドキュメントで確認してください。
- 生成されたサンプルを、環境固有のテスト、セキュリティレビュー、または破壊的もしくは高コストな操作に対するユーザーの承認の代わりとして扱わないでください。