基盤モデルの REST API リファレンス
この記事では、Databricks 基盤モデルAPIとそれらがサポートするモデルの一般的な API 情報を提供します。 基盤モデルAPI既存のプロジェクトの移行を容易にするために、OpenAI の REST API と同様になるように設計されています。 トークン単位の従量課金のエンドポイントとプロビジョニングスループットのエンドポイントはどちらも、同じ REST API リクエスト形式を受け入れます。
エンドポイント
API は、トークン単位の従量課金エンドポイントとプロビジョニング スループット エンドポイントをサポートします。
事前構成されたエンドポイントは、トークン単位の従量課金サポートモデルごとにワークスペースで使用でき、ユーザーは HTTP POST 要求を使用してこれらのエンドポイントと対話できます。 サポートされているモデルについては、 トークン単位の従量課金 を参照してください。
プロビジョニングされたスループットエンドポイントは 、API または Serving UI を使用して作成できます。 これらのエンドポイントは、提供される両方のモデルが同じ API 形式を公開している限り、A/B テストのエンドポイントごとに複数のモデルをサポートします。 例えば、どちらのモデルもチャットモデルです。 POST /api/2.0/serving-endpoints を参照してください。 エンドポイント構成パラメーターの場合。
リクエストとレスポンスはJSONを使用し、正確なJSON構造はエンドポイントのタスクタイプによって異なります。 チャットと完了エンドポイントは、ストリーミング応答をサポートします。
使い方
応答には、要求と応答のトークンの数を報告する usage
サブメッセージが含まれます。 このサブメッセージの形式は、すべてのタスクタイプで同じです。
フィールド | タイプ | 説明 |
---|---|---|
| 整数タイプ | 生成されたトークンの数。 埋め込み応答には含まれません。 |
| 整数タイプ | 入力プロンプトからのトークンの数。 |
| 整数タイプ | トークンの合計数。 |
databricks-meta-llama-3-3-70b-instruct
のようなモデルの場合、ユーザー プロンプトは、モデルに渡される前にプロンプト テンプレートを使用して変換されます。トークン単位の従量課金エンドポイントの場合、システム・プロンプトも追加される場合があります。 prompt_tokens
には、サーバーによって追加されたすべてのテキストが含まれます。
チャットタスク
チャット タスクは、モデルとの複数ターンの会話に最適化されています。 モデル応答は、会話の次の assistant
メッセージを提供します。 エンドポイント パラメーターのクエリについては、 POST /serving-endpoints/{name}/invocations を参照してください。
チャットリクエスト
フィールド | デフォルト | タイプ | 説明 |
---|---|---|---|
| ChatMessage 一覧 | 必須です 。 現在の会話を表すメッセージの一覧。 | |
|
|
| 生成するトークンの最大数。 |
|
| ブール値 | 要求の部分的な結果を許可するために、応答をクライアントにストリームします。 このパラメーターが要求に含まれている場合、応答は Server-sent events 標準を使用して送信されます。 |
|
| [0,2]の浮動小数点数 | サンプリングtemperature。0は決定性で、値が大きくなるほどランダム性が高くなります。 |
|
| フロートイン (0,1) | 主要部サンプリングに使用される確率のしきい値。 |
|
|
| top-kフィルタリングに使用する可能性が最も高いkトークンの数を定義します。出力を決定的にするには、この値を1に設定します。 |
| [] | 文字列 または List[文字列] | モデルは、 |
| 1 | 0 より大きい整数 |
|
|
| 文字列または ToolChoiceObject |
|
|
| モデルが呼び出すことができる | |
|
| モデルが出力する必要がある形式を指定するオブジェクト。 使用できるタイプは、 | |
|
| ブール値 | このパラメーターは、トークンがサンプリングされるログ確率を提供するかどうかを示します。 |
|
| 整数タイプ | このパラメーターは、各サンプリング ステップで対数確率を返す可能性が最も高いトークン候補の数を制御します。 0 から 20 まで指定できます。 このフィールドを使用する場合は、 |
ChatMessage
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 メッセージの作成者の役割。 |
| 文字列またはリスト [ContentItem] | ツール呼び出しを伴わないチャットタスク に必要です 。コンテンツは、文字列または単一のチャットインタラクション内の一連のマルチモーダル要素を含む配列のいずれかです。これらの要素は、モデルによって入力または出力として処理される順序に従います。この配列入力は、外部モデルプロバイダーを通じてのみアクセス可能な独自のモデルで使用するために特別に設計されています。現在、Claude モデルのみがサポートされています。他の外部モデルプロバイダー、オープンソースモデル(Llama)、または Databricksで顧客によってホストされているモデルには、文字列型のコンテンツを使用します。 |
| ToolCall リスト | モデルによって生成された |
| 文字列 |
|
system
ロールは、会話の最初のメッセージとして 1 回だけ使用できます。これは、モデルのデフォルト システム プロンプトをオーバーライドします。
ContentItem
ContentItem
は、 TextContent
、 ReasoningContent
、 DocumentContent
、または ImageContent
TextContent
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。テキストである必要があります。 |
| 文字列 | 必須 のテキスト コンテンツ。 |
| 一覧[出典] | オプションの引用情報。次の表を参照してください。 |
引用フィールドは次のとおりです。
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 |
| 文字列 | ドキュメントから引用されたテキスト。 |
| 整数タイプ | 引用されたドキュメントのインデックス。 |
| 文字列 | 引用されたドキュメントのタイトル。 |
| 整数タイプ | ドキュメント内の引用テキストの開始インデックス。 |
| 整数タイプ | ドキュメント内の引用テキストの終了インデックス。 |
ImageContent
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 |
| 画像URL | OpenAI image_url オブジェクトに相当します。 |
ImageURL フィールドは次のとおりです。
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 画像の URL または base64 でエンコードされた画像データ。 |
| 文字列 | 画像の詳細レベルを指定します。 |
ReasoningContent
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 |
| 一覧[概要] | 推論テキストの内容。サマリーは、 |
TextSummary
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 |
| 文字列 | 応答を生成するときにモデルによって使用される推論の簡単な要約。 |
| 文字列 | データの信頼性を検証するためのオプションの暗号化トークン。 |
EncryptedTextSummary
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 |
| 文字列 | 安全上の理由から人間が読めない暗号化されたテキストコンテンツ。 |
DocumentContent
DocumentContent はリクエスト専用です。
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 |
| 文字列 | ドキュメントのタイトル。 |
| 文字列 | ドキュメントの説明。 |
| ソース | 必須です 。形式や内容など、ドキュメントに関する詳細情報を指定します。 |
| Map[文字列, ブール値] | ドキュメントの引用を有効にするかどうかを示すブールにマップする単一のフィールドが "enabled" のマップ。 |
Source
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 |
| 文字列 | PDFおよびテキストタイプに 必要です 。 - PDFの場合は |
| 文字列 | PDFとテキストに 必要です 。ドキュメントソースを含むデータ。 |
| 文字列 or List[TextContent] または List[ImageContent] |
|
| 文字列 | URLPDFSource タイプに 必要です 。PDF ドキュメントの URL。 |
ToolCall
モデルによるツールコールアクションの提案。 「Databricks での関数呼び出し」を参照してください。
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 このツール・コールの提案の一意の識別子。 |
| 文字列 | 必須です 。 |
| 必須です 。 モデルによって提案された関数呼び出し。 |
FunctionCallCompletion
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須。 モデルが推奨する関数の名前。 |
| オブジェクト | 必須。 シリアル化された JSON ディクショナリとしての関数の引数。 |
ToolChoiceObject
「Databricks での関数呼び出し」を参照してください。
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 ツールの種類。 現在、 |
| オブジェクト | 必須です 。 フォーム |
ToolObject
「Databricks での関数呼び出し」を参照してください。
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 ツールの種類。 現在、 |
| 必須です 。 ツールに関連付けられている関数定義。 |
FunctionObject
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 呼び出される関数の名前。 |
| オブジェクト | 必須です 。 関数の詳細な説明。 モデルは、この説明を使用して、プロンプトに対する関数の関連性を理解し、より高い精度でツール呼び出しを生成します。 |
| オブジェクト | 関数が受け入れるパラメーター (有効な JSON スキーマ オブジェクトとして記述されます)。 ツールが呼び出された場合、ツール呼び出しは指定された JSON スキーマに適合します。 パラメーターを省略すると、パラメーターのない関数が定義されます。 |
| ブール値 | 関数呼び出しの生成時に厳密なスキーマ準拠を有効にするかどうか。 |
ResponseFormatObject
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 定義するレスポンス・フォーマットのタイプ。 非構造化テキストの場合は |
| 必須です 。 |
JsonSchemaObject
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 必須です 。 応答形式の名前。 |
| 文字列 | 応答形式での応答方法を決定するためにモデルによって使用される、応答形式の目的の説明。 |
| オブジェクト | 必須です 。 レスポンス形式のスキーマ (JSON スキーマオブジェクトとして記述)。 |
| ブール値 | 出力の生成時に厳密なスキーマ準拠を有効にするかどうか。 |
チャット応答
非ストリーミング要求の場合、応答は 1 つのチャット完了オブジェクトです。 ストリーミング要求の場合、応答は text/event-stream
であり、各イベントは完了チャンク オブジェクトです。 完了オブジェクトとチャンク オブジェクトの最上位構造はほとんど同じで、 choices
つだけ型が異なります。
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | チャット完了の一意の識別子。 |
| List[ChatCompletionChoice] または List[ChatCompletionChunk] (ストリーミング) | チャット完了テキストのリスト。 |
| 文字列 | オブジェクトの種類。 非ストリーミングの場合は |
| 整数タイプ | チャットの完了が生成された時間 (秒単位)。 |
| 文字列 | 応答の生成に使用されたモデルのバージョン。 |
| トークン使用状況メタデータ。 ストリーミング応答には存在しない可能性があります。 |
ChatCompletionChoice
フィールド | タイプ | 説明 |
---|---|---|
| 整数タイプ | 生成された選択肢のリスト内の選択肢のインデックス。 |
| モデルによって返されたチャット完了メッセージ。 役割は | |
| 文字列 | モデルがトークンの生成を停止した理由。 |
| 文字列 | 外部モデル プロバイダーの独自のモデルを使用する場合、プロバイダーの APIs 応答に追加のメタデータが含まれる場合があります。 Databricks はこれらの応答をフィルター処理し、プロバイダーの元のフィールドのサブセットのみを返します。 |
ChatCompletionChunk
フィールド | タイプ | 説明 |
---|---|---|
| 整数タイプ | 生成された選択肢のリスト内の選択肢のインデックス。 |
| モデルから生成されたストリーム応答のチャット完了メッセージの一部。 最初のチャンクのみが | |
| 文字列 | モデルがトークンの生成を停止した理由。 最後のチャンクにのみこれが入力されます。 |
完了タスク
テキスト補完タスクは、1 つのプロンプトに対する応答を生成するためのタスクです。 Chatとは異なり、このタスクはバッチ入力をサポートしており、1つのリクエストで複数の独立したプロンプトを送信できます。 エンドポイント パラメーターのクエリについては、 POST /serving-endpoints/{name}/invocations を参照してください。
完了リクエスト
フィールド | デフォルト | タイプ | 説明 |
---|---|---|---|
| 文字列 または List[文字列] | 必須です 。 モデルのプロンプト。 | |
|
|
| 生成するトークンの最大数。 |
|
| ブール値 | 要求の部分的な結果を許可するために、応答をクライアントにストリームします。 このパラメーターが要求に含まれている場合、応答は Server-sent events 標準を使用して送信されます。 |
|
| [0,2]の浮動小数点数 | サンプリングtemperature。0は決定性で、値が大きくなるほどランダム性が高くなります。 |
|
| フロートイン (0,1) | 主要部サンプリングに使用される確率のしきい値。 |
|
|
| top-kフィルタリングに使用する可能性が最も高いkトークンの数を定義します。出力を決定的にするには、この値を1に設定します。 |
|
|
| タイムアウトおよびコンテキスト長超過エラーの場合。 |
| 1 | 0 より大きい整数 |
|
| [] | 文字列 または List[文字列] | モデルは、 |
|
| 文字列 | すべての入力候補の末尾に追加される文字列。 |
|
| ブール値 | プロンプトと完了を返します。 |
|
| ブール値 |
|
完了レスポンス
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | テキスト補完の一意の識別子。 |
| テキスト入力候補のリスト。 渡されたプロンプトごとに、 | |
| 文字列 | オブジェクトの種類。 等しい |
| 整数タイプ | 完了が生成された時間 (秒単位)。 |
| トークン使用状況メタデータ。 |
CompletionChoice
フィールド | タイプ | 説明 |
---|---|---|
| 整数タイプ | 要求のプロンプトのインデックス。 |
| 文字列 | 生成された入力候補。 |
| 文字列 | モデルがトークンの生成を停止した理由。 |
埋め込みタスク
埋め込みタスクは、入力文字列を埋め込みベクトルにマップします。 各要求で多くの入力をまとめてバッチ処理できます。 エンドポイント パラメーターのクエリについては、 POST /serving-endpoints/{name}/invocations を参照してください。
埋め込みリクエスト
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 または List[文字列] | 必須です 。 埋め込む入力テキスト。 文字列または文字列のリストを指定できます。 |
| 文字列 | 埋め込みモデルに渡す省略可能な命令。 |
手順はオプションであり、モデルに大きく依存します。 たとえば、BGEの著者は、チャンクのインデックス作成時に命令を使わず、検索クエリには命令 "Represent this sentence for searching relevant passages:"
を使用することを推奨しています。 Instructor-XLなどの他のモデルは、幅広い命令文字列をサポートしています。
埋め込み応答
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | 埋め込みの一意の識別子。 |
| 文字列 | オブジェクトの種類。 |
| 文字列 | 埋め込みの作成に使用された埋め込みモデルの名前。 |
| 埋め込みオブジェクト。 | |
| トークン使用状況メタデータ。 |
EmbeddingObject
フィールド | タイプ | 説明 |
---|---|---|
| 文字列 | オブジェクトの種類。 |
| 整数タイプ | モデルによって生成された埋め込みの一覧にある埋め込みのインデックス。 |
| 一覧[フロート] | 埋め込みベクトル。 各モデルは固定サイズのベクトル (BGE-Large の場合は 1024) を返します |