hat-chefUnsloth データレシピ

Unsloth Studio のData Recipesでデータセットを作成、構築、編集する方法を学びます。

Unsloth Studio の Data Recipes を使うと、PDF や CSV のようなドキュメントをアップロードし、それらを利用可能な/合成データセットに変換できます。グラフノードのワークフローを通じて視覚的にデータセットを作成・編集できます。本ガイドでは、Unsloth Data Recipes を使用する前に基本を学べるように始め方を説明します。

Data Recipes の仕組み

Data Recipes は基本的に同じ流れに従います。レシピページを開き、レシピを作成または選択し、エディタでワークフローを構築し、検証してプレビューを実行し、出力が正しく見えるようになったらフルデータセットを実行します。シードデータと生成ブロックを追加し、ワークフローを検証し、サンプル出力をプレビューしてからフルデータセットのビルドを実行します。Unsloth Data Recipes は以下により動作します NVIDIA DataDesignerarrow-up-right.

データセットを生成してモデルをファインチューニングする例

概要として、一般的なワークフローは次のようになります:

  1. レシピページを開きます。

  2. 新しいレシピを作成するか既存のレシピを開きます。

  3. ブロックを追加してデータセットのワークフローを定義します。

  4. クリック 検証 して設定の問題を早期に発見します。

  5. プレビューを実行してサンプル行を素早く確認します。

  6. レシピが準備できたらフルデータセットのビルドを実行します。

  7. 進行状況と出力はグラフ上でまたは 実行 ビューで詳細をライブに確認します。

  8. 生成されたデータセットを Studio で選択してモデルをファインチューニングします。

始める

レシピページがメインの入口です。レシピはブラウザにローカル保存されるため、後で保存した作業に戻ることができます。ここから空のレシピを作成するか、ガイド付き学習用レシピを開くことができます。

circle-info

レシピはエクスポートおよびインポートが可能なので、他の Unsloth ユーザーとワークフローを共有するのが簡単です 🎉。特定のデータセットパターンを作成しようとしている場合は Unsloth の Discord で質問してください。誰かが共有できるレシピをすでに持っているかもしれません。

レシピのランディングページ

ワークフローの概念に慣れていない場合、学習用レシピはシードデータ、プロンプト、式、バリデータが一つの動作例でどのように組み合わさるかを最速で確認できる方法です。すでに欲しいデータセットの形が分かっているなら、空から始める方が通常は速いです。

出発点を選ぶ

もしあなたが:
始め方:

カスタムワークフローを素早く構築したい

空から始める

例から製品を学びたい

学習用レシピから始める

前回の作業を続けたい

保存したレシピを開く

エディタで作るもの

エディタはレシピが形になる場所です。ブロックシートからブロックを追加し、ダイアログで設定し、キャンバス上で接続し、ワークフローを検証または実行します。

製品説明ワークフローを構築する例

エディタにはいくつかの主要な部分があります:

  • レシピヘッダー(ここでレシピ名を変更し、以下を切り替えます) エディタ実行

  • レシピグラフを表示するキャンバス

  • 新しいブロックを追加するブロックシート

  • プロンプト、参照、モデル別名、バリデータ、シード設定を定義する設定ダイアログ。

  • フローティングな 実行検証 コントロール

  • ここにもっと追加する必要があります

レシピで最も一般的なブロックは:

  • シード Hugging Face やローカルの構造化ファイル(または行に分割される非構造化ドキュメント)からの入力データ用。

  • LLM + モデル プロバイダ、モデル設定、LLM 生成ブロック、および共有ツールプロファイル用。

  • 式(Expression) LLM 呼び出しを必要としない jinja2 ベースの変換用。

  • バリデータ Python、SQL、Javascript/Typescript の組み込みリンタで生成された不良なコードをフィルタリングするためのもの。

  • サンプラー カテゴリやサブカテゴリのような決定論的な列用。

参照の仕組み

