チュートリアル: Create and deploy a 基盤モデル ファインチューニング 実行
プレビュー
この機能は、us-east-1
と us-west-2
でパブリック プレビュー段階です。
この記事では、基盤モデル ファインチューニング (現在は Mosaic AI Model トレーニングの一部) APIを使用して実行を作成および構成し、 Databricks UI と Mosaic AI Model Servingを使用して結果を確認してモデルをデプロイする方法について説明します。
必要条件
us-east-1
またはus-west-2
AWSリージョン内のワークスペース。- Databricks Runtime 12.2 LTS ML以降。
- このチュートリアルは、 Databricks ノートブックで実行する必要があります。
- 受け入れられる形式のトレーニングデータ。 基盤モデル ファインチューニングのためのデータの準備を参照してください。
ステップ 1: トレーニング用のデータを準備する
基盤モデル ファインチューニングのためのデータの準備を参照してください。
ステップ 2: databricks_genai
SDK をインストールする
databricks_genai
SDKをインストールするには、以下を使用します。
%pip install databricks_genai
次に、foundation_model
ライブラリをインポートします:
dbutils.library.restartPython()
from databricks.model_training import foundation_model as fm
ステップ 3: トレーニングの実行を作成する
基盤モデル ファインチューニング create()
関数を使用してトレーニング 実行を作成します。 次のパラメーターが必要です。
model
:トレーニングするモデル。train_data_path
: トレーニングデータセットの場所。register_to
:チェックポイントを保存するUnity Catalogカタログとスキーマ。
例えば:
run = fm.create(model='meta-llama/Meta-Llama-3.1-8B-Instruct',
train_data_path='dbfs:/Volumes/main/my-directory/ift/train.jsonl', # UC Volume with JSONL formatted data
register_to='main.my-directory',
training_duration='1ep')
run
ステップ 4: 実行のステータスを表示する
トレーニング実行を完了するのにかかる時間は、トークンの数、モデル、および利用できるGPUによって異なります。Databricksでは、トレーニング時間を短縮するために、リザーブドコンピューティングの使用を推奨しています。詳細については、Databricksアカウントチームにお問い合わせください。
実行を開始した後、get_events()
を使用して実行のステータスを監視できます。
run.get_events()
ステップ 5: メトリクスと出力を表示する
Databricks UIで結果を表示するには、次のステップに従います:
- Databricksワークスペースで、左側のナビゲーションバーの[ エクスペリメント ]をクリックします。
- リストからエクスペリメントを選択します。
- 「チャート」 タブでメトリクス・チャートを確認します。トレーニング メトリクスはトレーニング 実行ごとに生成され、評価メトリクスは評価データ パスが提供されている場合にのみ生成されます。
-
進行状況を示す主要なトレーニング メトリクスは loss です。 評価損失は、モデルがトレーニング データに過剰適合しているかどうかを確認するために使用できます。 ただし、インストラクション トレーニング タスクでは、モデルが改善し続けている間、評価損失が過剰適合しているように見える可能性があるため、損失に完全に頼るべきではありません。
-
精度が高ければ高いほど良いモデルですが、100%に近い精度はオーバーフィッティングを示す可能性があることに留意してください。
-
次のメトリクスは、実行後に MLflow に表示されます。
LanguageCrossEntropy
言語モデリング出力のクロスエントロピー。 スコアが小さいほど良いです。LanguagePerplexity
言語モデルが、前の単語または文字に基づいて、テキスト ブロック内の次の単語または文字をどの程度正確に予測するかを測定します。 スコアが小さいほど良いです。TokenAccuracy
言語モデリングのためのトークンレベルの精度。 スコアが高いほど良いです。
-
このタブでは、評価プロンプトを指定した場合、その出力を表示することもできます。
-
ステップ 6: デプロイ前に Mosaic AI Agent Evaluation で複数のカスタマイズされたモデルを評価する
「Mosaic AI エージェント評価とは」を参照してください。
ステップ 7: モデルをデプロイする
トレーニング実行が完了すると、モデルがUnity Catalogに自動的に登録されます。モデルは、実行create()
メソッドのregister_to
フィールドに指定した内容に基づいて登録されます。
モデルを配信用にデプロイするには、以下のステップに従ってください:
- Unity Catalogでモデルに移動します。
- [ このモデルを提供する ]をクリックしてください。
- [ サービングエンドポイントの作成 ]をクリックします。
- [ 名前 ]フィールドに、エンドポイントの名前を入力します。
- 作成 をクリックします。
追加のリソース
- 基盤モデル ファインチューニング APIを使用してトレーニング 実行を作成する
- 基盤モデルのファインチューニング
- Mosaic AI Model Serving を使用したモデルのデプロイ
- データの準備、微調整トレーニング実行設定、およびデプロイメントを説明する指示を微調整の例については、指示を微調整:エンティティを識別できる名前デモノートブックを参照してください。