基盤モデルを使用する
この記事では、基盤モデルのクエリ要求を記述するために使用できるオプションと、それらをモデルサービングエンドポイントに送信する方法について説明します。 Databricks によってホストされている基盤モデルと、Databricks の外部でホストされている基盤モデルに対してクエリを実行できます。
従来の ML モデルまたは Python モデルのクエリ要求については、 カスタム モデルのクエリ サービング エンドポイントを参照してください。
Mosaic AI Model Serving は、基盤モデルにアクセスするための基盤モデル API と外部モデルをサポートしています。モデルサービングは、統一されたOpenAI互換の API とクエリ SDK を使用します。 これにより、エクスペリメントを行い、サポートされているクラウドやプロバイダー間での本番運用のための基盤モデルをカスタマイズすることが可能になります。
クエリオプション
Mosaic AI Model Serving は、基盤モデルを提供するエンドポイントにクエリリクエストを送信するための次のオプションを提供します。
メソッド | 詳細 |
|---|---|
OpenAIクライアント | OpenAI クライアントを使用して、 Mosaic AI Model Servingエンドポイントによってホストされているモデルをクエリします。 |
AI関数 |
|
サービングUI | サービングエンドポイント ページから エンドポイントのクエリー を選択します。JSON形式のモデル入力データを挿入し、 リクエストを送信 をクリックします。 モデルに入力例がログに記録されている場合は、 例を表示 を使用して読み込みます。 |
REST API | REST API を使用してモデルを呼び出し、クエリを実行します。 詳細は POST /serving-endpoints/{name}/invocations を参照してください。 複数のモデルを提供するエンドポイントへの要求のスコアリングについては、エンドポイントの背後にある個々のモデルのクエリを参照してください。 |
MLflow Deployments SDK | MLflow Deployments SDK の predict() 関数を使用して、モデルに対してクエリを実行します。 |
Databricks Python SDK | Databricks Python SDK は、REST API の上位にあるレイヤーです。 認証などの低レベルの詳細を処理するため、モデルとの対話が容易になります。 |
必要条件
-
サポートされているリージョン内の Databricks ワークスペース。
-
OpenAI クライアント、REST API、または MLflow Deployment SDK を使用してスコアリング要求を送信するには、Databricks API トークンが必要です。
本番運用シナリオのセキュリティのベスト プラクティスとして、 Databricks では、本番運用中の認証に マシン間 OAuth トークン を使用することをお勧めします。
テストと開発のために、 Databricks ワークスペース ユーザーではなく 、サービスプリンシパル に属する個人用アクセス トークンを使用することをお勧めします。 サービスプリンシパルのトークンを作成するには、「 サービスプリンシパルのトークンの管理」を参照してください。
パッケージのインストール
クエリ方法を選択したら、まず適切なパッケージをクラスターにインストールする必要があります。
- OpenAI client
- REST API
- MLflow Deployments SDK
- Databricks Python SDK
OpenAI クライアントを使用するには、 databricks-sdk[openai] パッケージをクラスターにインストールする必要があります。 Databricks SDK 、生成モデルのクエリを実行するように自動的に構成された承認を使用して OpenAI クライアントを構築するためのラッパーAI 提供されます。 ノートブックまたはローカルターミナルで次のコマンドを実行します。
!pip install databricks-sdk[openai]>=0.35.0
以下は、パッケージを Databricks ノートブックにインストールする場合にのみ必要です
dbutils.library.restartPython()
Serving REST API へのアクセスは、Databricks機械学習ランタイムで使用できます。
!pip install mlflow
以下は、パッケージを Databricks ノートブックにインストールする場合にのみ必要です
dbutils.library.restartPython()
Databricks Runtime 13.3 LTS以降を使用するすべての Databricksクラスターには、Databricks SDK for Python が既にインストールされています。Databricks Runtime12.2 LTS 以前を使用するDatabricksクラスターの場合は、最初にDatabricks SDK for Python をインストールする必要があります。Databricks SDK for Pythonを参照してください。
基盤モデル types
次の表は、タスクタイプに基づいてサポートされている基盤モデルをまとめたものです。
Meta-Llama-3.1-405B-Instructは廃止されます。
- 2026 年 2 月 15 日から、VPN単位の従量課金ワークロードが開始されます。
- プロビジョニングされたスループット ワークロードについては、2026 年 5 月 15 日から開始されます。
推奨される代替モデルと廃止期間中の移行方法に関するガイダンスについては、「廃止されたモデル」を参照してください。
関数呼び出し
Databricks Function Calling は OpenAI と互換性があり、 基盤モデル API の一部としてモデルサービング中のみ使用でき、 外部モデルを提供するサービング エンドポイントを利用できます。 詳細については、「 Databricks での関数呼び出し」を参照してください。
構造化された出力
Structured outputs は OpenAI と互換性があり、基盤モデル APIの一部としてモデルサービング中のみ使用できます。詳細については、「 Databricks での構造化出力」を参照してください。
プロンプトキャッシュ
プロンプト キャッシュは、 Databricksでホストされる Claude モデルに対して、インフラストラクチャ モデルAPIsの一部としてサポートされています。
クエリ リクエストでcache_control引数を指定して、次のものをキャッシュできます。
messages.content配列内のテキスト コンテンツ メッセージ。messages.content配列内のメッセージ コンテンツを検討しています。messages.content配列内の画像コンテンツ ブロック。- ツールの使用、結果、および定義は
tools配列内にあります。
「 プラットフォームモデルREST APIリファレンス 」を参照してください。
- TextContent
- ReasonContent
- ImageContent
- ToolCallContent
{
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "What's the date today?",
"cache_control": { "type": "ephemeral" }
}
]
}
]
}
{
"messages": [
{
"role": "assistant",
"content": [
{
"type": "reasoning",
"summary": [
{
"type": "summary_text",
"text": "Thinking...",
"signature": "[optional]"
},
{
"type": "summary_encrypted_text",
"data": "[encrypted text]"
}
]
}
]
}
]
}
画像メッセージ コンテンツは、エンコードされたデータをソースとして使用する必要があります。URL はサポートされていません。
{
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "What’s in this image?"
},
{
"type": "image_url",
"image_url": {
"url": "data:image/jpeg;base64,[content]"
},
"cache_control": { "type": "ephemeral" }
}
]
}
]
}
{
"messages": [
{
"role": "assistant",
"content": "Ok, let’s get the weather in New York.",
"tool_calls": [
{
"type": "function",
"id": "123",
"function": {
"name": "get_weather",
"arguments": "{\"location\":\"New York, NY\"}"
},
"cache_control": { "type": "ephemeral" }
}
]
}
]
}
Databricks REST API は OpenAI と互換性があり、Anthropic API とは異なります。これらの違いは、次のような応答オブジェクトにも影響します。
- 出力は
choicesフィールドに返されます。 - ストリーミング チャンク形式。すべてのチャンクは同じ形式に準拠しており、
choicesには応答deltaが含まれ、使用状況はチャンクごとに返されます。 - 停止理由は
finish_reasonフィールドに返されます。- Anthropic は、
end_turn、stop_sequence、max_tokens、およびtool_use - それぞれ、Databricksは
stop、stop、length、およびtool_calls
- Anthropic は、
AI Playground を使用してサポートされている LLM とチャットする
サポートされている大規模言語モデルは、 AI Playgroundを使用して操作できます。 AI Playground は、Databricks ワークスペースから LLM をテスト、プロンプト、比較できるチャットのような環境です。
