Jupyter エージェント:ノートブックで推論できるLLMのトレーニング

Hugging Face は、Jupyter Notebook 内でコードを実行できるデータサイエンスエージェントとして機能する小型言語モデルを訓練するパイプラインを開発しました。Kaggle Notebook から作成した厳選された合成データセットと、簡素化されたエージェントスキャフォールディングを組み合わせることで、チームはデータ分析ベンチマークにおける Qwen3-4B モデルの性能を大幅に向上させました。

データサイエンスエージェント向け DABStep ベンチマーク

エージェントのデータサイエンス能力の進捗を測るため、Hugging Face は DABStep ベンチマーク を利用しています。このベンチマークは、データセットを提供し、モデルに非自明なデータ質問への回答を求めることで、現実的なタスク上でエージェントを評価します。現在の LLM にとっては特に難易度が高く、例えば Claude 4 Sonnet はハードタスクで 20% 未満の正解率にとどまります。

エージェントスキャフォールディングの最適化

エージェントの性能は、モデルの挙動を導くコードとプロンプト構造であるスキャフォールディングに大きく依存します。Hugging Face は Jupyter エージェント用のスキャフォールディングを軽量化し、モデルのニーズに合わせて再構築しました。

  • 簡素化されたアーキテクチャ: スキャフォールディングは外部依存なしで約 200 行のコードに削減されました。
  • ツール統合: エージェントは code executionfinal_answer の 2 つの主要ツールを用いて while ループで動作します。
  • 性能向上: この最適化だけで DABStep の Easy スプリットにおける正解率が 44.4% から 59.7% に上昇しました。

Jupyter エージェントデータセットパイプライン

小型モデルを改善するため、Hugging Face は Datatrove を用いた多段階パイプラインを構築し、約 2TB の生の Kaggle Notebook を高品質な 51k 件の合成 Notebook(約 0.2B トークン)に変換しました。

1. 重複排除とデータ取得

生の Kaggle Notebook を重複排除し、容量を 2TB から 250GB に削減しました。その後、kagglehub パッケージを使用して約 5TB のリンクされたデータセットをダウンロードし、モデルチェックポイント、マルチモーダルコーパス、10GB 超のデータセットを除外して E2B サンドボックスに収まるようにしました。

2. 教育スコアリングとフィルタリング

Qwen3-32B を用いて「教育スコア」システムを実装し、Notebook を 1〜5 のスコアで評価、明瞭さと教育的価値に基づき約 70% を除去しました。さらに LLM ベースのフィルタリングで追加の 20% を除去し、データ分析に関係ない Notebook やデータセットを使用していない Notebook を排除しました。

3. 合成 QA とトレース生成

検証可能な学習データを作成するため、パイプラインは実際の Notebook トレースに基づく合成質問応答(QA)ペアを生成しました。

  • QA 生成: Qwen3-32B が自然な質問と回答を生成し、別の LLM がハルシネーションを防ぐために検証しました。
  • トレース生成: Qwen-3-Coder-480B-A35B-Instruct を使用して、合成質問に答えるためのクリーンなステップバイステップのコード実行トレースを生成しました。
  • 欠損データへの対処: データセットが利用できない場合、モデルに状態を保持する Python コードインタプリタとして振る舞うよう指示し、実行をシミュレートさせました。
  • 推論エミュレーション: コードセル間にコメントを必ず入れるよう、comment フィールドをコード実行ツール呼び出しの必須項目にしました。

トレーニングと結果

ファインチューニングは Qwen3-4B を対象に TRL ライブラリで実施しました。フルパラメータのファインチューニングが PEFT(Parameter‑Efficient Fine‑Tuning)よりも優れ、assistant_loss_only=True を使用することでさらに性能が向上することが判明しました。

パフォーマンス向上

合成データセットでのトレーニングにより、モデルの DABStep Easy スプリットでの性能が大幅に向上しました。

Model エポック数 DABStep (Easy)
Qwen-3-4B-Instruct-2507 (Base) 0 38.67%
Qwen-3-4B-Instruct-2507 (Our Scaffolding) 0 52.78%
Qwen-3-4B-Instruct-2507 2 63.89%
Qwen-3-4B-Instruct-2507 3 73.61%
Qwen-3-4B-Instruct-2507 5 75%
Qwen-3-4B-Instruct-2507 7 70.83%

最終的に調整された Qwen‑4B モデルは、ベースモデルに対して最大 36% のブースト、スキャフォールディング済みベースモデルに対して 22% のブーストを Easy スコアで達成し、Hard スコアでも改善が見られました。

オープンソースリリース

Hugging Face はコミュニティ向けに以下のリソースを公開しました:

  • Jupyter エージェントデータセット: 51k 件の合成 Notebook のコレクション。
  • 調整済みモデル: jupyter-agent-qwen3-4b-instructjupyter-agent-qwen3-4b-thinking

今後の方向性

チームは、より難易度の高いマルチステップ質問の生成、キュレートされたトレース量の拡大、知識蒸留の検証、既存の検証可能な QA 設定を活用した強化学習(RL)環境の構築など、さらなる改善の道筋を特定しています。


SUMMARY: Hugging Face は、高品質な合成データ生成パイプラインと最適化されたスキャフォールディングを導入し、Qwen3-4B のような小型 LLM を最先端のデータサイエンスエージェントへと変換します。

TITLE: Jupyter エージェント:ノートブックで推論できるLLMのトレーニング

Sources