Databricksでのウェブ検索
このページでは、Databricks 上で Web からのリアルタイム情報を使用して応答をグラウンディングする方法について説明します。MCP 互換のクライアントおよびエージェントと共に、モデルに依存しないマネージド Model Context Protocol (MCP) サービス system.ai.web_search を使用します。Gemini および OpenAI 基盤モデルは、基盤モデル APIs を介したネイティブ Web 検索も提供します。
Genie Code (エージェントモード) でこの操作を実行できます。このプロンプト例をお試しください。
Query the databricks-gemini-3-1-pro model using the OpenAI client with the google_search parameter enabled, ask a question about a current event, and print the response.
ウェブ検索とは何ですか?
Web 検索により、基盤モデルは応答生成中にインターネットから最新の情報を取得できます。 ウェブ検索が有効になっている場合、モデルはウェブを検索して関連情報を見つけ、それを応答に組み込むことができます。これは、時事問題、最新データ、またはリアルタイムの情報によって回答が改善されるあらゆるトピックに関する質問に役立ちます。
ウェブ検索を使用する
モデルプロバイダーから独立したマネージド MCP サービスを使用するか、サポートされているモデル API を介してネイティブウェブ検索を有効にします。
- マネージドMCP Web検索 : MCP互換のクライアントまたはエージェントから組み込みの
system.ai.web_searchMCP サービス を使用します。Databricks が基盤となるモデルを管理するため、サービスのモデルを選択する必要はありません。 - Gemini モデル : Chat Completions APIまたはGoogle Gemini APIで
google_search問題を使用します。 - OpenAI モデル : OpenAI Responses APIで
web_searchツールを使用します。 - サードパーティのMCP Web検索 :代替手段として、Databricks MarketplaceのYou.comなどのWeb検索MCPサーバーを使用します。
OpenAIモデルのネイティブWeb検索は、Responses APIを通じてのみ利用可能です。Chat Completions APIではサポートされていません。
モデル APIs を介したネイティブ Web 検索
次の例では、基盤モデルAPIリクエストでモデルプロバイダーのネイティブ Web 検索ツールを有効にします。
GeminiモデルとChat Completions API
Chat Completions APIを使用して Gemini モデルの Web 検索を有効にするには、リクエスト本文にトップレベルの としてgoogle_searchを渡します。
- Python
- REST API
import os
from openai import OpenAI
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
DATABRICKS_BASE_URL = os.environ.get('DATABRICKS_BASE_URL')
client = OpenAI(
api_key=DATABRICKS_TOKEN,
base_url=DATABRICKS_BASE_URL
)
response = client.chat.completions.create(
model="databricks-gemini-3-1-pro",
messages=[
{"role": "user", "content": "What are the best Italian restaurants in San Francisco?"}
],
extra_body={"google_search": {}}
)
print(response.choices[0].message.content)
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"messages": [
{"role": "user", "content": "What are the best Italian restaurants in San Francisco?"}
],
"google_search": {}
}' \
https://<workspace_host>.databricks.com/serving-endpoints/databricks-gemini-3-1-pro/invocations
Google Gemini API を使用した Gemini モデル
Google Gemini APIを使用したウェブ検索を有効にするには、ツールとしてgoogle_searchを渡します。
- Python
- REST API
from google import genai
from google.genai import types
import os
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
client = genai.Client(
api_key="databricks",
http_options=types.HttpOptions(
base_url="https://example.staging.cloud.databricks.com/ai-gateway/gemini",
headers={
"Authorization": f"Bearer {DATABRICKS_TOKEN}",
},
),
)
response = client.models.generate_content(
model="databricks-gemini-3-1-pro",
contents=[
types.Content(
role="user",
parts=[types.Part(text="What are the best Italian restaurants in San Francisco?")],
),
],
config=types.GenerateContentConfig(
tools=[types.Tool(google_search=types.GoogleSearch())],
),
)
print(response.text)
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"role": "user",
"parts": [{"text": "What are the best Italian restaurants in San Francisco?"}]
}
],
"tools": [
{"google_search": {}}
]
}' \
https://<workspace_host>.databricks.com/ai-gateway/gemini/v1beta/models/databricks-gemini-3-1-pro:generateContent
OpenAIモデルとResponses API
OpenAIモデルのウェブ検索を有効にするには、 OpenAI Responses APIを使用してツールとしてweb_searchを渡します。
- Python
- REST API
import os
from openai import OpenAI
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
DATABRICKS_BASE_URL = os.environ.get('DATABRICKS_BASE_URL')
client = OpenAI(
api_key=DATABRICKS_TOKEN,
base_url=DATABRICKS_BASE_URL
)
response = client.responses.create(
model="databricks-gpt-5",
input=[
{"role": "user", "content": "What are the best Italian restaurants in San Francisco?"}
],
tools=[{"type": "web_search"}]
)
print(response.output_text)
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"model": "databricks-gpt-5",
"input": [
{"role": "user", "content": "What are the best Italian restaurants in San Francisco?"}
],
"tools": [
{"type": "web_search"}
]
}' \
https://<workspace_host>.databricks.com/ai-gateway/openai/v1/responses
MCP を介した Web 検索
MCP 互換のクライアントとエージェントは、モデルプロバイダーとは独立して Web 検索ツールを呼び出すことができます。MCP を使用して、クライアントまたはエージェントを Web 検索 MCP サービスまたはサーバーに接続します。
Anthropic のネイティブ Web 検索ツールは、Databricks 基盤モデル APIs では利用できません。Anthropic モデルを使用するエージェントに Web 検索ツールを提供するように MCP を構成します。
Unity Gateway ベータ
system.ai.dbsql、system.ai.sandbox、または system.ai.web_search を使用するには、アカウント管理者がアカウント コンソールの プレビュー ページから Unity Gateway ベータ版を有効にする必要があります。アカウントプレビューの管理を参照してください。
マネージド Web 検索 MCP サービスを使用する
Databricks 提供の MCP サービス system.ai.web_search は、Marketplace のインストールやサードパーティの API キーなしでパブリック Web を検索します。このサービスはモデルに依存せず、モデルプロバイダーに関係なく、MCP 互換のクライアントおよびエージェントと連携します。
Databricksは、サービスで使用されるモデルを管理します。そのバッキングモデルを選択または構成しません。その web_search ツールは自然言語の query のみを受け入れ、引用付きの合成された回答を返します。
要件
ワークスペースが MCP サービスの要件を満たしている必要があります。呼び出し元は、サービスに EXECUTE、USE CATALOG に system、USE SCHEMA に system.ai の権限を持っている必要があります。アカウントユーザーにはdefaultでこれらの権限が付与されます。
クライアントを接続する
サービスURL:
https://<workspace-hostname>/ai-gateway/mcp-services/system.ai.web_search
たとえば、Claude Codeクライアントを接続するには、Unity Gateway CLIをインストールして構成し、サービスを追加してClaude Codeを起動します。
ug mcp add --agents claude --names system.ai.web_search
ug claude
Unity Gateway CLI は、Databricks CLI のログインを通じて認証を行い、トークンを自動的に更新します。その他のクライアントについては、その他の MCP クライアントを参照してください。
エージェントコードについては、PythonエージェントでのMCPツールの使用を参照してください。
You.com MCPサーバーをセットアップする
You.com は、MCP 互換のクライアントおよびエージェント向けのサードパーティ製代替手段です。
- Databricksワークスペースで、 Marketplace > [エージェント] > [MCP サーバー] に移動します。
- You.com を検索して、 「インストール」 をクリックしてください。
- 接続を設定する:
- 接続名 :名前を入力してください(例:
youcom_web_search)。 - ベアラートークン :You.com APIキーを入力してください。
- [ インストール ] をクリックします。
- カタログ > 接続 > [接続] > アクセス許可 で、適切なユーザーまたはグループに USE CONNECTION 権限を付与します。
セットアップが完了すると、MCPサーバーはAI Playground、エージェント、およびその他のMCP互換クライアントのツールとして利用できるようになります。接続に使用するプロキシエンドポイントURLは以下のとおりです。
https://<workspace_host>.databricks.com/api/2.0/mcp/external/<connection_name>
Claude Code で You.com を使用する
Claude Code および Databricks 基盤モデル APIs で You.com を使用するには、You.com MCP サーバーを追加します。
claude mcp add youcom-search \
--transport http \
--url "https://<workspace_host>.databricks.com/api/2.0/mcp/external/<connection_name>" \
--header "Authorization: Bearer <your-databricks-pat>"
サーバーがclaude mcp listで追加されたことを確認してください。
または、サーバーを~/.claude.jsonに直接追加します。
{
"mcpServers": {
"youcom-search": {
"type": "http",
"url": "https://<workspace_host>.databricks.com/api/2.0/mcp/external/<connection_name>",
"headers": {
"Authorization": "Bearer <your-databricks-pat>"
}
}
}
}
対応モデル
MCP Web検索には、MCPツールを呼び出すことができるクライアントまたはエージェントが必要です。特定のモデルプロバイダーに限定されません。エージェント統合については、PythonエージェントでのMCPツールの使用を参照してください。
以下のモデル要件は、Gemini および OpenAI APIs を介したネイティブ Web 検索にのみ適用されます。ネイティブ Web 検索は、すべての Gemini および OpenAI トークン単位の従量課金基盤モデルでサポートされています。リージョンの可用性については、Databricks 基盤モデル APIs がサポートするモデルの詳細リストを参照してください。
ジェミニモデル
databricks-gemini-3-1-prodatabricks-gemini-3-1-flash-litedatabricks-gemini-3-flash
OpenAIモデル
databricks-gpt-5-5-prodatabricks-gpt-5-5databricks-gpt-5-4databricks-gpt-5-4-minidatabricks-gpt-5-4-nanodatabricks-gpt-5-3-codexdatabricks-gpt-5-2databricks-gpt-5-1databricks-gpt-5databricks-gpt-5-minidatabricks-gpt-5-nano
データのプライバシーと保持
Databricks 基盤モデル APIs を通じてウェブ検索を有効にすると、検索は Databricks がホストする基盤モデルの Endpoint 上で実行されます。検索クエリーと結果は、アプリケーションがどのモデルを呼び出すかに関係なく、ホストされているモデルによって処理されます。Model Serving に適用されるものと同じデータ保護および保持条件が、これらのリクエストにも適用されます:
- Databricks は、モデルのトレーニングに Model Serving に送信された入力や、そこからの出力を使用することはありません。Model Serving のデータ保護を参照してください。
- 不正使用検出のための一時ストレージは、ワークスペースと同じリージョンに保持され、期間が制限されています。データ保持を参照してください。
モデルはプロンプトから検索クエリーを作成し、外部の検索プロバイダーに送信して結果を取得します。Web検索に到達するプロンプトの内容は、Databricksから検索プロバイダーへ送信されるデータとして扱い、アプリケーションが送信する内容を適切に制限してください。
制限事項
-
Web 検索クエリは HIPPA に準拠していない外部検索サービスに送信されるため、HIPPA/BAA コンプライアンスが有効になっているワークスペースでは Web 検索を利用できません。
-
ウェブ検索結果は、モデルが検索クエリを作成し、結果を統合する能力に依存する。回答の質は異なる場合があります。
-
Gemini および OpenAI APIs を介したネイティブ Web 検索は、トークン単位の従量課金基盤モデル Endpoint でのみ利用できます。この制限は、MCP を介して Web 検索ツールを呼び出すモデルには適用されません。
-
組み込みの
system.ai.web_searchMCP サービスは、サポートされている US リージョン、またはクロスジオ処理を許可するワークスペースで使用できます。可用性と制限事項については、Databricks 提供の MCP サービスを参照してください。 -
ワークスペースのネットワーク制御によってインターネットアクセスが無効になっている場合、組み込みの MCP サービスは利用できません。
-
OpenAI モデルのネイティブ Web 検索は、Responses API を通じてのみ使用できます。Chat Completions API は、OpenAI モデルのネイティブ Web 検索をサポートしていません。
-
クロスリージョン処理が無効になっている場合、Gemini モデルのネイティブ Web 検索は利用できません。Gemini は geo 内検索処理をサポートしていないため、データ所在地が適用されているワークスペースは対象外となります。
-
ワークスペースが対象のジオ (南北アメリカまたはヨーロッパ) 内にない限り、クロスリージョン処理が無効な場合、OpenAI モデルのネイティブ Web 検索は使用できません。OpenAI は、これらのリージョンでのジオ内検索処理をサポートしています。