Vyhledejte model chatu

V tomto článku se dozvíte, jak psát požadavky na dotazy na základní modely optimalizované pro úlohy chatu a pro obecné účely a obsluhovat unity AI Gateway.

Tip

Genie Code (režim agenta) to může udělat za vás. Vyzkoušejte tento příklad výzvy:

Query the databricks-claude-sonnet-4-5 chat model using the OpenAI client. Send a system prompt and a user question, and print the response.

Příklady v tomto článku platí pro dotazování základních modelů, které jsou k dispozici pomocí těchto možností:

Požadavky

Příklady dotazů

Note

Následující příklady jsou založené na službě Unity AI Gateway a modelových službách. Pokud místo služeb modelu používáte koncové body obsluhující modely, nahraďte název služby modelu názvem koncového bodu. Viz Základní modely hostované Databricks dostupné v rozhraních API Foundation Model, kde najdete seznam dostupných základních modelů a názvů služeb modelů a koncových bodů.

Příklady v této části ukazují, jak pomocí různých možností klienta dotazovat službu modelu Foundation Model API s účtováním za token.

Dokončení chatu OpenAI

Pokud chcete použít klienta OpenAI, zadejte jako model vstup název služby modelu. Následující příklad předpokládá, že máte token rozhraní API Databricks a openai na výpočetní prostředky nainstalovaný. K připojení klienta OpenAI k Databricks potřebujete také instanci pracovního prostoru 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/ai-gateway/mlflow/v1"
)

response = client.chat.completions.create(
    model="system.ai.claude-sonnet-4-5",
    messages=[
      {
        "role": "system",
        "content": "You are a helpful assistant."
      },
      {
        "role": "user",
        "content": "What is a mixture of experts model?",
      }
    ],
    max_tokens=256
)

Například následující formát požadavku pro model chatu při použití rozhraní REST API je očekávaný formát požadavku. U externích modelů můžete zahrnout další parametry platné pro daného poskytovatele a konfiguraci koncového bodu. Viz Další parametry dotazu.

{
  "messages": [
    {
      "role": "user",
      "content": "What is a mixture of experts model?"
    }
  ],
  "max_tokens": 100,
  "temperature": 0.1
}

Následuje očekávaný formát odpovědi pro požadavek vytvořený pomocí rozhraní REST API:

{
  "model": "databricks-claude-sonnet-4-5",
  "choices": [
    {
      "message": {},
      "index": 0,
      "finish_reason": null
    }
  ],
  "usage": {
    "prompt_tokens": 7,
    "completion_tokens": 74,
    "total_tokens": 81
  },
  "object": "chat.completion",
  "id": null,
  "created": 1698824353
}

Odpovědi OpenAI

Důležité

Tato část popisuje rozhraní OpenAI Responses API, nativní průchozí rozhraní, které podporuje úplnou sadu parametrů OpenAI Responses pro modely OpenAI. Pokud chcete použít formát žádosti o odpovědi s otevřenými modely hostovanými Anthropic Claude, Google Gemini nebo Databricks, přečtěte si téma Dotazování modelu pomocí rozhraní API Open Responses.

Pokud chcete použít rozhraní API odpovědí OpenAI, zadejte jako model vstup název služby modelu. Následující příklad předpokládá, že máte token rozhraní API Azure Databricks a openai na výpočetní prostředky nainstalovaný. K připojení klienta OpenAI k Azure Databricks potřebujete také instanci pracovního prostoru 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/ai-gateway/mlflow/v1"
)

response = client.responses.create(
    model="system.ai.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
)

Například následující formát požadavku je očekávaný formát požadavku při použití rozhraní API odpovědí OpenAI. Cesta URL pro toto rozhraní API je /serving-endpoints/responses.

{
  "model": "databricks-gpt-5",
  "input": [
    {
      "role": "user",
      "content": "What is a mixture of experts model?"
    }
  ],
  "max_output_tokens": 100,
  "temperature": 0.1
}

Následující formát odpovědi je očekávaný formát odpovědi pro požadavek provedený pomocí rozhraní API pro odpovědi:

{
  "id": "resp_abc123",
  "object": "response",
  "created_at": 1698824353,
  "model": "databricks-gpt-5",
  "output": [
    {
      "type": "message",
      "role": "assistant",
      "content": []
    }
  ],
  "usage": {
    "input_tokens": 7,
    "output_tokens": 74,
    "total_tokens": 81
  }
}

REST API

Důležité

Následující příklad používá parametry rozhraní REST API k dotazování obsluhujících koncové body, které obsluhují externí modely. Tyto parametry jsou ve verzi Public Preview a definice se může změnit. Viz POST /serving-endpoints/{name}/invocations.

curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful assistant."
    },
    {
      "role": "user",
      "content": " What is a mixture of experts model?"
    }
  ]
}' \
https://<workspace_host>.databricks.com/serving-endpoints/<your-external-model-endpoint>/invocations \

Například následující formát požadavku pro model chatu při použití rozhraní REST API je očekávaný formát požadavku. U externích modelů můžete zahrnout další parametry platné pro daného poskytovatele a konfiguraci koncového bodu. Viz Další parametry dotazu.

{
  "messages": [
    {
      "role": "user",
      "content": "What is a mixture of experts model?"
    }
  ],
  "max_tokens": 100,
  "temperature": 0.1
}

Následuje očekávaný formát odpovědi pro požadavek vytvořený pomocí rozhraní REST API:

{
  "model": "databricks-claude-sonnet-4-5",
  "choices": [
    {
      "message": {},
      "index": 0,
      "finish_reason": null
    }
  ],
  "usage": {
    "prompt_tokens": 7,
    "completion_tokens": 74,
    "total_tokens": 81
  },
  "object": "chat.completion",
  "id": null,
  "created": 1698824353
}

Sada SDK pro nasazení MLflow

Důležité

Následující příklad používá predict() API z MLflow Deployments SDK.


import mlflow.deployments

# Only required when running this example outside of a Databricks Notebook
export DATABRICKS_HOST="https://<workspace_host>.databricks.com"
export DATABRICKS_TOKEN="dapi-your-databricks-token"

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

chat_response = client.predict(
    endpoint="system.ai.claude-sonnet-4-5",
    inputs={
        "messages": [
            {
              "role": "user",
              "content": "Hello!"
            },
            {
              "role": "assistant",
              "content": "Hello! How can I assist you today?"
            },
            {
              "role": "user",
              "content": "What is a mixture of experts model??"
            }
        ],
        "temperature": 0.1,
        "max_tokens": 20
    }
)

Například následující formát požadavku pro model chatu při použití rozhraní REST API je očekávaný formát požadavku. U externích modelů můžete zahrnout další parametry platné pro daného poskytovatele a konfiguraci koncového bodu. Viz Další parametry dotazu.

{
  "messages": [
    {
      "role": "user",
      "content": "What is a mixture of experts model?"
    }
  ],
  "max_tokens": 100,
  "temperature": 0.1
}

Následuje očekávaný formát odpovědi pro požadavek vytvořený pomocí rozhraní REST API:

{
  "model": "databricks-claude-sonnet-4-5",
  "choices": [
    {
      "message": {},
      "index": 0,
      "finish_reason": null
    }
  ],
  "usage": {
    "prompt_tokens": 7,
    "completion_tokens": 74,
    "total_tokens": 81
  },
  "object": "chat.completion",
  "id": null,
  "created": 1698824353
}

Databricks Python SDK

Tento kód musí být spuštěný v poznámkovém bloku ve vašem pracovním prostoru. Viz též Použití sady Databricks SDK pro Python z poznámkového bloku Azure Databricks.

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.serving import ChatMessage, ChatMessageRole

w = WorkspaceClient()
response = w.serving_endpoints.query(
    name="system.ai.claude-sonnet-4-5",
    messages=[
        ChatMessage(
            role=ChatMessageRole.SYSTEM, content="You are a helpful assistant."
        ),
        ChatMessage(
            role=ChatMessageRole.USER, content="What is a mixture of experts model?"
        ),
    ],
    max_tokens=128,
)
print(f"RESPONSE:\n{response.choices[0].message.content}")

Například následující formát požadavku pro model chatu při použití rozhraní REST API je očekávaný formát požadavku. U externích modelů můžete zahrnout další parametry platné pro daného poskytovatele a konfiguraci koncového bodu. Viz Další parametry dotazu.

{
  "messages": [
    {
      "role": "user",
      "content": "What is a mixture of experts model?"
    }
  ],
  "max_tokens": 100,
  "temperature": 0.1
}

Následuje očekávaný formát odpovědi pro požadavek vytvořený pomocí rozhraní REST API:

{
  "model": "databricks-claude-sonnet-4-5",
  "choices": [
    {
      "message": {},
      "index": 0,
      "finish_reason": null
    }
  ],
  "usage": {
    "prompt_tokens": 7,
    "completion_tokens": 74,
    "total_tokens": 81
  },
  "object": "chat.completion",
  "id": null,
  "created": 1698824353
}

Podporované modely

Podívejte se na typy základových modelů pro podporované modely chatu.

Dodatečné zdroje