Skip to main content
これはインタラクティブなノートブックです。ローカルで実行するか、以下のリンクから利用できます。
このノートブックでは、HuggingFace データセットを Weave の Evaluation の入力ソースとして使用する方法を説明します。最後まで進めると、HuggingFace データセットの行をインデックスで参照し、各行をモデルが想定する形式に前処理したうえで、スコア付けされた結果を Weave でトラッキングする評価パイプラインが完成します。このパターンは、既存の HuggingFace データセットを Weave ネイティブのデータセットに変換することなく、そのままモデルの評価に使用したい場合に便利です。
このガイドでは、HuggingFace データセットを Weave の評価で使用するための回避策を紹介します。この方法は現時点でも問題なく動作しますが、外部データセットとのよりシームレスなインテグレーションも現在開発中です。

セットアップとインポート

まず、Weave を初期化して W&B に接続します。これにより、Weave が評価 run とその結果を Weave プロジェクトでトラッキングできるようになります。

HuggingFace データセットを読み込んで準備する

次に、HuggingFace データセットを読み込み、評価で反復処理する軽量なインデックスを構築します。データセットの行を Weave に直接渡すのではなく、インデックス参照のリストを渡し、前処理の段階でそれぞれを完全な行に解決します。この方法により、評価を元の HuggingFace データセットに紐づけたまま、そのデータセットへの参照を保持できます。
各行に一意の ID を持たせるため、インデックスには hf_id とあわせて hf_hub_name をエンコードしてください。Weave はこの一意のダイジェスト値を使用して、評価中に特定のデータセットエントリをトラッキングおよび参照します。

処理関数と評価関数を定義する

インデックスの準備ができたら、評価パイプラインを構成する 3 つの関数を定義します。各インデックス参照を使用可能なサンプルに変換する関数、モデルの出力をスコアリングする関数、そして評価対象のモデルを表す関数です。 処理パイプラインでは、次の関数を使用します。
  • preprocess_example: インデックス参照を、評価に必要な実際のデータに変換します。
  • hf_eval: モデル出力のスコアリング方法を定義します。
  • function_to_evaluate: 評価対象となる実際の関数またはモデルです。

評価を作成して実行する

最後に、インデックス、Scorer、前処理関数を Weave の Evaluation に組み込み、モデルに対して実行します。hf_index の各エントリに対して、Weave は次の処理を行います。
  1. preprocess_example が HuggingFace データセットから対応するデータを取得します。
  2. Weave が前処理済みのデータを function_to_evaluate に渡します。
  3. hf_eval が出力をスコアリングします。
  4. Weave が結果をトラッキングします。
評価が完了したら、run とその行ごとのスコアを Weave プロジェクトで確認できます。
最終更新日 2026年9月30日