Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Créez, partagez et gérez vos propres API de modèles (services de modèles) dans le catalogue Unity.
Tip
Les API de modèles fournies par le système dans le system.ai schéma sont prêtes à être interrogées sans aucune configuration. Créez votre propre API de modèle uniquement lorsque vous souhaitez gouverner des modèles supplémentaires ou exposer un point de terminaison personnalisé.
Requirements
- Espace de travail Azure Databricks dans une région prise en charge par Unity AI Gateway.
- Catalogue Unity activé pour votre espace de travail. Consultez Activer un espace de travail pour le Catalogue Unity.
- Pour créer un service de modèle, vous devez disposer des éléments suivants :
-
USE CATALOG,USE SCHEMAetCREATE SERVICEsur le catalogue et le schéma dans lesquels vous créez le service de modèle. -
EXECUTEsur chaque modèle référencé par le service de modèle en tant que destination. -
EXECUTE,USE CATALOG, etUSE SCHEMAsur chaque service fournisseur de modèles que le service modèle référence comme destination. -
USE CATALOG,USE SCHEMAetCREATE TABLEsur le catalogue et le schéma où la table d’inférence est créée, si vous activez la journalisation de l’inférence.
-
Créer un service de modèle
Vous pouvez créer un service modèle dans l’interface Unity AI Gateway UI ou dans Catalog Explorer, ou programmatiquement avec l’API REST, les SDK Azure Databricks, la CLI Azure Databricks ou Terraform.
Les services de modèle et les services de fournisseur de modèles partagent un espace de noms unique au sein d’un schéma de catalogue Unity. Vous ne pouvez pas utiliser de nom pour un service de modèle si un service fournisseur de modèles dans le schéma l’utilise déjà, et vice versa.
Interface utilisateur
- Effectuez l’une des actions suivantes :
- Dans la barre latérale de l’espace de travail, cliquez sur PASSERELLE AI, puis sur Créer.
- Dans l’Explorateur de catalogue, accédez au schéma dans lequel vous souhaitez créer le service de modèle, puis cliquez sur Créer>Service>Service de modèle.
- Entrez un nom pour le service de modèle, puis sélectionnez le catalogue et le schéma dans lesquels le créer. Si vous démarrez à partir de l’Explorateur de catalogues, l’Explorateur de catalogues prérempli le catalogue et le schéma.
- Sélectionnez la destination principale à servir. Il peut s’agir d’un modèle hébergé par Databricks sur lequel vous avez
EXECUTEet que Unity AI Gateway peut servir, ou d’un service de fournisseur de modèles sur lequel vous avezEXECUTE,USE CATALOGetUSE SCHEMA. - Cliquez sur Créer.
Après avoir créé le service de modèle, Azure Databricks ouvre sa page de vue d’ensemble, où vous pouvez commencer ou configurer des fonctionnalités supplémentaires telles que la journalisation d’inférence.
API REST
Envoyez un POST à /api/2.1/unity-catalog/model-services, en passant parent et model_service_id en tant que paramètres de requête. La configuration de routage doit avoir au moins une destination :
databricks api post \
"/api/2.1/unity-catalog/model-services?parent=schemas/main.default&model_service_id=my_model_service" \
--json '{
"comment": "Routes chat traffic to a foundation model",
"config": {
"routing": {
"destinations": [
{
"name": "primary",
"destination_type": "DESTINATION_TYPE_PAY_PER_TOKEN_FOUNDATION_MODEL",
"pay_per_token_config": { "model": "models/system.ai.databricks-gpt-5" },
"traffic_percentage": 100
}
]
}
}
}'
CLI
Passez le schéma parent et un nom de feuille, puis renseignez la configuration avec --json. La configuration de routage doit avoir au moins une destination. Pour installer l’interface de ligne de commande, consultez Installer ou mettre à jour Databricks CLI.
databricks ai-gateway create-model-service schemas/main.default my_model_service --json '{
"comment": "Routes chat traffic to a foundation model",
"config": {
"routing": {
"destinations": [
{
"name": "primary",
"destination_type": "DESTINATION_TYPE_PAY_PER_TOKEN_FOUNDATION_MODEL",
"pay_per_token_config": { "model": "models/system.ai.databricks-gpt-5" },
"traffic_percentage": 100
}
]
}
}
}'
Terraform
Créer et gérer un service modèle avec le fournisseur Databricks Terraform et la ressource databricks_ai_gateway_model_service :
resource "databricks_ai_gateway_model_service" "example" {
parent = "schemas/main.default"
model_service_id = "my_model_service"
comment = "Routes chat traffic to a foundation model"
config = {
routing = {
destinations = [{
name = "primary"
destination_type = "DESTINATION_TYPE_PAY_PER_TOKEN_FOUNDATION_MODEL"
pay_per_token_config = { model = "models/system.ai.databricks-gpt-5" }
traffic_percentage = 100
}]
}
}
}
Kit de développement logiciel (SDK) Python
Créez et gérez un service de modèles avec le SDK Databricks pour Python :
from databricks.sdk.service import catalog as c
model_service = w.ai_gateway.create_model_service(
parent="schemas/main.default",
model_service_id="my_model_service",
model_service=c.ModelService(
comment="Routes chat traffic to a foundation model",
config=c.ModelServiceConfig(
routing=c.ModelServiceConfigRoutingConfig(
destinations=[
c.ModelServiceConfigDestinationConfig(
name="primary",
destination_type=(
c.ModelServiceConfigDestinationConfigDestinationType
.DESTINATION_TYPE_PAY_PER_TOKEN_FOUNDATION_MODEL
),
pay_per_token_config=c.ModelServiceConfigPayPerTokenConfig(
model="models/system.ai.databricks-gpt-5"
),
traffic_percentage=100,
)
]
)
),
),
)
Kit de développement logiciel (SDK) Go
Créer et gérer un service modèle avec le SDK Databricks pour Go :
modelService, err := w.AiGateway.CreateModelService(ctx, catalog.CreateModelServiceRequest{
Parent: "schemas/main.default",
ModelServiceId: "my_model_service",
ModelService: catalog.ModelService{
Comment: "Routes chat traffic to a foundation model",
Config: &catalog.ModelServiceConfig{
Routing: &catalog.ModelServiceConfigRoutingConfig{
Destinations: []catalog.ModelServiceConfigDestinationConfig{{
Name: "primary",
DestinationType: catalog.ModelServiceConfigDestinationConfigDestinationTypeDestinationTypePayPerTokenFoundationModel,
PayPerTokenConfig: &catalog.ModelServiceConfigPayPerTokenConfig{
Model: "models/system.ai.databricks-gpt-5",
},
TrafficPercentage: 100,
}},
},
},
},
})
Kit de développement logiciel (SDK) Java
Créer et gérer un service modèle avec le SDK Databricks pour Java :
ModelServiceConfig config =
new ModelServiceConfig()
.setRouting(
new ModelServiceConfigRoutingConfig()
.setDestinations(
Collections.singletonList(
new ModelServiceConfigDestinationConfig()
.setName("primary")
.setDestinationType(
ModelServiceConfigDestinationConfigDestinationType
.DESTINATION_TYPE_PAY_PER_TOKEN_FOUNDATION_MODEL)
.setPayPerTokenConfig(
new ModelServiceConfigPayPerTokenConfig()
.setModel("models/system.ai.databricks-gpt-5"))
.setTrafficPercentage(100L))));
ModelService modelService =
w.aiGateway()
.createModelService(
new CreateModelServiceRequest()
.setParent("schemas/main.default")
.setModelServiceId("my_model_service")
.setModelService(
new ModelService()
.setComment("Routes chat traffic to a foundation model")
.setConfig(config)));
JS SDK
Créer et gérer un service modèle avec le SDK Databricks AI Gateway pour JavaScript :
import { ModelServiceConfig_DestinationConfig_DestinationType as DestType } from '@databricks/sdk-aigateway/v1';
const created = await client.createModelService({
parent: 'schemas/main.default',
modelServiceId: 'my_model_service',
modelService: {
comment: 'Routes chat traffic to a foundation model',
config: {
routing: {
destinations: [
{
name: 'primary',
destinationType: DestType.DESTINATION_TYPE_PAY_PER_TOKEN_FOUNDATION_MODEL,
typeConfig: {
$case: 'payPerTokenConfig',
payPerTokenConfig: { model: 'models/system.ai.databricks-gpt-5' },
},
trafficPercentage: 100,
},
],
},
},
},
});
Accorder l’accès à un service de modèles
Par défaut, seul le propriétaire du service modèle peut l’interroger. Pour permettre à d’autres d’interroger un service de modèle, accordez-leur EXECUTE sur celui-ci, ainsi que USE CATALOG et USE SCHEMA sur son catalogue et son schéma. Si le service de modèle consigne les données dans une table d’inférence, accordez-lui SELECT sur la table pour lui permettre de lire les requêtes et les réponses consignées.
Interface utilisateur
- Ouvrez le service modèle dans l’Explorateur de catalogue, ou allez dans AI Gateway et sélectionnez le service.
- Accédez à l’onglet Autorisations.
- Cliquez sur Accorder.
- Sélectionnez les utilisateurs, les groupes ou les principaux de service auxquels accorder l’accès.
- Sélectionnez le privilège EXECUTE .
- Cliquez sur Accorder.
API REST
databricks api patch \
"/api/2.1/unity-catalog/permissions/model_service/main.default.my_model_service" \
--json '{
"changes": [
{ "principal": "data-team", "add": ["EXECUTE"] }
]
}'
Pour en savoir plus sur l’octroi et la découverte d’accès, voir Découvrir et régir l’accès aux API modèles (services modèles).
Configurer des fonctionnalités sur un service de modèle
Vous configurez des fonctionnalités telles que les limites de débit, la journalisation des inférences et les garde-fous sur le service de modèle à partir de l’interface utilisateur de la passerelle AI Unity, de la même façon que vous les configurez sur un point de terminaison Unity AI Gateway. See:
- Appliquer des limites de taux aux services modèles et MCP
- Requêtes de journal et réponses aux tables d’inférence
Journalisation des inférences
Lorsque vous activez la journalisation de l’inférence, Azure Databricks crée une table de catalogue Unity vide avec un schéma prédéfini à l’emplacement que vous spécifiez. Notez les points suivants :
- Vous devez avoir
USE CATALOG,USE SCHEMAetCREATE TABLEsur le catalogue cible et le schéma. - Le créateur du service de modèles est le propriétaire de la table d’inférence. Aucun autre utilisateur n’a accès, sauf si vous l’accordez.
- Si une table existe déjà à l’emplacement spécifié, la création du service de modèle échoue.
- La table d’inférence a un cycle de vie indépendant du service de modèle. Si vous supprimez la table, le service de modèle continue de fonctionner mais arrête la journalisation.
Pour en savoir plus sur les tables d’inférence, voir Requêtes de journal et réponses aux tables d’inférence.
Mettre à jour un service modèle
Vous devez être propriétaire ou avoir MANAGE.
Interface utilisateur
Modifier la configuration du service de modèles depuis l’interface Unity AI Gateway ou l’Explorateur de catalogue. Les modifications sont appliquées directement.
API REST
databricks api patch \
"/api/2.1/unity-catalog/model-services/main.default.my_model_service?update_mask=comment" \
--json '{"comment": "Updated: routes chat traffic"}'
CLI
databricks ai-gateway update-model-service model-services/main.default.my_model_service comment \
--json '{"comment": "Updated: routes chat traffic"}'
Terraform
Modifie comment (ou tout autre champ changeable) sur la databricks_ai_gateway_model_service ressource et réapplique. Les modifications s’appliquent directement.
Kit de développement logiciel (SDK) Python
from databricks.sdk.service import catalog as c
from google.protobuf.field_mask_pb2 import FieldMask
updated = w.ai_gateway.update_model_service(
name="model-services/main.default.my_model_service",
update_mask=FieldMask(paths=["comment"]),
model_service=c.ModelService(comment="Updated: routes chat traffic"),
)
Kit de développement logiciel (SDK) Go
updated, err := w.AiGateway.UpdateModelService(ctx, catalog.UpdateModelServiceRequest{
Name: "model-services/main.default.my_model_service",
UpdateMask: *fieldmask.New([]string{"comment"}),
ModelService: catalog.ModelService{Comment: "Updated: routes chat traffic"},
})
Kit de développement logiciel (SDK) Java
ModelService updated =
w.aiGateway()
.updateModelService(
new UpdateModelServiceRequest()
.setName("model-services/main.default.my_model_service")
.setUpdateMask(FieldMask.newBuilder().addPaths("comment").build())
.setModelService(
new ModelService().setComment("Updated: routes chat traffic")));
JS SDK
import { modelServiceFieldMask } from '@databricks/sdk-aigateway/v1';
const updated = await client.updateModelService({
modelService: {
name: 'model-services/main.default.my_model_service',
comment: 'Updated: routes chat traffic',
},
updateMask: modelServiceFieldMask('comment'),
});
Supprimer un service de modèle
Vous devez être propriétaire ou avoir MANAGE. Les services de modèles fournis par le système dans system.ai ne peuvent pas être supprimés.
Interface utilisateur
Ouvrez le service de modèles dans l’interface Unity AI Gateway ou l’Explorateur de catalogue et sélectionnez Supprimer dans le menu kebab.
API REST
databricks api delete "/api/2.1/unity-catalog/model-services/main.default.my_model_service"
CLI
databricks ai-gateway delete-model-service model-services/main.default.my_model_service
Terraform
Exécute terraform destroy, ou supprime le bloc de ressources et réapplique.
Kit de développement logiciel (SDK) Python
w.ai_gateway.delete_model_service(name="model-services/main.default.my_model_service")
Kit de développement logiciel (SDK) Go
err := w.AiGateway.DeleteModelService(ctx, catalog.DeleteModelServiceRequest{
Name: "model-services/main.default.my_model_service",
})
Kit de développement logiciel (SDK) Java
w.aiGateway()
.deleteModelService(
new DeleteModelServiceRequest().setName("model-services/main.default.my_model_service"));
JS SDK
await client.deleteModelService({ name: 'model-services/main.default.my_model_service' });