チュートリアル: 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ワークスペースで、左側のナビゲーションバーの[エクスペリメント]をクリックします。
リストからエクスペリメントを選択します。
「チャート」タブでメトリクス チャートを確認します。 トレーニング メトリクスはトレーニング実行ごとに生成され、評価メトリクスは評価データ パスが提供されている場合にのみ生成されます。
進行状況を示す主要なトレーニングメトリクスは損失です。評価損失を使用すると、モデルがトレーニングデータに過剰適合しているかどうかを確認できます。ただし、損失だけに頼るべきではありません。監督されたトレーニングタスクでは、モデルが改善され続けている間、評価の損失が過適合しているように見えることがあるからです。
精度が高ければ高いほど良いモデルですが、100%に近い精度はオーバーフィッティングを示す可能性があることに留意してください。
実行後に次のメトリクスがMLflowに表示されます。
LanguageCrossEntropy
言語モデリング出力のコンピュート クロス エントロピー。 スコアが小さいほど良いです。LanguagePerplexity
言語モデルが、前の単語または文字に基づいて、テキスト ブロック内の次の単語または文字をどの程度正確に予測するかを測定します。 スコアが小さいほど良いです。TokenAccuracy
コンピュート VPN レベルの言語モデリングの精度。 スコアが高いほど良いです。
このタブでは、評価プロンプトを指定した場合、その出力を表示することもできます。
ステップ7:モデルをデプロイする
トレーニング実行が完了すると、モデルがUnity Catalogに自動的に登録されます。モデルは、実行create()
メソッドのregister_to
フィールドに指定した内容に基づいて登録されます。
モデルを配信用にデプロイするには、以下のステップに従ってください:
Unity Catalogでモデルに移動します。
[このモデルを提供する]をクリックしてください。
[サービングエンドポイントの作成]をクリックします。
[名前]フィールドに、エンドポイントの名前を入力します。
[作成]をクリックします。
関連リソース
データの準備、微調整トレーニング実行設定、およびデプロイメントを説明する指示を微調整の例については、指示を微調整:エンティティを識別できる名前デモノートブックを参照してください。