Aller au contenu principal

Analyser le coût de Unity Gateway

Observez et analysez les coûts de tout le trafic Unity Gateway par service de modèle, modèle cible et principal demandeur.

Les administrateurs de compte et de workspace peuvent consulter un aperçu consolidé des dépenses d'IA sur la page IA dans Governance Hub.

remarque

L’observabilité des coûts est basée sur les enregistrements de facturation Databricks. Pour de l’analytique d’utilisation au niveau de la requête telles que le nombre de jetons, la latence, les détails du demandeur et les balises de requête, consultez Suivre l’utilisation du modèle.

Exigences​

Attribution​

Unity Gateway permet l’attribution des coûts via la table système d’utilisation facturable (system.billing.usage).

Unity Gateway enrichit les enregistrements de facturation MODEL_SERVING dans system.billing.usage avec des métadonnées spécifiques au service, afin que vous puissiez attribuer les coûts Databricks aux services, modèles cibles, principaux et tags de service associés. Pour obtenir le schéma complet et les définitions des champs, consultez la référence de la table système de facturation de l'utilisation.

La table système d'utilisation facturable inclut l'attribution des coûts pour les modèles hébergés par Databricks. Pour les dépenses liées aux modèles externes, voir Modèles externes.

Pour les requêtes traitées via un service de modèle Unity Gateway, Databricks renseigne les champs suivants sur les enregistrements MODEL_SERVING dans system.billing.usage:

Champ

Description

usage_metadata.ai_gateway.endpoint_name

Le nom du service de modèle Unity Gateway qui a reçu la requête. Il s'agit du nom entièrement qualifié Unity Catalog, sous la forme <catalog>.<schema>.<modelservice>.

usage_metadata.ai_gateway.endpoint_id

L'ID du service de modèle Unity Gateway.

usage_metadata.ai_gateway.destination_model

Le modèle de destination qui a géré la requête, par exemple GPT-5.2.

usage_metadata.ai_gateway.destination_id

L'ID de la cible qui a traité la requête.

identity_metadata.run_by

L'utilisateur ou le Service Principal Databricks qui a émis la requête.

custom_tags

Tags de service configurés sur le service de modèle Unity Gateway, tels que team ou cost_center.

Champ

Description

usage_metadata.ai_gateway.endpoint_name

Le nom du service de modèle Unity Gateway qui a reçu la requête. Il s'agit du nom entièrement qualifié Unity Catalog, sous la forme <catalog>.<schema>.<modelservice>.

usage_metadata.ai_gateway.endpoint_id

L'ID du service de modèle Unity Gateway.

usage_metadata.ai_gateway.destination_model

Le modèle de destination qui a géré la requête, par exemple GPT-5.2.

usage_metadata.ai_gateway.destination_id

L'ID de la cible qui a traité la requête.

identity_metadata.run_by

L'utilisateur ou le Service Principal Databricks qui a émis la requête.

custom_tags

Tags de service configurés sur le service de modèle Unity Gateway, tels que team ou cost_center.

Unity Gateway renseigne ces champs pour les requêtes d’inférence en temps réel et en batch qui y sont acheminées.

Modèles externes​

Pour les requêtes acheminées vers des modèles externes via les services de fournisseur de modèle dans Unity Catalog, Databricks calcule les dépenses en USD estimées pour chaque requête à partir de son utilisation de jetons et des prix publiés par le fournisseur externe, ajustés par tout multiplicateur de prix configuré sur le service de fournisseur de modèle. Les dépenses sont agrégées toutes les heures et enregistrées dans la table système system.ai_gateway.external_model_spend. Utilisez cette table pour analyser les dépenses en modèles externes par service de fournisseur de modèle, modèle cible et mandant demandeur.

remarque

Le coût des modèles externes est fourni à titre indicatif uniquement. Ces estimations peuvent ne pas refléter la facture finale de votre prestataire, et Databricks décline toute responsabilité en cas d’écarts dans la facturation effectuée par des tiers.

Schéma de dépense du modèle externe​

La table system.ai_gateway.external_model_spend a le schéma suivant :

Nom de colonne

Type

Description

record_id

CHAÎNE

Un identifiant unique pour l'enregistrement des dépenses agrégées.

account_id

CHAÎNE

L'ID du compte.

workspace_id

CHAÎNE

L'identifiant du Workspace où le service de fournisseur de modèle est configuré.

usage_date

Date

La date de l'enregistrement d'utilisation, dérivée de usage_start_time.

