Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule nauczysz się, jak pisać zapytania do modeli Foundation zoptymalizowanych pod kątem zadań wizyjnych i obsługiwanych przez Unity Gateway.
Wskazówka
Kod Genie (tryb agenta) może to zrobić za Ciebie. Wypróbuj ten przykładowy monit:
Query the databricks-claude-sonnet-4-5 model using the OpenAI client, sending a base64-encoded image from a URL alongside a text question, and print the response.
Obsługa modeli udostępnia ujednolicony interfejs API umożliwiający zrozumienie i analizowanie obrazów przy użyciu różnych modeli podstawowych, co umożliwia odblokowanie zaawansowanych funkcji wielomodalnych. Ta funkcja jest dostępna za pośrednictwem wybranych modeli hostowanych w usłudze Databricks w ramach interfejsów API modelu bazowego i serwujących punkty końcowe obsługujących modele zewnętrzne.
Wymagania
- Zobacz Wymagania.
- Zainstaluj odpowiedni pakiet w klastrze na podstawie wybranej opcji klienta zapytań .
Przykłady zapytań
Note
Poniższe przykłady opierają się na Unity Gateway i usługach modelowych. Jeśli używasz modelu obsługującego punkty końcowe zamiast usług modelu, zastąp nazwę usługi modelu nazwą punktu końcowego. Zobacz Szczegółową listę modeli obsługiwanych przez interfejsy API modeli bazowych Databricks, aby wyświetlić listę dostępnych modeli bazowych oraz nazwy usług modeli i punktów końcowych.
Klient OpenAI
Aby użyć klienta OpenAI, podaj nazwę usługi modelu jako dane wejściowe model.
from openai import OpenAI
import base64
import requests
# Get the workspace API URL and token from the notebook context
API_ROOT = dbutils.notebook.entry_point.getDbutils().notebook().getContext().apiUrl().get()
API_TOKEN = dbutils.notebook.entry_point.getDbutils().notebook().getContext().apiToken().get()
client = OpenAI(
api_key=API_TOKEN,
base_url=f"{API_ROOT}/ai-gateway/mlflow/v1",
)
# Download and encode image
image_url = "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
resp = requests.get(image_url)
resp.raise_for_status()
image_data = base64.b64encode(resp.content).decode("utf-8")
# OpenAI request
completion = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "what's in this image?"},
{
"type": "image_url",
"image_url": {"url": f"data:image/jpeg;base64,{image_data}"},
},
],
}
],
)
print(completion.choices[0].message.content)
Interfejs API uzupełniania czatów obsługuje wiele obrazów jako danych wejściowych, umożliwiając modelowi analizowanie poszczególnych obrazów i syntezowanie informacji ze wszystkich danych wejściowych w celu wygenerowania odpowiedzi na zapytanie.
from openai import OpenAI
import base64
import requests
# Get the workspace API URL and token from the notebook context
API_ROOT = dbutils.notebook.entry_point.getDbutils().notebook().getContext().apiUrl().get()
API_TOKEN = dbutils.notebook.entry_point.getDbutils().notebook().getContext().apiToken().get()
client = OpenAI(
api_key=API_TOKEN,
base_url=f"{API_ROOT}/ai-gateway/mlflow/v1",
)
# Download and encode multiple images
image1_url = "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
resp1 = requests.get(image1_url)
resp1.raise_for_status()
image1_data = base64.b64encode(resp1.content).decode("utf-8")
image2_url = "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
resp2 = requests.get(image2_url)
resp2.raise_for_status()
image2_data = base64.b64encode(resp2.content).decode("utf-8")
# OpenAI request
completion = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "What are in these images? Is there any difference between them?"},
{
"type": "image_url",
"image_url": {"url": f"data:image/jpeg;base64,{image1_data}"},
},
{
"type": "image_url",
"image_url": {"url": f"data:image/jpeg;base64,{image2_data}"},
},
],
}
],
)
print(completion.choices[0].message.content)
SQL
Ważne
W poniższym przykładzie użyto wbudowanej funkcji SQL, ai_query. Ta funkcja jest dostępna w publicznej wersji zapoznawczej , a definicja może ulec zmianie.
Poniższe zapytania są modelem podstawowym obsługiwanym przez interfejsy API modelu usługi Databricks Foundation dla danych wejściowych wielomodalnych przy użyciu funkcji ai_query()AI.
SELECT *, ai_query(
'system.ai.llama-4-maverick',
'what is this image about?', files => content)
as output FROM READ_FILES("/Volumes/main/multimodal/unstructured/image.jpeg");
Obsługiwane modele
Zobacz Podstawowe typy modeli dla obsługiwanych modeli przetwarzania obrazów.
Wymagania dotyczące obrazu wejściowego
| Modele | Obsługiwane formaty | Wiele obrazów na żądanie | Ograniczenia rozmiaru obrazu | Zalecenia dotyczące zmiany rozmiaru obrazu | Zagadnienia dotyczące jakości obrazów |
|---|---|---|---|---|---|
databricks-gpt-5 |
|
Maksymalnie 500 pojedynczych obrazów na żądanie | Limit rozmiaru pliku: maksymalnie 10 MB całkowitego rozmiaru ładunku na żądanie | N/A |
|
databricks-gpt-5-mini |
|
Maksymalnie 500 pojedynczych obrazów na żądanie | Limit rozmiaru pliku: maksymalnie 10 MB całkowitego rozmiaru ładunku na żądanie | N/A |
|
databricks-gpt-5-nano |
|
Maksymalnie 500 pojedynczych obrazów na żądanie | Limit rozmiaru pliku: maksymalnie 10 MB całkowitego rozmiaru ładunku na żądanie | N/A |
|
databricks-gemma-3-12b |
|
Maksymalnie 5 obrazów dla żądań interfejsu API
|
Limit rozmiaru pliku: łącznie 10 MB dla wszystkich obrazów na każde żądanie API. | N/A | N/A |
databricks-llama-4-maverick |
|
Maksymalnie 5 obrazów dla żądań interfejsu API
|
Limit rozmiaru pliku: łącznie 10 MB dla wszystkich obrazów na każde żądanie API. | N/A | N/A |
|
|
|
|
Aby uzyskać optymalną wydajność, zmień rozmiar obrazów przed przekazaniem, jeśli są one zbyt duże.
|
|
databricks-deepseek-v4-1-flash |
|
Do 30 obrazów na każde żądanie API | Do 67 108 864 pikseli na obraz (szerokość × wysokość). Żądania podlegają również limitowi ładunku żądań. | Zmień rozmiar obrazów przekraczających limit pikseli przed wysłaniem żądania. | N/A |
Konwersja obrazu na token
Ta sekcja dotyczy tylko interfejsów API Modelu Foundation. W przypadku modeli zewnętrznych zapoznaj się z dokumentacją dostawcy.
Każdy obraz w żądaniu do modelu podstawowego zwiększa użycie tokenów. Zobacz kalkulator cen , aby oszacować ceny obrazów na podstawie użycia tokenu i modelu, którego używasz.
Ograniczenia rozumienia obrazów
Ta sekcja dotyczy tylko interfejsów API Modelu Foundation. W przypadku modeli zewnętrznych zapoznaj się z dokumentacją dostawcy.
Ograniczenia rozumienia obrazów dla obsługiwanych modeli bazowych hostowanych przez Databricks są następujące:
| Model | Ograniczenia |
|---|---|
Obsługiwane są następujące modele Claude'a:
|
Poniżej przedstawiono limity modeli Claude'a w usłudze Databricks:
|