Foundation Model Training の概要
重要
この機能はパブリック プレビュー段階にあります。 パブリック プレビューに登録する場合は、Databricks アカウント チームにお問い合わせください。
Foundation Model Training を使用すると、独自のデータを使用して基盤モデルをカスタマイズし、特定のアプリケーションのパフォーマンスを最適化できます。 基盤モデルの微調整またはトレーニングを継続すると、モデルをゼロからトレーニングするよりもはるかに少ないデータ、時間、コンピューティング リソースを使用して、独自のモデルをトレーニングできます。
Databricks を使用すると、トレーニングに使用する独自のデータ、トレーニングする基盤モデル、MLflow に保存されたチェックポイント、Unity Catalog に登録され、デプロイする準備ができているモデルなど、すべてを 1 つのプラットフォームで利用できます。
Foundation Model Training とは
Foundation Model Training を使用すると、Databricks API または UI を使用して、基盤モデルを調整したり、さらにトレーニングしたりできます。
Foundation Model Training を使用すると、次のことができます。
- MLflow に保存されたチェックポイントを使用して、カスタム データを使用してモデルをトレーニングできます。 トレーニング済みモデルを完全に制御できます。
- モデルを Unity Catalog に自動的に登録し、モデル サービスを使用して簡単にデプロイできるようにします。
- 以前にトレーニングしたモデルの重みを読み込んで、完成した独自のモデルをさらにトレーニングできます。
Databricks では、次の場合に Foundation Model Training を試してみることをお勧めしています。
- 少数ショット学習を試したが、より良い結果を得たいと考えている。
- 既存のモデルに対してプロンプト エンジニアリングを試みたが、より良い結果を得たいと考えている。
- データのプライバシーのために、カスタム モデルに対する完全な所有権を必要としている。
- 待ち時間やコストに敏感で、タスク固有のデータを使用してより小さく安価なモデルを使用したいと考えている。
サポートされているタスク
Foundation Model Training では、次のユース ケースがサポートされています。
- 監視付き微調整: 構造化されたプロンプト応答データでモデルをトレーニングします。 これを使用して、モデルを新しいタスクに適応させたり、応答スタイルを変更したり、命令に従う機能を追加したりできます。
- 継続的な事前トレーニング: 追加のテキスト データを使用してモデルをトレーニングします。 これを使用して、新しい知識をモデルに追加したり、モデルを特定の領域に集中させたりできます。
- チャット補完: ユーザーと AI アシスタントの間のチャット ログでモデルをトレーニングします。 この形式は、実際のチャット ログだけでなく、質問応答や会話テキストの標準形式としても使用できます。 テキストは、特定のモデルに適したチャット形式に自動的に書式設定されます。
要件
- 次の Azure リージョンのいずれかにある Databricks ワークスペース:
centralus
、eastus
、eastus2
、northcentralus
、westcentralus
、westus
、westus3
。 pip install databricks_genai
を使用してインストールされた Foundation Model Training API。- データが Delta テーブル内にある場合は、Databricks Runtime 12.2 LTS ML 以降。
必要な入力データ形式の詳細については、「Foundation Model Training 用にデータを準備する」を参照してください。
モデル トレーニングに推奨されるデータ サイズ
監視付き微調整とチャット補完には、モデルの少なくとも 1 つの完全なコンテキスト長に対して十分なトークンを提供する必要があります。 たとえば、meta-llama/Llama-2-7b-chat-hf
の場合は 4096 トークン、mistralai/Mistral-7B-v0.1
の場合は 32768 トークンです。
継続的な事前トレーニングのために、Databricks では、カスタム データを学習する、より高品質なモデルを取得するために、少なくとも 150 万個のサンプルを推奨しています。
サポートされているモデル
重要
Llama 3 は LLAMA 3 Community License の下でライセンスされています (Copyright © Meta Platforms, Inc. All Rights Reserved.)。 お客様は、該当するモデル ライセンスへのコンプライアンスを遵守する責任を負います。
Llama 2 および Code Llama のモデルは LLAMA 2 Community License (Copyright © Meta Platforms, Inc.) の下でライセンスされています。All Rights Reserved.)。 お客様は、該当するモデル ライセンスへのコンプライアンスを遵守する責任を負います。
DBRX は、Databricks Open Model License (Copyright © Databricks, Inc.) の下で提供され、その対象となります。All rights reserved. お客様は、Databricks 利用規約を含む、該当するモデル ライセンスへのコンプライアンスを遵守する責任を負います。
モデル | コンテキストの最大長 |
---|---|
databricks/dbrx-base |
4096 |
databricks/dbrx-instruct |
4096 |
meta-llama/Meta-Llama-3-70B |
8192 |
meta-llama/Meta-Llama-3-70B-Instruct |
8192 |
meta-llama/Meta-Llama-3-8B |
8192 |
meta-llama/Meta-Llama-3-8B-Instruct |
8192 |
meta-llama/Llama-2-7b-hf |
4096 |
meta-llama/Llama-2-13b-hf |
4096 |
meta-llama/Llama-2-70b-hf |
4096 |
meta-llama/Llama-2-7b-chat-hf |
4096 |
meta-llama/Llama-2-13b-chat-hf |
4096 |
meta-llama/Llama-2-70b-chat-hf |
4096 |
codellama/CodeLlama-7b-hf |
16384 |
codellama/CodeLlama-13b-hf |
16384 |
codellama/CodeLlama-34b-hf |
16384 |
codellama/CodeLlama-7b-Instruct-hf |
16384 |
codellama/CodeLlama-13b-Instruct-hf |
16384 |
codellama/CodeLlama-34b-Instruct-hf |
16384 |
codellama/CodeLlama-7b-Python-hf |
16384 |
codellama/CodeLlama-13b-Python-hf |
16384 |
codellama/CodeLlama-34b-Python-hf |
16384 |
mistralai/Mistral-7B-v0.1 |
32768 |
mistralai/Mistral-7B-Instruct-v0.2 |
32768 |
mistralai/Mixtral-8x7B-v0.1 |
32768 |
Foundation Model Training を使用する
Foundation Model Training には、databricks_genai
SDK を使用してアクセスできます。 次の例では、Unity Catalog ボリュームのデータを使用するトレーニング実行を作成して起動します。 構成の詳細については、「Foundation Model Training API を使用してトレーニングの実行を作成する」を参照してください。
from databricks.model_training import foundation_model as fm
model = 'meta-llama/Llama-2-7b-chat-hf'
# UC Volume with JSONL formatted data
train_data_path = 'dbfs:/Volumes/main/mydirectory/ift/train.jsonl'
register_to = 'main.mydirectory'
run = fm.create(
model=model,
train_data_path=train_data_path,
register_to=register_to,
)
制限事項
- コンピューティングの可用性のため、大規模なデータセット (100 億以上のトークン) はサポートされていません。
- PrivateLink はサポートされていません。
- 継続的な事前トレーニングの場合、ワークロードは 60 から 256 MB のファイルに制限されます。 1 GB を超えるファイルでは、処理時間が長くなる可能性があります。
- Databricks は、Foundation Model Training を使用して、最新の最先端モデルをカスタマイズできるように努めています。 新しいモデルを使用できるように、API や UI から古いモデルにアクセスする機能を削除したり、古いモデルを非推奨にしたり、サポートされているモデルを更新したりする場合があります。 基盤モデルが API や UI から削除されるか、非推奨になる場合、Databricks は次の手順を実行して、削除または非推奨となる日の少なくとも 3 か月前に顧客に通知します。
- Databricks ワークスペースの [実験] > [Foundation Model Training] ページのモデル カードに、モデルが非推奨になる予定であることを示す警告メッセージを表示します。
- モデルが非推奨となる予定であることを示す通知を含めるためにドキュメントを更新します。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示