huggingface-import について
HuggingFace のリポジトリ、Space、データセットを Coval のテストセットに変換するスキルです。音声・会話エージェントを評価するチーム向けに、項目の対応付けを案内し、メタデータを保持したカテゴリ別 CSV を作成します。
主な機能
- 01データファイルと項目の確認
- 02入力・カテゴリ・メタデータの対応付け
- 03複数ターンの会話データ処理
- 04Coval 形式の CSV 生成
- 05カテゴリ別 CSV の分割
活用シーン
- 01HuggingFace の質問を Coval に取り込む
- 02データセットをカテゴリ別テストセットに整理
- 03元の ID などのメタデータを保持
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ coval-ai/ coval-external-skills --skill huggingface-importインストール後、Claude Code で/huggingface-importを入力して読み込まれたか確認します。
同梱ファイルexamples/huggingface-import.py
詳細
HuggingFace から Coval テストセットへのインポート
HuggingFace から $ARGUMENTS をインポートし、適切に構成されたテストケースを含む Coval テストセットに変換します。
Coval の概要
Coval は、音声および対話型 AI エージェントをテストするための AI 評価プラットフォームです。AI エージェントに対してシミュレーションを実行し、設定可能なメトリクスでパフォーマンスを測定します。
| 概念 | 説明 |
|---|---|
| テストセット | カテゴリまたは評価目的ごとに分類されたテストケースの集合 |
| テストケース | input(プロンプト)と任意の metadata を含む単一の評価シナリオ |
| ペルソナ | ユーザーの大まかな人物像(システムプロンプト)。テストケースとは別のもの |
| エージェント | 評価対象となる AI システム |
重要な違い:
- ペルソナ = 誰が質問するか(人物像、特性)
- テストケース = 何を質問するか(プロンプト、シナリオ)
Coval API
ベース URL: https://api.coval.dev/v1
API を呼び出す前に OpenAPI 仕様を取得します。
# List specs (no auth)
GET https://api.coval.dev/v1/openapi
# Fetch specific spec
GET https://api.coval.dev/v1/openapi/{spec_name}
ワークフロー
ステップ 1:HuggingFace のソースを特定する
$ARGUMENTS が指定されている場合は、その場所に移動します。指定されていない場合は、次のように尋ねます。
インポートする HuggingFace のリポジトリ、スペース、またはデータセットを指定してください。
次に、以下を行います。
- HuggingFace のソースに移動する
- データファイル(CSV、JSON、Parquet)を見つける
- 構造とフィールドを確認する
ステップ 2:データ構造を分析する
ユーザーに次の内容を報告します。
- レコードの合計数
- 利用可能なフィールド/列
- 既存のカテゴリ分け
- レコードのサンプルを 2~3 件
ステップ 3:フィールドの対応付けを対話形式で行う
HuggingFace のデータを Coval 形式に対応付けるため、次の質問をします。
Q1:入力フィールド
テストケースの
inputに使う質問/プロンプトが含まれているフィールドはどれですか?
Q2:カテゴリ分け
テストケースをどのようにテストセットに整理しますか?
- 既存のカテゴリフィールドごと
- 1 つのテストセットにまとめる
- カスタムロジックを使う
Q3:メタデータ
metadataJSON に保持するフィールドはどれですか? (推奨:question_idなどの元の ID を保持する)
Q4:複数ターン(該当する場合)
複数ターンの会話をどのように扱いますか?
- 最初のターンのみ
- ターンを連結する
- ターンごとにテストケースを分ける
ステップ 4:CSV を生成する
Coval 互換の CSV を作成します。
input,metadata
"Your question here","{""question_id"": ""123"", ""source"": ""mt-bench""}"
要件:
input列を必ず最初に配置する- 適切に引用符をエスケープする(二重引用符)
metadataは有効な JSON 文字列にする- UTF-8 エンコーディングを使用する
- カテゴリごとに CSV を 1 つ作成する(推奨)
命名規則: {source}_{category}.csv
ステップ 5:Coval にアップロードする
手動: Coval ダッシュボードのテストセットページから CSV をアップロードします。
API: OpenAPI 仕様を取得し、テストセットのエンドポイントをプログラムで使用します。
よく使われる HuggingFace のソース
一般的な言語理解
| データセット | 説明 |
|---|---|
cais/mmlu | 57 の分野(STEM、人文科学、法律)にわたる 15k 件以上の選択式問題 |
nyu-mll/glue | 感情分析、含意、言語的容認性などの文レベルのタスク |
tau/commonsense_qa | 日常的な世界知識に関する推論テスト |
Rowan/hellaswag | 常識推論と文章補完 |
推論と問題解決
| データセット | 説明 |
|---|---|
openai/gsm8k | 小学校レベルの文章題(複数ステップの算術問題)約 8k 件 |
ucinlp/drop | 離散的な演算を伴う読解問題 |
lukaemon/bbh | BigBench Hard — 難易度の高い推論タスクのサブセット |
補足ファイル
- Python による変換例については、examples/huggingface-import.py を参照してください。
チェックリスト
- 入力フィールドを特定した
- カテゴリ分けを決定した
- 元の ID を
metadataに保持した - 引用符を適切にエスケープした
-
metadata内の JSON が有効である - カテゴリごとに CSV を分けた