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

Mosaic AI Model Serving の外部モデル

重要

この記事のコード例では、 パブリック プレビューである MLflow Deployments CRUD API の使用方法を示します。

この記事では、Mosaic AI Model Serving の外部モデルについて、サポートされているモデルプロバイダーと制限を含めて説明します。

外部モデルとは

重要

外部モデルを提供するモデルサービングエンドポイントで Mosaic AI Gateway を設定できるようになりました。 AI Gateway は、ガバナンス、モニタリング、および本番運用の準備をこれらのモデルサービングエンドポイントにもたらします。 Mosaic AI Gatewayのイントロダクションを参照してください。

外部モデルは、Databricks の外部でホストされているサードパーティ モデルです。 モデルサービングがサポートする外部モデルを使用すると、組織内のOpenAIやAnthropic などのさまざまな大規模言語モデル(LLM)プロバイダーの使用と管理を効率化できます。また、Mosaic AI Model Serving をプロバイダーとして使用して、これらのエンドポイントにレート制限を提供するカスタムモデルを提供することもできます。 このサポートの一環として、モデルサービングは、特定の LLM関連のリクエストを処理するための統合エンドポイントを提供することで、これらのサービスとの対話を簡素化する高レベルのインターフェイスを提供します。

さらに、Databricks の外部モデルのサポートにより、資格情報の一元管理が可能になります。 APIキーを1つの安全な場所に保管することで、組織はシステム全体で機密性の高いAPIキーの露出を最小限に抑え、セキュリティ体制を強化できます。 また、これらのキーがコード内で公開されたり、エンド ユーザーにキーを安全に管理するように要求したりするのを防ぐのにも役立ちます。

外部モデル エンドポイントの作成に関する詳細なガイダンスと、MLflow Deployments SDK を使用してそれらのエンドポイントによって提供されるサポートされているモデルのクエリについては、「 チュートリアル: OpenAI モデルに対して外部モデル エンドポイントを作成する 」を参照してください。 Serving UI と REST API の使用方法については、次のガイドを参照してください。

必要条件

モデルプロバイダー

モデルサービングの外部モデルは、さまざまなモデルプロバイダをサポートするように設計されています。 プロバイダーは、OpenAI、Anthropic などの機械学習モデルのソースを表します。 各プロバイダーには、外部モデルエンドポイント設定external_modelフィールド内にカプセル化された特定の特性と設定があります。

次のプロバイダーがサポートされています。

  • openai : OpenAI によって提供されるモデルと、AAD を使用した Azure OpenAI の Azure インテグレーションによって提供されるモデル。
  • anthropic : Anthropicが提供するモデル用。
  • cohere : Cohereが提供するモデル用。
  • Amazon-bedrock :Amazon Bedrockが提供するモデルの場合。
  • google-cloud-vertex-AI : Google Cloud Vertex AIが提供するモデル用です。
  • databricks-モデルサービング : 互換性のあるスキーマを持つ Mosaic AI Model Serving エンドポイント用。 エンドポイントの設定を参照してください。
  • custom : OpenAI API と互換性があるが、Databricks で直接サポートされていないカスタム プロキシの背後にある代替プロバイダーまたはモデル用。

ここに記載されていないプロバイダーのサポートをリクエストするには、 カスタム プロバイダー オプションを使用するか、 Databricks アカウント チームにお問い合わせください。

サポートされているモデル

選択したモデルは、API 呼び出しから取得する応答の結果に直接影響します。 したがって、ユースケースの要件に合ったモデルを選択してください。 たとえば、会話型応答を生成するために、チャットモデルを選択できます。 逆に、テキストの埋め込みを生成する場合は、埋め込みモデルを選択できます。

サポートされているモデルを参照してください。

Mosaic AI Model Servingエンドポイントで提供されるモデルを使用する

プロバイダーとしての Mosaic AI Model Serving エンドポイントは、llm/v1/completionsllm/v1/chat、および llm/v1/embeddings エンドポイント タイプでサポートされています。これらのエンドポイントは、必須としてマークされた標準クエリ パラメーターを受け入れる必要がありますが、 Mosaic AI Model Serving エンドポイントがそれらをサポートしているかどうかによっては、他のパラメーターが無視される場合があります。

標準クエリ パラメーターについては、 リファレンスの POST /serving-endpoints/{name}/invocations を参照してください。API

これらのエンドポイントは、次の OpenAI 形式で応答を生成する必要があります。

完了タスクの場合:

