Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Important
Bu özellik Beta sürümündedir. Hesap yöneticileri bu özelliğe erişimi hesap konsolu Önizlemeler sayfasından denetleyebilir. Bkz. Azure Databricks önizlemelerini yönetme.
Bu sayfada, desteklenen API'ler kullanılarak Unity Kataloğu'nda model hizmetlerinin nasıl sorgulandığı açıklanmaktadır.
Requirements
- Unity AI Gateway önizlemesi hesabınız için etkinleştirildi. Bkz. Azure Databricks önizlemelerini yönetme.
- Unity AI Gateway desteklenen bir bölgedeki Azure Databricks çalışma alanı.
- Çalışma alanınız için Unity Kataloğu etkinleştirildi. Bkz. Unity Kataloğu için bir çalışma alanını etkinleştirme.
Desteklenen API'ler ve tümleştirmeler
Unity AI Gateway aşağıdaki API'leri ve tümleştirmeleri destekler:
- Birleşik API'ler: Azure Databricks'te modelleri sorgulamak için OpenAI uyumlu arabirimler. Her modeli sorgulama yönteminizi değiştirmeden farklı sağlayıcılardan gelen modeller arasında sorunsuz bir şekilde geçiş yapın.
- Yerel API'ler: En son modele ve sağlayıcıya özgü özelliklere erişmek için sağlayıcıya özgü arabirimler.
- Kodlama aracıları: Yapay zeka destekli geliştirme iş akışlarınıza merkezi idare ve izleme eklemek için kodlama aracılarınızı Unity AI Gateway ile tümleştirin. Bkz. kodlama aracısı entegrasyonu.
- Databricks Uygulamalarındaki Aracılar: Unity AI Gateway aracılığıyla LLM trafiğini yönlendiren Databricks Uygulamalarında yapay zeka aracıları yazın ve dağıtın. Bkz . 4. Adım. Unity AI Gateway ile Databricks Uygulamalarındaki aracılarınızın LLM kullanımını idare edin.
-
ai_query: Toplu çıkarım için Azure Databricks tarafından sağlanan model hizmetlerini SQL veya Python'dan sorgulamak üzereai_querykullanın. Bkz.ai_queryile model hizmetlerini sorgulama.
ile model hizmetlerini sorgulama ai_query
Azure Databricks tarafından sağlanan model hizmetlerini doğrudan SQL’den veya Python’dan sorgulamak için ai_query işlevini kullanabilirsiniz. Bu, toplu çıkarım iş yükleriniz için kullanım izleme bilgilerini yakalamanıza olanak tanır.
Note
-
ai_queryUnity AI Gateway desteği yalnızca Azure Databricks tarafından sağlanan model hizmetlerinde (örneğin,databricks-gpt-5-4veyadatabricks-claude-sonnet-4) kullanılabilir. Unity AI Gateway'de oluşturduğunuz model hizmetleri henüz desteklenmiyor. - Yalnızca kullanım izleme,
ai_querytoplu çıkarım iş yükleri için geçerlidir. Hız sınırları, korumalar, çıkarım tabloları ve geri dönüşler gibi diğer Unity AI Gateway özellikleri geçerli değildir.
Başlamak için:
- Hesabınız için Unity AI Gateway önizlemesini etkinleştirin. Bkz. Azure Databricks önizlemelerini yönetme.
- kullanarak
ai_queryAzure Databricks tarafından sağlanan bir model hizmetini sorgulama:
SELECT ai_query(
'databricks-gpt-5-4',
'Summarize the following text: ' || text_column
) AS summary
FROM my_table
LIMIT 10
sağlanan Azure Databricks model hizmetlerine yapılan ai_query istekler kullanım izleme sistemi tablosunda (system.ai_gateway.usage ) yakalanır. Bu istekler , yerleşik kullanım panosunda da görünür.
Tam ai_query söz dizimi ve parametre başvurusu için bkz ai_query . işlev. En iyi uygulamalar ve desteklenen modeller için bkz. Kullanım ai_query.
Birleşik API'lerle model hizmetlerini sorgulama
Birleşik API'ler, Azure Databricks'te modelleri sorgulamak için OpenAI uyumlu bir arabirim sunar. Kodunuzu değiştirmeden farklı sağlayıcılardan gelen modeller arasında sorunsuz geçiş yapmak için birleşik API'leri kullanın.
MLflow Sohbet Tamamlamaları API'si
MLflow Sohbet Tamamlamaları API'si
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
<workspace-url> değerini Azure Databricks çalışma alanı URL’nizle ve <model-service> değerini model hizmetinizin tam nitelikli adıyla değiştirin.
MLflow Ekleme API'si
MLflow Ekleme API'si
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
<workspace-url> değerini Azure Databricks çalışma alanı URL’nizle ve <model-service> değerini model hizmetinizin tam nitelikli adıyla değiştirin.
Gözetmen API'si
Gözetmen API'si
Gözetmen API'si (/mlflow/v1/responses), Beta'da aracı oluşturmak için OpenResponses uyumlu, sağlayıcıdan bağımsız bir API'dir. Hesap yöneticileri Önizlemeler sayfasından erişimi etkinleştirebilir. Bkz. Azure Databricks önizlemelerini yönetme. Kodunuzu değiştirmeden sağlayıcılar arasında aracı kullanım örneğiniz için en iyi modeli seçin.
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
<workspace-url> değerini Azure Databricks çalışma alanı URL’nizle ve <model-service> değerini model hizmetinizin tam nitelikli adıyla değiştirin.
Yerel API'lerle model hizmetlerini sorgulama
Yerel API'ler, Azure Databricks'te modelleri sorgulamak için sağlayıcıya özgü arabirimler sunar. Sağlayıcıya özgü en son özelliklere erişmek için yerel API'leri kullanın.
Her yerel API yalnızca temel alınan model eşleşen API biçimini kullanan model hizmetleriyle çalışır:
- OpenAI (GPT) modelleri tarafından desteklenen model hizmetlerini sorgulamak için OpenAI Yanıtları API'sini kullanın.
- Claude modelleri tarafından desteklenen model hizmetlerini sorgulamak için Anthropic İletiler API'sini kullanın.
- Gemini modelleri tarafından desteklenen model servislerini sorgulamak için Google Gemini API'sini kullanın.
Temel alınan modelden bağımsız olarak bir model hizmetini sorgulamak için bunun yerine birleşik API'leri kullanın.
OpenAI Yanıtları API'si
OpenAI Yanıtları API'si
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
<workspace-url> değerini Azure Databricks çalışma alanı URL’nizle ve <model-service> değerini model hizmetinizin tam nitelikli adıyla değiştirin.
Anthropic İletiler API
Anthropic Mesajlar API'si
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
<workspace-url> değerini Azure Databricks çalışma alanı URL’nizle ve <model-service> değerini model hizmetinizin tam nitelikli adıyla değiştirin.
Google Gemini API'si
Google Gemini API'si
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
<workspace-url> değerini Azure Databricks çalışma alanı URL’nizle ve <model-service> değerini model hizmetinizin tam nitelikli adıyla değiştirin.
Kullanım izleme için etiket istekleri
HTTP üst bilgisini kullanarak Databricks-Ai-Gateway-Request-Tags tek tek isteklere özel anahtar-değer etiketleri ekleyebilirsiniz. İstek etiketleri hem request_tags sistemi tablosundaki hem de çıkarım tablolarındaki sütuna kaydedilir ve böylece maliyetleri izlemenize, kullanımı öznitelik etmenize ve analizlere projeye, ekibe, ortama veya başka herhangi bir boyuta göre filtre uygulamanıza olanak tanır.
Üst bilgi değeri, dize değerlerine dize anahtarlarını eşlemek için bir JSON nesnesi olmalıdır. Örneğin:
{ "project": "chatbot", "team": "ml-platform", "environment": "production" }
extra_headers parametresini (Python) kullanın veya bir isteğe etiket eklemek için üst bilgiyi doğrudan (REST API) geçirin:
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
<workspace-url> değerini Azure Databricks çalışma alanı URL’nizle ve <model-service> değerini model hizmetinizin tam nitelikli adıyla değiştirin.