メインコンテンツまでスキップ

モデルサービスを使用

備考

ベータ版

この機能はベータ版です。アカウント管理者は、アカウント コンソールの [プレビュー] ページからこの機能へのアクセスを制御できます。 Databricksのプレビューを管理するを参照してください。

この記事では、基盤モデルのクエリリクエストを作成し、Unity AI Gatewayのモデルサービスに送信するためのオプションについて説明します。

Unity AI Gateway は、統一された OpenAI 互換 API を介してモデルサービスを公開しているため、プロバイダー間で Databricks ホストの基盤モデルをエクスペリメントおよびカスタマイズできます。モデルスラッグとして完全修飾名でモデルサービスを識別し (例: system.ai.claude-opus-4-6)、ワークスペースの Unity AI Gateway ベース URL (https://<workspace-url>/ai-gateway/mlflow/v1) にリクエストを送信します。

注記

この記事の例は、モデルサービスにクエリを実行します。下位互換性のため、Databricksは、databricks-claude-opus-4-6のような完全修飾名のないDatabricksホスト型モデル名を、システム提供のモデルサービスsystem.ai.claude-opus-4-6として解釈します。この動作により、既存のワークロードはコード変更なしで引き続き実行できます。

クエリ オプション

Unity AI Gatewayは、基盤モデルを提供するモデルサービスにクエリリクエストを送信するための以下のオプションを提供します。

手法

詳細

OpenAIクライアント

OpenAI クライアントを使用してモデルサービスをクエリします。モデルサービスの完全修飾名(例:system.ai.claude-opus-4-6)をmodel入力として指定します。外部モデルによって提供されるチャット、埋め込み、および補完モデルがサポートされています。

REST API

REST API を使用してモデルサービスを呼び出し、クエリを実行します。ワークスペースの Unity AI Gateway ベース URL である https://<workspace-url>/ai-gateway/mlflow/v1/chat/completionsPOST リクエストを送信します。Unity AI Gateway」を参照してください。

Databricks Python SDK

Databricks Python SDK は REST API の上のレイヤーです。認証などの低レベルの詳細を処理するため、モデルとの対話が容易になります。

注記

ベータ期間中、ai_query SQL 関数を使用してモデルサービスをクエリすることはできません。OpenAIクライアントまたはREST APIを使用して、モデルサービスをクエリします。

要件

  • EXECUTE モデルサービスで、そしてそのカタログとスキーマで USE CATALOG および USE SCHEMA を。system.ai のシステム提供のモデルサービスは、デフォルトですべてのアカウントユーザーに EXECUTE を付与します。サービスが参照するモデルへのアクセスは必要ありません。Databricks は、モデルサービス オーナー がそれらに対して EXECUTE を持っていることを確認します。
  • クエリするモデルサービス。カスタムモデルサービスを作成するには、カスタムモデルサービスを作成するを参照してください。
  • Unity AI Gateway がサポートされているリージョンにあるDatabricksワークスペース。
  • OpenAIクライアントまたはREST APIを介してスコアリングリクエストを送信するには、Databricks APIトークンが必要です。

パッケージのインストール

クエリ方法を選択したら、まず適切なパッケージをクラスターにインストールする必要があります。

OpenAI クライアントを使用するには、databricks-openaiパッケージをクラスターにインストールする必要があります。このパッケージは、生成AI モデルをクエリするために認証が自動的に構成された OpenAI クライアントを提供します。ノートブックまたはローカルターミナルで以下を実行します:

pip install -U databricks-openai

以下は、Databricks ノートブックにパッケージをインストールする場合にのみ必要です。

Python
dbutils.library.restartPython()

構造化された出力

構造化出力は OpenAI と互換性があり、Unity AI Gateway の一部として、モデルサービング中にのみ使用できます。詳細については、「Databricks の構造化出力」を参照してください。

プロンプトのキャッシュ

プロンプトキャッシングは、Unity AI Gateway の一部として、Databricks ホスト型 Claude モデルでサポートされています。

クエリリクエストでcache_controlパラメーターを指定して、以下をキャッシュできます:

  • messages.content配列内のテキストコンテンツメッセージ。
  • messages.content配列内のメッセージコンテンツを検討する。
  • messages.content配列内の画像コンテンツブロック。
  • tools配列内のツール使用、結果、定義。
JSON
{
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "What's the date today?",
"cache_control": { "type": "ephemeral" }
}
]
}
]
}
注記

Databricks REST API は OpenAI と互換性があり、Anthropic API とは異なります。これらの違いは、次のような応答オブジェクトにも影響します:

  • 出力はchoicesフィールドに返されます。
  • ストリーミングチャンク形式。すべてのチャンクは、choices に応答 delta が含まれ、使用状況がすべてのチャンクで返される同じ形式に準拠しています。
  • 停止理由はfinish_reasonフィールドで返されます。
    • Anthropic で使用されるもの: end_turnstop_sequencemax_tokens、および tool_use
    • それぞれ、Databricks は以下を使用します: stopstoplength、および tool_calls

AI Playground を使用して、サポートされている LLM とチャットする

AI Playgroundを使用して、サポートされている大規模言語モデルと対話できます。AI Playgroundは、DatabricksワークスペースからLLMをテスト、プロンプト、比較できるチャットのような環境です。

AI playground

その他のリソース