Important
この記事で説明する OpenAI Responses API は、トークン基盤モデルと外部モデルごとの OpenAI Pay のネイティブ パススルーであり、OpenAI 応答パラメーターとツールの完全なセットをサポートします。 Anthropic Claude、Google Gemini、Databricks でホストされるオープン モデル全体の統合応答 API については、「Open Responses API を使用してモデルにクエリを実行する」を参照してください。 Chat Completions API は、すべてのプロバイダーでも使用できます。
OpenAI Responses API は、カスタム ツールやマルチステップ ワークフローなど、OpenAI モデルの追加機能を提供するチャット補完 API の代替手段です。
Requirements
- 要件を参照してください。
- 選択したクエリ クライアント オプションに基づいて、適切なパッケージをクラスターにインストールします。
クエリのサンプル
このセクションの例では、OpenAI Responses API を使用して Foundation Model API のトークンごとの支払いエンドポイントに対してクエリを実行する方法を示します。
Python
OpenAI Responses API を使用するには、 model 入力としてエンドポイント名を提供するモデルを指定します。 次の例ではAzure Databricks API トークンと openai がコンピューティングにインストールされていることを前提としています。 OpenAI クライアントをAzure Databricksに接続するには、Azure Databricks ワークスペース インスタンスも必要です。
import os
import openai
from openai import OpenAI
client = OpenAI(
api_key="dapi-your-databricks-token",
base_url="https://example.staging.cloud.databricks.com/serving-endpoints"
)
response = client.responses.create(
model="databricks-gpt-5",
input=[
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is a mixture of experts model?",
}
],
max_output_tokens=256
)
REST API
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"model": "databricks-gpt-5",
"input": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is a mixture of experts model?"
}
],
"max_output_tokens": 256
}' \
https://<workspace_host>.databricks.com/serving-endpoints/responses
カスタム ツール
カスタム ツールを使用すると、モデルは JSON 形式の関数引数ではなく任意の文字列出力を返すことができます。 これは、コードの生成、パッチの適用、または構造化された JSON が不要なその他のユース ケースに役立ちます。
注
カスタム ツールは、Responses API を介して GPT-5 シリーズ モデル (databricks-gpt-5、 databricks-gpt-5-1、 databricks-gpt-5-2、 databricks-gpt-5-4、 databricks-gpt-5-5、 databricks-gpt-5-5-pro) でのみサポートされます。
from databricks_openai import DatabricksOpenAI
client = DatabricksOpenAI()
response = client.responses.create(
model="databricks-gpt-5",
input=[{"role": "user", "content": "Write a Python function to calculate factorial"}],
tools=[
{
"type": "custom",
"name": "code_exec",
"description": "Executes arbitrary Python code. Return only valid Python code."
}
],
max_output_tokens=1024
)
組み込みツール
組み込みのツールを使用すると、モデルはツール バックエンドを自分で実装しなくても、プラットフォームで提供される機能を呼び出すことができます。 これらのツールは構造化された出力を返し、プラットフォームによって完全に管理されます。
from databricks_openai import DatabricksOpenAI
client = DatabricksOpenAI()
response = client.responses.create(
model="databricks-gpt-5",
input=[{
"role": "user",
"content": "Add input validation to the factorial function in main.py."
}],
tools=[
{
"type": "apply_patch"
}
],
max_output_tokens=1024
)
print(response.output_text)
サポートされているモデル
外部モデル
- OpenAI モデル プロバイダー
- Azure OpenAI モデル プロバイダー
サポートされている入力の種類
Azure Databricksの OpenAI GPT モデルは、テキストと画像の入力を受け入れます。 画像の形式とサイズの要件については、 クエリ ビジョン モデル を参照してください。 モデルごとの入力の種類については、 Foundation Model API で使用できる Databricks でホストされる基盤モデルに関するページを参照してください。
制限事項
次の制限は、 トークンごとの支払い基盤モデル にのみ適用されます。 外部モデルでは、すべての Responses API パラメーターとツールがサポートされます。
次のパラメーターはサポートされておらず、指定した場合は 400 エラーが返されます。
-
background— バックグラウンド処理はサポートされていません。 -
store— 保存された応答はサポートされていません。 -
previous_response_id— 保存された応答はサポートされていません。 -
service_tier— サービス レベルの選択は、Azure Databricksによって管理されます。
トークンごとの支払い基盤モデルでは、次の種類のツールがサポートされています。
-
function— 従来の構造化関数呼び出し -
custom— カスタム ユーザー定義ツール -
apply_patch— コード修正操作 -
shell— シェル コマンドの実行 -
image_generation— 画像の生成 -
mcp— モデル コンテキスト プロトコル ツール -
web_search— Web 検索
その他のリソース
- チャット モデルのクエリを実行します。
- function は、Azure Databricks で呼び出します。
- Azure Databricks の構造化出力。