Python
{
"id": "123", # Not Required
"model": "test_databricks_model",
"choices": [
{
"text": "Hello World!",
"index": 0,
"logprobs": null, # Not Required
"finish_reason": "length" # Not Required
}
],
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}

チャットタスクの場合:

Python
{
"id": "123", # Not Required
"model": "test_chat_model",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "\n\nHello there, how may I assist you today?",
},
"finish_reason": "stop"
},
{
"index": 1,
"message": {
"role": "human",
"content": "\n\nWhat is the weather in San Francisco?",
},
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}

エンべディングタスクの場合:

Python
{
"data": [
{
"embedding": [
0.0023064255,
-0.009327292,
.... # (1536 floats total for ada-002)
-0.0028842222,
],
"index": 0
},
{
"embedding": [
0.0023064255,
-0.009327292,
.... #(1536 floats total for ada-002)
-0.0028842222,
],
"index": 0
}
],
"model": "test_embedding_model",
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}

エンドポイントの構成

外部モデルを提供し、クエリを実行するには、サービス エンドポイントを構成する必要があります。 外部モデルサービングエンドポイントの作成を参照してください。

外部モデルサービング エンドポイントの場合、エンドポイント設定の served_entities セクションに external_model フィールドとそのパラメーターを含める必要があります。サービス エンドポイントで 複数の外部モデルを設定する 場合は、各外部モデルのトラフィック ルーティング率を定義する traffic_config を指定する必要があります。

external_model フィールドは、このエンドポイントが要求を転送するモデルを定義します。モデルを指定するときは、要求しているモデルがプロバイダーでサポートされていることが重要です。 たとえば、プロバイダーとしての openaitext-embedding-ada-002のようなモデルをサポートしますが、他のプロバイダーはサポートしない場合があります。 モデルがプロバイダーによってサポートされていない場合、Databricks はそのモデルに要求をルーティングしようとすると HTTP 4xx エラーを返します。

次の表は、 external_model フィールドのパラメーターをまとめたものです。 POST /api/2.0/serving-endpointsをエンドポイント構成パラメーターのために参照することができます。

パラメーター

説明

name

使用するモデルの名前。たとえば、OpenAI の GPT-3.5-Turbo モデルの場合は gpt-3.5-turbo です。これは、対応するキー ( "model") を使用して要求本文の一部として渡されます。

provider

このモデルのプロバイダーの名前を指定します。この文字列値は、サポートされている外部モデル プロバイダーに対応している必要があります。たとえば、OpenAI の GPT-3.5 モデルの場合は openai です。

task

このタスクは、必要な言語モデルの対話のタイプに対応します。 サポートされているタスクは、"llm/v1/completions"、"llm/v1/chat"、"llm/v1/embeddings" です。

<provider>_config

モデルに必要な追加の構成の詳細が含まれます。 これには、API ベース URL と API キーの指定が含まれます。 エンドポイントのプロバイダーの設定を参照してください。 custom プロバイダーを使用している場合は、このパラメーターを custom_provider_configとして指定します。

以下は、 create_endpoint() API を使用して外部モデルエンドポイントを作成する例です。 この例では、補完エンドポイントに送信された要求は、anthropicによって提供されるclaude-2モデルに転送されます。

Python
import mlflow.deployments

client = mlflow.deployments.get_deploy_client("databricks")

client.create_endpoint(
name="anthropic-completions-endpoint",
config={
"served_entities": [
{
"name": "test",
"external_model": {
"name": "claude-2",
"provider": "anthropic",
"task": "llm/v1/completions",
"anthropic_config": {
"anthropic_api_key": "{{secrets/my_anthropic_secret_scope/anthropic_api_key}}"
}
}
}
]
}
)

エンドポイントのプロバイダーを構成する

エンドポイントを作成するときは、指定したモデル プロバイダーに必要な構成を指定する必要があります。 次のセクションでは、各モデル プロバイダーで使用可能なエンドポイント構成パラメーターをまとめます。

注記

Databricks は、各モデル プロバイダーに指定された資格情報を暗号化し、安全に保存します。 これらの資格情報は、関連付けられているエンドポイントが削除されると自動的に削除されます。

OpenAI

Configuration パラメーター

説明

必須

デフォルト

openai_api_key

OpenAIサービスを使用した OpenAI API キーのDatabricksシークレットキーのリファレンス。API キーを直接貼り付ける場合は、 openai_api_key_plaintextを参照してください。