usage_start_time

Horodatage

Le start de la fenêtre d'agrégation horaire, en UTC.

usage_end_time

Horodatage

Fin de la fenêtre d'agrégation horaire, en UTC.

ingestion_date

Date

La date à laquelle l'enregistrement a été ingéré dans la table.

usage_metadata

Structure

Métadonnées relatives à l'utilisation du modèle externe, y compris provider, model, endpoint_id, endpoint_name, destination_id et destination_name.

custom_tags

Structure

Étiquettes fournies par l'utilisateur pour l'attribution des coûts, y compris endpoint_tags et request_tags.

usage_unit

CHAÎNE

L'unité de mesure pour usage_quantity. Toujours USD.

usage_quantity

DÉCIMAL

Le coût estimé, en usage_unit, pour la fenêtre d'agrégation.

pricing_metadata

Structure

Métadonnées sur les Tarifs appliqués, y compris service_tier et long_context.

identity_metadata

Structure

Identité du demandeur, y compris run_by et run_as.

Nom de colonne

Type

Description

record_id

CHAÎNE

Un identifiant unique pour l'enregistrement des dépenses agrégées.

account_id

CHAÎNE

L'ID du compte.

workspace_id

CHAÎNE

L'identifiant du Workspace où le service de fournisseur de modèle est configuré.

usage_date

Date

La date de l'enregistrement d'utilisation, dérivée de usage_start_time.

usage_start_time

Horodatage

Le start de la fenêtre d'agrégation horaire, en UTC.

usage_end_time

Horodatage

Fin de la fenêtre d'agrégation horaire, en UTC.

ingestion_date

Date

La date à laquelle l'enregistrement a été ingéré dans la table.

usage_metadata

Structure

Métadonnées relatives à l'utilisation du modèle externe, y compris provider, model, endpoint_id, endpoint_name, destination_id et destination_name.

custom_tags

Structure

Étiquettes fournies par l'utilisateur pour l'attribution des coûts, y compris endpoint_tags et request_tags.

usage_unit

CHAÎNE

L'unité de mesure pour usage_quantity. Toujours USD.

usage_quantity

DÉCIMAL

Le coût estimé, en usage_unit, pour la fenêtre d'agrégation.

pricing_metadata

Structure

Métadonnées sur les Tarifs appliqués, y compris service_tier et long_context.

identity_metadata

Structure

Identité du demandeur, y compris run_by et run_as.

Analyser les dépenses dans le tableau de bord d’utilisation​

Le tableau de bord d’utilisation intégré de Unity Gateway vous aide à identifier les tendances de dépenses, à comparer les modèles et les utilisateurs, et à affecter les dépenses aux équipes et aux projets. Il comprend les dépenses liées aux modèles hébergés par Databricks et les dépenses estimées liées aux modèles externes.

Ouvrez Unity Gateway > Gouvernance > Tableau de bord d’utilisation .

Tab Dépenses de passerelle IA

  • Vue d’ensemble : comparez les dépenses du modèle et de l’utilisateur, suivez les modifications et évaluez les dépenses moyennes par million de jetons ou par requête.
  • Dépenses : explorez les dépenses par modèle et par utilisateur ainsi que l’utilisation des jetons et la mise en cache. Utilisez Répartition des dépenses par utilisateur pour identifier les utilisateurs qui dépensent le plus ainsi que leurs modèles et services les plus coûteux.
  • Tags de service : Appliquez des tags aux services pour attribuer les dépenses aux équipes ou aux projets. Sélectionnez une Clé de tag de service et une ou plusieurs entrées de Valeur de tag de service dans les filtres globaux pour concentrer l’analyse. Dans le Dépenses tab, utilisez Grouper les dépenses par tag de service pour comparer les dépenses entre les valeurs de tag.
  • Tags de requête : Envoyez des tags via les en-têtes de requête pour attribuer les dépenses à des charges de travail individuelles. Dans le Dépenses tab, utilisez Regrouper les dépenses par tag de requête pour comparer les dépenses estimées entre les valeurs des tags de requête.
  • Sessions d’agent de codage : examinez les sessions à forte dépense dans le Agents de codage tab, avec une estimation des dépenses de session ainsi que l’utilisation des jetons, les modèles et l’activité des sous-agents.

Consultez le Tableau de bord d'utilisation intégré pour configurer et mettre à jour le tableau de bord d'utilisation.

Analyse des coûts​

prompt

