Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Important
Dieses Feature befindet sich in der Betaversion. Kontoadministratoren können den Zugriff auf dieses Feature über die Seite " Vorschau" der Kontokonsole steuern. Siehe Manage Azure Databricks Previews.
Auf dieser Seite wird beschrieben, wie Sie Modelldienste im Unity-Katalog mithilfe unterstützter APIs abfragen.
Requirements
- Unity AI Gateway Preview für Ihr Konto aktiviert. Siehe Manage Azure Databricks Previews.
- Ein Azure Databricks-Arbeitsbereich in einer von Unity AI Gateway unterstützten Region.
- Unity-Katalog für Ihren Arbeitsbereich aktiviert. Weitere Informationen finden Sie unter Aktivieren eines Arbeitsbereichs für Unity Catalog.
Unterstützte APIs und Integrationen
Unity AI Gateway unterstützt die folgenden APIs und Integrationen:
- Einheitliche APIs: OpenAI-kompatible Schnittstellen zu Abfragemodellen in Azure Databricks. Wechseln Sie nahtlos zwischen Modellen von verschiedenen Anbietern, ohne zu ändern, wie Sie jedes Modell abfragen.
- Systemeigene APIs: Anbieterspezifische Schnittstellen für den Zugriff auf die neuesten Modell- und anbieterspezifischen Features.
- Coding-Agenten: Integrieren Sie Ihre Coding-Agenten in das Unity AI Gateway, um Ihren KI-unterstützten Entwicklungsarbeitsabläufen zentrale Governance und Überwachung hinzuzufügen. Siehe Codierungs-Agent-Integration.
- AI Agents auf Databricks-Apps: Erstellen und Bereitstellen von AI Agents auf Databricks-Apps, die LLM-Datenverkehr über Unity AI Gateway weiterleiten. Siehe Schritt 4. Steuern Sie die LLM-Nutzung von Ihren Agents auf Databricks-Apps mit Unity AI Gateway.
-
ai_query: Verwenden Sieai_query, um von Azure Databricks bereitgestellte Modelldienste über SQL oder Python für die Batchinferenz abzufragen. Siehe Abfragemodelldienste mitai_query.
Abfragemodelldienste mit ai_query
Sie können die ai_query Funktion verwenden, um Azure Databricks bereitgestellten Modelldienste direkt aus SQL oder Python abzufragen. Dadurch können Sie Informationen zur Nutzungsverfolgung für Ihre Batch-Inferenz-Workloads erfassen.
Hinweis
-
ai_queryDie Unterstützung für Unity AI Gateway ist nur für die von Azure Databricks bereitgestellten Modelldienste verfügbar (zum Beispieldatabricks-gpt-5-4oderdatabricks-claude-sonnet-4). Modelldienste, die Sie in Unity AI Gateway erstellen, werden noch nicht unterstützt. - Nur Nutzungsverfolgung gilt für
ai_queryBatch-Inferenz-Workloads. Andere Funktionen des Unity AI Gateway wie Ratenbegrenzungen, Guardrails, Inferenztabellen und Fallbacks finden keine Anwendung.
Um loszulegen:
- Aktivieren Sie die Unity AI Gateway-Vorschau für Ihr Konto. Siehe Manage Azure Databricks Previews.
- Abfragen eines Azure Databricks bereitgestellten Modelldiensts mithilfe von
ai_query:
SELECT ai_query(
'databricks-gpt-5-4',
'Summarize the following text: ' || text_column
) AS summary
FROM my_table
LIMIT 10
ai_query Anfragen an von Azure Databricks bereitgestellte Modelldienste werden in der Systemtabelle zur Nutzungsnachverfolgung (system.ai_gateway.usage) erfasst. Diese Anforderungen werden auch im integrierten Verwendungsdashboard angezeigt.
Vollständige ai_query Syntax- und Parameterreferenz finden Sie unter ai_query Funktion. Bewährte Methoden und unterstützte Modelle finden Sie unter "Verwenden" ai_query.
Abfragemodelldienste mit einheitlichen APIs
Einheitliche APIs bieten eine openAI-kompatible Schnittstelle für Abfragemodelle auf Azure Databricks. Verwenden Sie einheitliche APIs, um nahtlos zwischen Modellen von verschiedenen Anbietern zu wechseln, ohne Ihren Code zu ändern.
MLflow-Chatabschluss-API
MLflow-Chatabschluss-API
Python
from openai import OpenAI
import os
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
client = OpenAI(
api_key=DATABRICKS_TOKEN,
base_url="https://<workspace-url>/ai-gateway/mlflow/v1"
)
chat_completion = client.chat.completions.create(
messages=[
{"role": "user", "content": "Hello!"},
{"role": "assistant", "content": "Hello! How can I assist you today?"},
{"role": "user", "content": "What is Databricks?"},
],
model="<model-service>",
max_tokens=256
)
print(chat_completion.choices[0].message.content)
REST API
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"model": "<model-service>",
"max_tokens": 256,
"messages": [
{"role": "user", "content": "Hello!"},
{"role": "assistant", "content": "Hello! How can I assist you today?"},
{"role": "user", "content": "What is Databricks?"}
]
}' \
https://<workspace-url>/ai-gateway/mlflow/v1/chat/completions
Ersetzen Sie sie <workspace-url> durch Ihre Azure Databricks Arbeitsbereichs-URL und <model-service> durch den vollqualifizierten Namen Ihres Modelldiensts.
MLflow Embeddings-API
Die MLflow-Embeddings-API
Python
from openai import OpenAI
import os
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
client = OpenAI(
api_key=DATABRICKS_TOKEN,
base_url="https://<workspace-url>/ai-gateway/mlflow/v1"
)
embeddings = client.embeddings.create(
input="What is Databricks?",
model="<model-service>"
)
print(embeddings.data[0].embedding)
REST API
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"model": "<model-service>",
"input": "What is Databricks?"
}' \
https://<workspace-url>/ai-gateway/mlflow/v1/embeddings
Ersetzen Sie sie <workspace-url> durch Ihre Azure Databricks Arbeitsbereichs-URL und <model-service> durch den vollqualifizierten Namen Ihres Modelldiensts.
Supervisor-API
Supervisor-API
Die Supervisor-API (/mlflow/v1/responses) ist eine openResponses-kompatible, anbieteragnostische API zum Erstellen von Agents in Beta. Kontoadministratoren können den Zugriff über die Vorschauseite aktivieren. Siehe Manage Azure Databricks Previews. Wählen Sie das beste Modell für Ihren Agent-Anwendungsfall für Anbieter aus, ohne Ihren Code zu ändern.
Python
from openai import OpenAI
import os
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
client = OpenAI(
api_key=DATABRICKS_TOKEN,
base_url="https://<workspace-url>/ai-gateway/mlflow/v1"
)
response = client.responses.create(
model="<model-service>",
input=[{"role": "user", "content": "What is Databricks?"}]
)
print(response.output_text)
REST API
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"model": "<model-service>",
"input": [
{"role": "user", "content": "What is Databricks?"}
]
}' \
https://<workspace-url>/ai-gateway/mlflow/v1/responses
Ersetzen Sie sie <workspace-url> durch Ihre Azure Databricks Arbeitsbereichs-URL und <model-service> durch den vollqualifizierten Namen Ihres Modelldiensts.
Abfragemodelldienste mit systemeigenen APIs
Systemeigene APIs bieten anbieterspezifische Schnittstellen für Abfragemodelle in Azure Databricks. Verwenden Sie systemeigene APIs, um auf die neuesten anbieterspezifischen Features zuzugreifen.
OpenAI-Antwort-API
OpenAI-Antworten-API
Python
from openai import OpenAI
import os
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
client = OpenAI(
api_key=DATABRICKS_TOKEN,
base_url="https://<workspace-url>/ai-gateway/openai/v1"
)
response = client.responses.create(
model="<model-service>",
max_output_tokens=256,
input=[
{
"role": "user",
"content": [{"type": "input_text", "text": "Hello!"}]
},
{
"role": "assistant",
"content": [{"type": "output_text", "text": "Hello! How can I assist you today?"}]
},
{
"role": "user",
"content": [{"type": "input_text", "text": "What is Databricks?"}]
}
]
)
print(response.output)
REST API
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"model": "<model-service>",
"max_output_tokens": 256,
"input": [
{
"role": "user",
"content": [{"type": "input_text", "text": "Hello!"}]
},
{
"role": "assistant",
"content": [{"type": "output_text", "text": "Hello! How can I assist you today?"}]
},
{
"role": "user",
"content": [{"type": "input_text", "text": "What is Databricks?"}]
}
]
}' \
https://<workspace-url>/ai-gateway/openai/v1/responses
Ersetzen Sie sie <workspace-url> durch Ihre Azure Databricks Arbeitsbereichs-URL und <model-service> durch den vollqualifizierten Namen Ihres Modelldiensts.
Anthropic Nachrichten-API
Anthropische Nachrichten-API
Python
import anthropic
import os
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
client = anthropic.Anthropic(
api_key="unused",
base_url="https://<workspace-url>/ai-gateway/anthropic",
default_headers={
"Authorization": f"Bearer {DATABRICKS_TOKEN}",
},
)
message = client.messages.create(
model="<model-service>",
max_tokens=256,
messages=[
{"role": "user", "content": "Hello!"},
{"role": "assistant", "content": "Hello! How can I assist you today?"},
{"role": "user", "content": "What is Databricks?"},
],
)
print(message.content[0].text)
REST API
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"model": "<model-service>",
"max_tokens": 256,
"messages": [
{"role": "user", "content": "Hello!"},
{"role": "assistant", "content": "Hello! How can I assist you today?"},
{"role": "user", "content": "What is Databricks?"}
]
}' \
https://<workspace-url>/ai-gateway/anthropic/v1/messages
Ersetzen Sie sie <workspace-url> durch Ihre Azure Databricks Arbeitsbereichs-URL und <model-service> durch den vollqualifizierten Namen Ihres Modelldiensts.
Google Gemini-API
Google Gemini-API
Python
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://<workspace-url>/ai-gateway/gemini",
headers={
"Authorization": f"Bearer {DATABRICKS_TOKEN}",
},
),
)
response = client.models.generate_content(
model="<model-service>",
contents=[
types.Content(
role="user",
parts=[types.Part(text="Hello!")],
),
types.Content(
role="model",
parts=[types.Part(text="Hello! How can I assist you today?")],
),
types.Content(
role="user",
parts=[types.Part(text="What is Databricks?")],
),
],
config=types.GenerateContentConfig(
max_output_tokens=256,
),
)
print(response.text)
REST API
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"role": "user",
"parts": [{"text": "Hello!"}]
},
{
"role": "model",
"parts": [{"text": "Hello! How can I assist you today?"}]
},
{
"role": "user",
"parts": [{"text": "What is Databricks?"}]
}
],
"generationConfig": {
"maxOutputTokens": 256
}
}' \
https://<workspace-url>/ai-gateway/gemini/v1beta/models/<model-service>:generateContent
Ersetzen Sie sie <workspace-url> durch Ihre Azure Databricks Arbeitsbereichs-URL und <model-service> durch den vollqualifizierten Namen Ihres Modelldiensts.
Tag-Anforderungen für die Verwendungsnachverfolgung
Sie können einzelnen Anfragen benutzerdefinierte Schlüssel-Wert-Tags mithilfe des HTTP-Headers Databricks-Ai-Gateway-Request-Tags hinzufügen. Anforderungstags werden in der request_tags Spalte sowohl in der Tabelle des Verwendungsverfolgungssystems als auch in der Ableitungstabelle protokolliert, sodass Sie Kosten, Attributnutzung und Filteranalysen nach Projekt, Team, Umgebung oder einer anderen Dimension nachverfolgen können.
Der Header-Wert muss ein JSON-Objekt sein, das String-Schlüssel String-Werten zuordnet. Beispiel:
{ "project": "chatbot", "team": "ml-platform", "environment": "production" }
Verwenden Sie den parameter extra_headers (Python) oder übergeben Sie den Header direkt (REST-API), um Tags an eine Anforderung anzufügen:
Python (OpenAI SDK)
from openai import OpenAI
import json
import os
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
client = OpenAI(
api_key=DATABRICKS_TOKEN,
base_url="https://<workspace-url>/ai-gateway/mlflow/v1"
)
request_tags = {"project": "chatbot", "team": "ml-platform"}
chat_completion = client.chat.completions.create(
messages=[
{"role": "user", "content": "What is Databricks?"},
],
model="<model-service>",
max_tokens=256,
extra_headers={
"Databricks-Ai-Gateway-Request-Tags": json.dumps(request_tags)
}
)
Python (Anthropic SDK)
import anthropic
import json
import os
DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')
request_tags = {"project": "chatbot", "team": "ml-platform"}
client = anthropic.Anthropic(
api_key="unused",
base_url="https://<workspace-url>/ai-gateway/anthropic",
default_headers={
"Authorization": f"Bearer {DATABRICKS_TOKEN}",
"Databricks-Ai-Gateway-Request-Tags": json.dumps(request_tags),
},
)
message = client.messages.create(
model="<model-service>",
max_tokens=256,
messages=[
{"role": "user", "content": "What is Databricks?"},
],
)
REST API
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-H 'Databricks-Ai-Gateway-Request-Tags: {"project": "chatbot", "team": "ml-platform"}' \
-d '{
"model": "<model-service>",
"max_tokens": 256,
"messages": [
{"role": "user", "content": "What is Databricks?"}
]
}' \
https://<workspace-url>/ai-gateway/mlflow/v1/chat/completions
Ersetzen Sie sie <workspace-url> durch Ihre Azure Databricks Arbeitsbereichs-URL und <model-service> durch den vollqualifizierten Namen Ihres Modelldiensts.