API キーは、 openai_api_key または openai_api_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

openai_api_key_plaintext

プレーンテキスト文字列として提供される OpenAI サービスを使用する OpenAI API キー。 Databricks シークレットを使用してキーを参照する場合は、「 openai_api_key」を参照してください。

API キーは、次のいずれかのフィールドを使用して指定する必要があります: openai_api_key または openai_api_key_plaintext を指定する必要があります。

openai_api_type

使用する OpenAI API のタイプを指定するオプションのフィールド。

いいえ

openai

openai_api_base

OpenAI API のベース URL。

いいえ

https://api.openai.com/v1

openai_api_version

OpenAI API のバージョンを指定するオプションのフィールド。

いいえ

openai_organization

OpenAI の組織を指定するオプションのフィールド。

いいえ

Cohere

Configuration パラメーター

説明

必須

デフォルト

cohere_api_key

キーのDatabricks シークレットキーリファレンス。CohereAPIAPI キーを直接貼り付ける場合は、 cohere_api_key_plaintextを参照してください。

API キーは、 cohere_api_key または cohere_api_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

cohere_api_key_plaintext

プレーンテキスト文字列として提供される Cohere API キー。 Databricks シークレットを使用してキーを参照する場合は、「 cohere_api_key」を参照してください。

API キーは、 cohere_api_key または cohere_api_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

cohere_api_base

CohereサービスのベースURL。

いいえ

Anthropic

Configuration パラメーター

説明

必須

デフォルト

anthropic_api_key

Anthropic APIキーのDatabricks シークレットキー リファレンス。API キーを直接貼り付ける場合は、 anthropic_api_key_plaintextを参照してください。

API キーは、 anthropic_api_key または anthropic_api_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

anthropic_api_key_plaintext

プレーンテキスト文字列として提供される Anthropic API キー。 Databricks シークレットを使用してキーを参照する場合は、「 anthropic_api_key」を参照してください。

API キーは、 anthropic_api_key または anthropic_api_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

Azure OpenAI

Azure OpenAI には、直接の OpenAI サービスと比較して、明確な機能があります。 概要については、 比較ドキュメントを参照してください。

Configuration パラメーター

説明

必須

デフォルト

openai_api_key

Azureサービスを使用した OpenAI API キーのDatabricksシークレットキー リファレンス。API キーを直接貼り付ける場合は、 openai_api_key_plaintextを参照してください。

API キーは、 openai_api_key または openai_api_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

openai_api_key_plaintext

プレーンテキスト文字列として提供される Azure サービスを使用する OpenAI API キー。 Databricks シークレットを使用してキーを参照する場合は、「 openai_api_key」を参照してください。

API キーは、 openai_api_key または openai_api_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

openai_api_type

アクセス トークンの検証には azure を使用します。

あり

openai_api_base

Azure によって提供される Azure OpenAI API サービスのベース URL。

あり

openai_api_version

日付で指定された、使用する Azure OpenAI サービスのバージョン。

あり

openai_deployment_name

Azure OpenAI サービスのデプロイ リソースの名前。

あり

openai_organization

OpenAI の組織を指定するオプションのフィールド。

いいえ

Microsoft Entra ID で Azure OpenAI を使用している場合は、エンドポイント構成で次のパラメーターを使用します。 Databricks は、 Microsoft Entra ID トークンのデフォルト スコープとして https://cognitiveservices.azure.com/ を渡します。

Configuration パラメーター

説明

必須

デフォルト

microsoft_entra_tenant_id

Microsoft Entra ID 認証のテナント ID。

あり

microsoft_entra_client_id

Microsoft Entra ID 認証のクライアント ID。

あり

microsoft_entra_client_secret

Microsoft Entra ID 認証に使用されるクライアント シークレットのDatabricks シークレットキー リファレンス。クライアントシークレットを直接貼り付ける場合は、 microsoft_entra_client_secret_plaintextを参照してください。

API キーは、 microsoft_entra_client_secret または microsoft_entra_client_secret_plaintextのいずれかのフィールドを使用して指定する必要があります。

microsoft_entra_client_secret_plaintext

Microsoft Entra ID 認証に使用されるクライアント シークレットは、プレーンテキスト文字列として提供されます。 Databricks シークレットを使用してキーを参照する場合は、「 microsoft_entra_client_secret」を参照してください。

API キーは、 microsoft_entra_client_secret または microsoft_entra_client_secret_plaintextのいずれかのフィールドを使用して指定する必要があります。