Genie Code peut faire cela pour vous. Essayez cet exemple de prompt :

Query system.billing.usage to show AI Gateway DBU cost for the past 30 days, broken down by usage_metadata.ai_gateway.endpoint_name, destination model, and requesting user. Filter to MODEL_SERVING records. Show top 10 in each.

Modèles hébergés par Databricks​

Les requêtes suivantes analysent le coût des modèles hébergés par Databricks dans system.billing.usage. Le coût peut être décomposé par service de modèle, modèle cible et principal.

Par service de modèle

SQL
SELECT
usage_metadata.ai_gateway.endpoint_name AS endpoint_name,
SUM(usage_quantity) AS dbus
FROM system.billing.usage
WHERE billing_origin_product = 'MODEL_SERVING'
AND usage_metadata.ai_gateway.endpoint_name IS NOT NULL
AND usage_unit = 'DBU'
AND usage_date >= current_date() - INTERVAL 30 DAYS
GROUP BY endpoint_name
ORDER BY dbus DESC;

Par modèle de destination

SQL
SELECT
usage_metadata.ai_gateway.destination_model AS destination_model,
SUM(usage_quantity) AS dbus
FROM system.billing.usage
WHERE billing_origin_product = 'MODEL_SERVING'
AND usage_metadata.ai_gateway.endpoint_name IS NOT NULL
AND usage_unit = 'DBU'
AND usage_date >= current_date() - INTERVAL 30 DAYS
GROUP BY destination_model
ORDER BY dbus DESC;

Par utilisateur ou Service Principal Databricks

SQL
SELECT
identity_metadata.run_by AS run_by,
SUM(usage_quantity) AS dbus
FROM system.billing.usage
WHERE billing_origin_product = 'MODEL_SERVING'
AND usage_metadata.ai_gateway.endpoint_name IS NOT NULL
AND identity_metadata.run_by IS NOT NULL
AND usage_unit = 'DBU'
AND usage_date >= current_date() - INTERVAL 30 DAYS
GROUP BY run_by
ORDER BY dbus DESC;

Modèles externes​

Les requêtes suivantes analysent les dépenses des modèles externes dans system.ai_gateway.external_model_spend. Les dépenses peuvent être ventilées par service de fournisseur de modèle, modèle cible et balises de requête.

Par service de fournisseur de modèle

SQL
SELECT
usage_metadata.endpoint_name AS model_provider_service,
SUM(usage_quantity) AS usd
FROM system.ai_gateway.external_model_spend
WHERE usage_start_time >= current_timestamp() - INTERVAL 30 DAYS
GROUP BY model_provider_service
ORDER BY usd DESC;

Par modèle de destination

SQL
SELECT
usage_metadata.model AS destination_model,
SUM(usage_quantity) AS usd
FROM system.ai_gateway.external_model_spend
WHERE usage_start_time >= current_timestamp() - INTERVAL 30 DAYS
GROUP BY destination_model
ORDER BY usd DESC;

Par utilisateur ou Service Principal Databricks

SQL
SELECT
identity_metadata.run_by AS run_by,
SUM(usage_quantity) AS usd
FROM system.ai_gateway.external_model_spend
WHERE usage_start_time >= current_timestamp() - INTERVAL 30 DAYS
GROUP BY run_by
ORDER BY usd DESC;

Par étiquette de demande

Pour attacher des tags de requête à vos requêtes, consultez la section Balisage des requêtes.

SQL
SELECT
custom_tags.request_tags['team'] AS team,
SUM(usage_quantity) AS usd
FROM system.ai_gateway.external_model_spend
WHERE usage_start_time >= current_timestamp() - INTERVAL 30 DAYS
GROUP BY team
ORDER BY usd DESC;

Limitations​

  • L'attribution des dépenses pour les modèles hébergés par Databricks s'applique à MODEL_SERVING enregistrements dans system.billing.usage.
  • Pour les services de modèles avec plusieurs destinations, tels que la répartition du trafic ou les fallbacks, ai_gateway.destination_model et ai_gateway.destination_id identifient la destination qui a finalement servi la requête.
  • La dépense de modèle externe n'est prise en charge que pour les services de fournisseur de modèles dans Unity Catalog.
  • Le suivi des dépenses pour les modèles externes n'est actuellement pas pris en charge pour le fournisseur personnalisé . Databricks estime les dépenses à partir des prix publiés de chaque fournisseur, qui ne sont pas disponibles pour les endpoints personnalisés.