Fondation de requêtes et modèles d’intégration

Databricks propose plusieurs moyens d’interroger les modèles de fondation. Choisissez une interface en fonction de la nécessité d’une API indépendante du fournisseur, de fonctionnalités spécifiques à chaque fournisseur ou d’inférence par lots.

Façons d’interroger un modèle

Approach Quand l′utiliser ?
API unifiées Utilisez des interfaces compatibles avec OpenResponses et OpenAI Chat Completions. Databricks traduit chaque requête dans le format natif du modèle en aval, ce qui permet de changer de modèle entre fournisseurs sans changer de code client.
API natives des fournisseurs Utilisez des fonctionnalités spécifiques aux fournisseurs ou du code OpenAI, Anthropic ou Google SDK existant.
ai_query Effectuez une inférence batch à partir de SQL ou Python.

Quickstart

Interrogez un service modèle en deux étapes :

Étape 1 : Choisissez un modèle

Azure Databricks fournit des modèles prêts à l’emploi, tels que claude-sonnet-4-5 ou gpt-5-6-sol. Les modèles fournis par Azure Databricks sont enregistrés dans le catalogue Unity sous system.ai.

Étape 2 : Envoyez une requête en utilisant l’API unifiée compatible OpenAI

Utilisez l’API MLflow Chat Completions avec le SDK Python d’OpenAI :

from openai import OpenAI
import os

DATABRICKS_TOKEN = os.environ.get('DATABRICKS_TOKEN')

client = OpenAI(
  api_key=DATABRICKS_TOKEN,  # your personal access token
  base_url="https://<workspace-url>/ai-gateway/mlflow/v1"  # your Databricks workspace instance
)

chat_completion = client.chat.completions.create(
  messages=[
    {"role": "user", "content": "What is Databricks?"},
  ],
  model="system.ai.claude-sonnet-4-5",
  max_tokens=256
)

print(chat_completion.choices[0].message.content)

Requirements

Interroger des services de modèle avec des API unifiées

Les API unifiées offrent une interface compatible OpenAI pour interroger des modèles sur Azure Databricks. Utilisez des API unifiées pour basculer en toute transparence entre les modèles de différents fournisseurs sans modifier votre code.

Unified Responses API

API de réponses unifiées

L’API Unified Responses (/mlflow/v1/responses) est une API compatible OpenResponses, indépendante des fournisseurs, pour interroger des modèles sur Azure Databricks. Databricks le recommande plutôt que l’API MLflow Chat Completions. Choisissez le meilleur modèle pour votre cas d’usage parmi différents fournisseurs, sans changer votre code.

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

Remplacez <workspace-url> par votre URL d’espace de travail Azure Databricks et <model-service> par le nom complet de votre service de modèle.

MLflow Chat Completions API

MLflow API de complétions de chat

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="system.ai.gpt-5-6-sol",
  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": "system.ai.gpt-5-6-sol",
    "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

Remplacez <workspace-url> par l’URL de votre espace de travail Azure Databricks.

API MLflow Embeddings

API d’incorporations MLflow

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

Remplacez <workspace-url> par votre URL d’espace de travail Azure Databricks et <model-service> par le nom complet de votre service de modèle.

Interroger des services de modèle avec ai_query

Vous pouvez utiliser la ai_query fonction pour interroger des services de modèles directement depuis SQL ou Python. Cela vous permet de capturer les informations de suivi de l’utilisation pour vos charges de travail d’inférence par lots.

Pour interroger un service modèle avec ai_query, exécuter ai_query contre un service modèle :

SELECT ai_query(
  'system.ai.claude-sonnet-4-5',
  'Summarize the following text: ' || text_column
) AS summary
FROM my_table
LIMIT 10

La table système de suivi de l’utilisation (system.ai_gateway.usage) enregistre les requêtes effectuées via ai_query aux services de modèle. Ces demandes apparaissent également dans le tableau de bord d’utilisation intégré.

Pour obtenir la syntaxe complète ai_query et la référence des paramètres, consultez ai_query la fonction. Pour connaître les meilleures pratiques et les modèles pris en charge, consultez Utiliser ai_query.

Limitations

  • ai_queryle support de Unity Gateway n’est disponible que pour les modèles fournis par Azure Databricks. Passez le nom du system.ai service modèle (par exemple, system.ai.claude-sonnet-4-5 ou system.ai.gpt-5-6-sol). Les services modèles que vous créez dans Unity Gateway ne sont pas encore pris en charge.
  • Seul le suivi de l’utilisation s’applique aux ai_query charges de travail d’inférence par lots. D’autres fonctionnalités de Unity Gateway, telles que les limites de débit, les garde-fous implémentés avec des politiques de service, les tables d’inférence et les plans de secours, ne s’appliquent pas.

Interrogez les services de modèles avec des API natives

Les API natives offrent des interfaces spécifiques aux fournisseurs pour interroger des modèles sur Azure Databricks. Utilisez des API natives pour accéder aux dernières fonctionnalités spécifiques au fournisseur.

Chaque API native fonctionne uniquement avec les services de modèle dont le modèle sous-jacent utilise le format d’API correspondant :

Pour interroger un service de modèle quel que soit son modèle sous-jacent, utilisez plutôt les API unifiées .

Étapes suivantes