openai_api_type

Microsoft Entra ID を使用した認証には azuread を使用します。

あり

openai_api_base

Azure によって提供される Azure OpenAI API サービスのベース URL。

あり

openai_api_version

日付で指定された、使用する Azure OpenAI サービスのバージョン。

あり

openai_deployment_name

Azure OpenAI サービスのデプロイ リソースの名前。

あり

openai_organization

OpenAI の組織を指定するオプションのフィールド。

いいえ

次の例は、Azure OpenAI を使用してエンドポイントを作成する方法を示しています。

Python
client.create_endpoint(
name="openai-chat-endpoint",
config={
"served_entities": [{
"external_model": {
"name": "gpt-3.5-turbo",
"provider": "openai",
"task": "llm/v1/chat",
"openai_config": {
"openai_api_type": "azure",
"openai_api_key": "{{secrets/my_openai_secret_scope/openai_api_key}}",
"openai_api_base": "https://my-azure-openai-endpoint.openai.azure.com",
"openai_deployment_name": "my-gpt-35-turbo-deployment",
"openai_api_version": "2023-05-15"
}
}
}]
}
)

Google Cloud Vertex AI

Configuration パラメーター

説明

必須

デフォルト

private_key

Google CloudのVertex AI サービスにアクセスできるサービス アカウントの秘密鍵については、Databricks シークレットキーのリファレンスをご覧ください。サービス アカウント キーの管理に関するベスト プラクティスを参照してください。API キーを直接貼り付ける場合は、 private_key_plaintextを参照してください。

API キーは、 private_key または private_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

private_key_plaintext

プレーンテキストのシークレットとして提供される Google Cloud Vertex AI サービスにアクセスできるサービス アカウントの秘密鍵。 「サービス アカウント キーの管理に関するベスト プラクティス」を参照してください。Databricks シークレットを使用してキーを参照する場合は、「 private_key」を参照してください。

API キーは、 private_key または private_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

region

これは Google Cloud Vertex AI サービスのリージョンです。 詳細については、 サポートされているリージョン を参照してください。 一部のモデルは、特定の地域でのみ利用できます。

あり

project_id

これは、サービス アカウントが関連付けられている Google Cloud プロジェクト ID です。

あり

Amazon Bedrock

Amazon Bedrock を外部モデル プロバイダーとして使用するには、顧客は、指定したAWSリージョンで Bedrock が有効になっていること、および指定した AWS キー ペアに Bedrock サービスと対話するための適切なアクセス許可があることを確認する必要があります。詳細については、「 AWS ID およびアクセス管理」を参照してください。

Amazon Bedrock は複数の認証メカニズムをサポートしています。次のいずれか 1 つを 指定する必要があります。

  • AWS IAMロールを参照する Unity Catalogサービス認証情報
  • AWS インスタンスプロファイル
  • AWS アクセスキー (Databricks Secrets またはプレーンテキストを使用)

アクセス キーを使用する場合は、アクセス キー ID とシークレット アクセス キーの 両方 が必要です。

構成の問題

説明

必須

デフォルト

aws_region

使用する AWS リージョン。このリージョンでは Amazon Bedrock を有効にする必要があります。

あり

uc_service_credential_name

サービス対象のエンティティが AWS リソースにアクセスするために使用する Unity Catalog サービス認証情報への参照。認証情報はAWS IAMロールを参照する必要があります。

いいえ

instance_profile_arn

Amazonリソース サービス対象エンティティがAWSリソースにアクセスするために使用するインスタンスの名前 ( ARN )。

いいえ

aws_access_key_id

Databricks シークレット参照を使用して提供される、サービス対象のエンティティが AWS リソースにアクセスするために使用する AWS アクセスキー ID。

いいえ

aws_access_key_id_plaintext

サービス対象のエンティティが AWS リソースにアクセスするために使用する AWS アクセスキー ID。プレーンテキスト文字列として提供されます。

いいえ

aws_secret_access_key

サービス対象のエンティティが AWS リソースにアクセスするために使用する AWS シークレットアクセスキー。アクセスキー ID とペアになっており、Databricks シークレット参照を使用して提供されます。

いいえ

aws_secret_access_key_plaintext

サービス対象のエンティティが AWS リソースにアクセスするために使用する AWS シークレットアクセスキー。アクセスキー ID とペアになっており、プレーンテキスト文字列として提供されます。

いいえ

bedrock_provider

