View, manage, and analyze 基盤モデル ファインチューニング 実行

プレビュー

この機能はus-east-1us-west-2パブリックプレビュー段階です。

この記事では、 または UI を使用して、基盤モデル ファインチューニング (現在はMosaic AI Model トレーニングの一部) 実行を表示、管理、分析する方法について説明します。APIs

実行の作成に関する情報については、「基盤モデル ファインチューニング APIを使用してトレーニング 実行を作成する」および「基盤モデル ファインチューニング UI を使用してトレーニング 実行を作成する」を参照してください。

Use 基盤モデル ファインチューニング APIs to view and manage トレーニング 実行

基盤モデル ファインチューニング APIs は、トレーニングの実行を管理するための以下の機能を提供します。

実行しよう

get()関数を使用して、名前による実行または起動した実行オブジェクトを返します。

from databricks.model_training import foundation_model as fm

fm.get('<your-run-name>')

リスト実行

起動した実行を確認するには、list()関数を使用します。次の表は、オプションで指定できるフィルタの一覧です。

オプションのフィルター

定義

finetuning_runs

取得する実行の一覧。デフォルトでは、すべての実行が選択されます。

user_emails

ワークスペースで実行の共有が有効になっている場合は、トレーニング実行を送信したユーザーで結果をフィルタリングできます。デフォルトはユーザーフィルターなしです。

before

実行前にフィルター処理するdatetimeまたはdatetime文字列。デフォルトはすべての実行です。

after

フィルターをかける日付または日付文字列。デフォルトはすべての実行です。

from databricks.model_training import foundation_model as fm

fm.list()

# filtering example
fm.list(before='2023-01-01', limit=50)

トレーニング実行をキャンセルします

1 つのトレーニング実行を取り消すには、 cancel() 関数を使用して実行名を渡します。

from databricks.model_training import foundation_model as fm

run_to_cancel = '<name-of-run-to-cancel>'
fm.cancel(run_to_cancel)

複数のトレーニング実行をキャンセルするには、特定の実行名をリストとして渡します。

from databricks.model_training import foundation_model as fm

runs_to_cancel = ['<run_1>, <run_2>, <run_3>']
fm.cancel(runs=runs_to_cancel)

エクスペリメントでのすべてのトレーニング実行をキャンセルするには、エクスペリメント ID を渡します。

from databricks.model_training import foundation_model as fm

experiment_to_cancel = '<experiment-id-to-cancel>'
fm.cancel(experiment_id=experiment_to_cancel)

トレーニング実行の状況を確認する

次の表は、トレーニング実行によって作成されたイベントの一覧です。実行中はいつでもget_events() 機能を使って、実行の進行状況を確認できます。

注:

基盤モデル ファインチューニング は、10 のアクティブな実行の制限を適用します。 これらの実行は、キューにあるか、実行中であるか、または終了しています。 実行は、COMPLETED、FAILED、または STOPPED 状態になるとアクティブとは見なされなくなります。

イベントタイプ

イベントメッセージの例

定義

CREATED

実行が作成されました。

トレーニング実行が作成されました。リソースが使用可能な場合は、実行が開始されます。それ以外の場合は、Pendingという状態になります。

STARTED

実行が開始されました。

リソースが割り当てられ、実行が開始されました。

DATA_VALIDATED

トレーニングデータを検証しました。

トレーニングデータが正しくフォーマットされていることを検証しました。

MODEL_INITIALIZED

基本モデルmeta-llama/Llama-2-7b-chat-hfのモデルデータがダウンロードされ、初期化されました。

ベースモデルの重みがダウンロードされ、トレーニングを開始する準備が整いました。

TRAIN_UPDATED

[epoch=1/1][batch=50/56][ETA=5分] トレーニング損失: 1.71

現在のトレーニングするバッチ、エポック、またはトークン、トレーニングする終了までの推定時間(チェックポイントのアップロード時間は含まれません)、およびトレーニングするの損失を報告します。このイベントは各バッチが終了すると更新されます。実行構成でmax_durationtok単位で指定した場合、進捗はトークンで報告されます。

TRAIN_FINISHED

トレーニングが完了しました。

トレーニングは終了しました。チェックポイントのアップロードが開始されます。

COMPLETED

実行が完了しました。最終加重をアップロードしました。

チェックポイントがアップロードされ、実行が完了しました。

CANCELED

実行がキャンセルされました。

fm.cancel()が呼び出された場合、実行はキャンセルされます。

FAILED

1つ以上のトレーニングデータセットサンプルに不明なキーがあります。サポートされているデータ形式については、ドキュメントをご確認ください。

実行に失敗しました。実用的な詳細についてはevent_messageを確認するか、サポートにお問い合わせください。

from databricks.model_training import foundation_model as fm

fm.get_events()

UIを使用して実行を表示および管理する

UIで実行を表示するには:

  1. 左のナビバーにある[エクスペリメント]をクリックすると、エクスペリメントページが表示されます。

  2. 表の中でエクスペリメント名をクリックすると、エクスペリメントページが表示されます。エクスペリメントページには、実験に関連付けられているすべての実行がリストされます。

    実験ページ
  3. 追加の情報やメトリクスを表に表示するには、プラス記号をクリックしてメニューから表示する項目を選択します:

    グラフにメトリクスを追加する
  4. その他の実行情報は、[チャート]タブでご覧いただけます:

    チャートタブ
  5. 実行の名前をクリックして実行画面を表示することもできます。この画面では、実行に関する追加情報にアクセスできます。

    実行ページ

チェックポイント

チェックポイントフォルダにアクセスするには、実行画面の [Artifacts] タブをクリックします。エクスペリメント名を開き、チェックポイントフォルダを開きます。これらのアーティファクトのチェックポイントは、トレーニング実行終了時に登録されたモデルとは異なります。

[アーティファクト]タブのチェックポイントフォルダ

このフォルダには、いくつかのディレクトリがあります。

  • エポックフォルダ(ep<n>-xxxという名前)には、各コンポーザーのチェックポイントでの重みとモデルの状態が含まれています。コンポーザーのチェックポイントはトレーニング中に定期的に保存され、微調整トレーニングの実行を再開したり、微調整を継続したりするために使用されます。このチェックポイントは、それらの重みから別のトレーニング実行を開始するためにcustom_weights_pathとして渡すものです。「カスタムモデルの加重を構築する」を参照してください。

  • huggingfaceフォルダには、トレーニングを通じてHugging Faceチェックポイントも定期的に保存されます。このフォルダにあるコンテンツをダウンロードしたら、AutoModelForCausalLM.from_pretrained(<downloaded folder>)を使って他のHugging Faceのチェックポイントと同じように、これらのチェックポイントを読み込むことができます。

  • checkpoints/latest-sharded-rank0.symlink は最新のチェックポイントへのパスを含むファイルで、トレーニングを再開するために使用できます。

get_checkpoints(run)を使用して保存した後、実行の Composer チェックポイントを取得することもできます。 この関数は、実行オブジェクトを入力として受け取ります。 チェックポイントがまだ存在しない場合は、チェックポイントの保存後に再試行するように求められます。