ほとんどのデータを生成するブロック(いくつかの例外を除く)は後続のブロックの参照になります。これが Data Recipes の主要な考え方の一つです。一度値を作成し、それをプロンプト、式、構造化出力、検証ステップで再利用します。

circle-info

Jinja 式はレシピ内にすでに存在する値を扱うのに役立ちます。たとえばネストされたフィールドを参照できます: {{customer.first_name}} 、値を結合するには例えば {{customer.first_name}} {{customer.last_name}} のようにし、条件ロジックを追加するには次のようなパターンを使います: {% if condition %}...{% endif %}

エディタに表示された参照の例

例えば:

  • 「カテゴリ」ブロックの名前が domain であれば、参照は {{ domain }}

  • のようになります。シード列は LLM プロンプトで直接使用でき、シードデータの列(例:HF データセットの列、CSV)も同様です。

  • 構造化された LLM 出力は後続のプロンプト向けにフィールドを公開できます。

  • 式ブロックは別のモデル呼び出しなしに既存の値を組み合わせることができます。

その後どうなる?

プレビュー実行は素早い反復のためのものです。エディタ内でサンプル行と解析を返し、フル実行を行う前に生成データを検査できます。

フル実行は永続化されたローカルのデータセット成果物を作成します。その出力は後で Studio のローカルデータセットピッカーに表示され、再度検査してファインチューニングに使用できます。オプションでデータセットをあなたの Hugging Face リポジトリに公開することも可能です。

コアビルディングブロック

コアビルディングブロック
モデルおよび LLM ブロック

モデル設定は二つの使用可能なレイヤーに分かれています:

  • モデルプロバイダ エンドポイントと認証を定義します

  • モデル設定(Model Config) モデル名と推論設定を定義します

この設定はホスト型プロバイダ、自ホスト型エンドポイント、 vLLM , llama.cpp 、または Studio の外で実行する任意の OpenAI 互換 API に対応します。

circle-info

レシピは一つのモデルに限定されません。複数の モデルプロバイダモデル設定 ブロックを追加でき、コード生成用と一般テキスト用で異なるモデルを使用するなどの使い分けが可能です。

モデル設定後、4 種類の LLM ブロックタイプを使用できます:

ブロック
出力
最適な用途

LLM テキスト

自由形式のテキスト

指示、説明、会話、記述など

LLM 構造化(Structured)

JSON

固定フィールドと予測可能な構造を必要とする出力

LLM コード

コード

Python、SQL、Typescript などのコード生成タスク

LLM ジャッジ(Judge)

スコア評価

一つまたは複数のユーザー定義スコアで出力を評価

ツールプロファイル

ツールプロファイルブロックは一つ以上の LLM ブロックに対する共有 MCP ベースのツールアクセスを定義します。生成ステップでツール(例えば Context7.

)を参照してコードドキュメントを調べる必要がある場合に使用します。左の画像はツールプロファイルブロックのダイアログに Context7 MCP が追加され設定された様子を示しています:

バリデータ

バリデータブロックは主に LLM コードブロックを対象に、生成されたコード出力をリンタや構文検証でチェックします。これにより不良または無効なコード行を最終データセットから除外するのに役立ちます。組み込みオプションは Python、SQL、JavaScript/TypeScript の検証をカバーしています。

検証、プレビュー、実行

レシピワークフローが整ったら、次のステップは実行です。推奨されるパターンは:まず検証、次に素早いフィードバックのためにプレビューを行い、実行ビューで生成データを検査し、出力が計画を満たしていると感じたらフルデータセットを実行することです。

実行コントロールは次の順序で使用します:

1

検証

クリック 検証 設定の問題を検出するために。

2

プレビュー

プレビューを実行してサンプル行と解析を確認します

3

改良(Refine)

プロンプト、参照、シード設定、またはバリデータを改善します。

生成データに満足するまで反復します

4

フルデータセットのビルドを実行する

最終更新

役に立ちましたか?