Amazon Bedrock の基盤となるプロバイダー。サポートされている値 (大文字と小文字は区別されません): Anthropic、Cohere、AI21Labs、Amazon。

あり

次の例は、インスタンスプロファイルを使用して Amazon Bedrock でエンドポイントを作成する方法を示しています。アクセス キーを使用する場合は、 aws_access_key_idaws_secret_access_keyを使用します。サービス資格情報を使用する場合は、 uc_service_credential_nameを使用します。

Python
client.create_endpoint(
name="bedrock-anthropic-completions-endpoint",
config={
"served_entities": [
{
"external_model": {
"name": "claude-v2",
"provider": "amazon-bedrock",
"task": "llm/v1/completions",
"amazon_bedrock_config": {
"aws_region": "<YOUR_AWS_REGION>",
"uc_service_credential_name": "<YOUR_UC_SERVICE_CREDENTIAL_NAME>", ## Remove if using other authentication methods
# "instance_profile_arn": "<YOUR_AWS_INSTANCE_PROFILE_ARN>",
# "aws_access_key_id": "{{secrets/my_amazon_bedrock_secret_scope/aws_access_key_id}}",
# "aws_secret_access_key": "{{secrets/my_amazon_bedrock_secret_scope/aws_secret_access_key}}",
"bedrock_provider": "anthropic",
},
}
}
]
},
)
注記

AI Gateway を介して Amazon Bedrock モデルで既存の Amazon Bedrock ガードレールを使用するには、 X-Amzn-Bedrock-GuardrailIdentifierヘッダーを任意のガードレール ARN に設定し、必要に応じてX-Amzn-Bedrock-GuardrailVersionを設定します。これらのヘッダーは Amazon Bedrock に転送されます。

AWS のアクセス許可に問題がある場合、Databricks では Amazon Bedrock API を使用して資格情報を直接確認することをお勧めします。

AI21 Labs

Configuration パラメーター

説明

必須

デフォルト

ai21labs_api_key

キーのDatabricks シークレットキーAI21 LabsAPI リファレンス。API キーを直接貼り付ける場合は、 ai21labs_api_key_plaintextを参照してください。

API キーは、 ai21labs_api_key または ai21labs_api_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

ai21labs_api_key_plaintext

プレーンテキスト文字列として提供される AI21 Labs API キー。 Databricks シークレットを使用してキーを参照する場合は、「 ai21labs_api_key」を参照してください。

API キーは、 ai21labs_api_key または ai21labs_api_key_plaintextのいずれかのフィールドを使用して指定する必要があります。

カスタムプロバイダー

重要

カスタム プロバイダー モデルを使用するには、OpenAI API と互換性がある必要があります。

Configuration パラメーター

説明

必須

デフォルト

custom_provider_url

カスタム プロバイダーのモデルが存在する場所の URL。URL は特定の API エンドポイントを指す必要があります。たとえば、 https://api.provider.com/chat/completions.

あり

bearer_token_auth

カスタムプロバイダーがベアラートークン認証を利用する場合は、必須フィールドを指定します。

認証方式は、 bearer_token_auth または api_key_authのいずれかのフィールドを使用して指定する必要があります。

token

ベアラー認証用のトークンの Databricks シークレットキー リファレンス。 このパラメーターは、 bearer_token_authの下にネストする必要があります。 API キーを直接貼り付ける場合は、 token_plaintextを参照してください。

ベアラー認証を使用する場合は、 token または token_plaintextのいずれかのフィールドを使用して API キーを指定する必要があります。

token_plaintext

プレーンテキスト文字列として提供されるベアラー認証のトークン。このパラメーターは、 bearer_token_authの下にネストする必要があります。 Databricks シークレットを使用してキーを参照する場合は、「 token」を参照してください。

ベアラー認証を使用する場合は、 token または token_plaintextのいずれかのフィールドを使用して API キーを指定する必要があります。

api_key_auth

カスタムプロバイダーがAPIキー認証を利用する場合は、必須フィールドを指定します。

認証方式は、 bearer_token_auth または api_key_authのいずれかのフィールドを使用して指定する必要があります。

key

API キー認証のキー。このパラメーターは、 api_key_auth

はい (API キー認証を使用する場合)。

value

Databricks シークレットキー リファレンス (API キー認証の値)。API キーを直接貼り付ける場合は、 value_plaintextを参照してください。

API キー認証を使用する場合は、 value または value_plaintextのいずれかのフィールドを使用して API キーを指定する必要があります。

value_plaintext

プレーンテキスト文字列として提供される API キー認証の値。Databricks シークレットを使用してキーを参照する場合は、「 value」を参照してください。

API キー認証を使用する場合は、 value または value_plaintextのいずれかのフィールドを使用して API キーを指定する必要があります。

次の例は、 ベアラー認証 を使用してカスタムプロバイダーでエンドポイントを作成する方法を示しています。

Python
client.create_endpoint(
name="custom-provider-completions-endpoint",
config={
"served_entities": [
{
"external_model": {
"name": "custom-provider-model",
"provider": "custom",
"task": "llm/v1/chat",
"custom_provider_config": {
"custom_provider_url": "https://api.provider.com/chat/completions",
"bearer_token_auth": {
"token": "{{secrets/my_custom_provider_secret_scope/custom_provider_token}}"
}
}
}
}
]
},
)

次の例は、 API キー認証 を使用してカスタム プロバイダーでエンドポイントを作成する方法を示しています。

Python
client.create_endpoint(
name="custom-provider-completions-endpoint",
config={
"served_entities": [
{
"external_model": {
"name": "custom-provider-model",
"provider": "custom",
"task": "llm/v1/chat",
"custom_provider_config": {
"custom_provider_url": "https://my-custom-provider.com",
"api_key_auth": {
"key": "X-API-KEY",
"value": "{{secrets/my_custom_provider_secret_scope/custom_provider_api_key}}"
}
}
}
}
]
},
)

エンドポイントでの AI Gateway の構成

また、エンドポイントを設定して、レート制限、使用状況の追跡、ガードレールなどの Mosaic AI Gateway 機能を有効にすることもできます。

モデルサービングエンドポイントでの AI Gateway の設定を参照してください。

外部モデルエンドポイントのクエリ

外部モデルエンドポイントを作成すると、ユーザーからトラフィックを受信する準備が整います。

スコアリング要求は、OpenAI クライアント、REST API、または MLflow デプロイ SDK を使用してエンドポイントに送信できます。

次の例では、OpenAI クライアントを使用して Anthropic によってホストされている claude-2 入力候補モデルに対してクエリを実行します。 OpenAI クライアントを使用するには、クエリを実行するモデルをホストするモデルサービングエンドポイントの名前を model フィールドに入力します。

この例では、Anthropic モデル プロバイダーから外部モデルにアクセスするために構成された、以前に作成したエンドポイント anthropic-completions-endpointを使用します。 外部モデルのエンドポイントを作成する方法を参照してください。

クエリ可能なその他のモデルとそのプロバイダーについては、 サポートされているモデル を参照してください。

Python
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"
)

completion = client.completions.create(
model="anthropic-completions-endpoint",
prompt="what is databricks",
temperature=1.0
)
print(completion)

予想される出力応答形式:

Python
{
"id": "123", # Not Required
"model": "anthropic-completions-endpoint",
"choices": [
{
"text": "Hello World!",
"index": 0,
"logprobs": null, # Not Required
"finish_reason": "length" # Not Required
}
],
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}

追加のクエリ パラメーター

エンドポイントのプロバイダーでサポートされている追加のパラメーターをクエリの一部として渡すことができます。

例えば:

  • logit_bias (OpenAI、Cohereがサポート)。

  • top_k (Anthropic、Cohereによってサポートされています)。

  • frequency_penalty (OpenAI、Cohereがサポート)。

  • presence_penalty (OpenAI、Cohereがサポート)。

  • stream (OpenAI、Anthropic、Cohere、Amazon Bedrock for Anthropicがサポート)。 これは、チャットと完了のリクエストでのみ使用できます。

  • tools (OpenAI、Anthropic、Amazon Bedrock for Anthropicがサポート)。 これは、チャットと完了のリクエストでのみ使用できます。 このパラメーターを使用すると、AnthropicやAmazon Bedrock for Anthropicの コンピュータ 使用 (beta) などの外部機能を統合できます。 「Databricks での関数呼び出し」を参照してください。

外部モデルのネットワーク接続構成のサポート

AWS PrivateLink を含む外部モデルの ネットワーク接続設定 (NCC) のサポートは、現在パブリックプレビュー段階です。Databricks アカウント チームに連絡して、プレビューに参加してください。

制限

選択した外部モデルによっては、設定によって、データが発生した地域の外部でデータが処理される場合があります。 モデルサービングの制限と地域を参照してください。

追加のリソース