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.
Important
Avertissement d'obsolescence : À partir du 4 décembre 2025, Databricks ne remplit plus automatiquement les tables payload_request_logs et payload_assessment_logs. Ces tables ont été déconseillées.
- Les agents nouvellement déployés via agents.deploy() ne génèrent plus de tables request_logs ou assessment_logs.
- Les anciens request_logs et les tables assessment_logs ne sont plus remplies par Mosaic AI. Vous pouvez créer votre propre table de substitution à l’aide de vues matérialisées. Consultez d’autres solutions pour MLflow 2.
- L’API expérimentale héritée pour la journalisation des commentaires ne sera plus prise en charge pour les agents déployés avec la dernière version des databricks-agents. Utilisez l’API D’évaluations MLflow 3 à la place.
Action requise :
- Recommandé : effectuez une mise à niveau vers MLflow 3 pour utiliser le suivi en temps réel, qui fournit une journalisation unifiée avec de meilleures performances.
- Alternative : si vous devez continuer à utiliser MLflow 2, consultez d’autres solutions pour maintenir l’accès à vos données.
Lorsque vous déployez un agent IA, Databricks crée trois tables d’inférence qui capturent automatiquement les demandes et les réponses à et à partir de votre agent. Ces tables vous aident à surveiller les performances, les problèmes de débogage et à analyser les commentaires des utilisateurs.
| Table d’inférence | Exemple de nom de table Azure Databricks | Contenu de la table |
|---|---|---|
| Charge utile | {catalog_name}.{schema_name}.{model_name}_payload |
Charges utiles brutes de requête et de réponse JSON |
| Journaux des requêtes de charge utile | {catalog_name}.{schema_name}.{model_name}_payload_request_logs |
Demande et réponses mises en forme. Traces MLflow. Dérivé de la table des charges utiles brutes. |
| Journaux d’évaluation de la charge utile | {catalog_name}.{schema_name}.{model_name}_payload_assessment_logs |
Commentaires mis en forme, comme fournis dans l’application Review, pour chaque requête Dérivé de la table des charges utiles brutes. |
- Les données JSON brutes entrent dans la table de charge utile dans un délai d’une heure après la réception d’une demande par votre agent.
- Les tables des journaux de demandes et d'évaluation traitent et mettent en forme les données de la table de charge utile. Cela prend du temps supplémentaire.
- Vous pouvez extraire et traiter manuellement les données de la table de charge utile si nécessaire.
- Les modifications apportées à la table de charge utile (suppressions ou mises à jour) ne sont pas automatiquement synchronisées avec les tables dérivées.
Qu’est-ce qui change ?
Databricks ne remplit plus automatiquement les tables payload_request_logs et payload_assessment_logs.
Ce qui fonctionne toujours : la table brute payload continue de recevoir des données de nouvelles demandes.
Migrer vers MLflow 3 et utiliser le suivi en temps réel pour unifier les journaux d’activité de l’agent
Databricks recommande vivement de migrer des points de terminaison d’agent pour utiliser MLflow 3. Le suivi en temps réel MLflow 3 élimine la nécessité d’avoir des tables distinctes request_logs et assessment_logs en unifiant tous vos journaux d’agent dans un point de traçage unique.
| Observabilité des systèmes hérités | Observabilité MLflow 3 | |
|---|---|---|
| Latence de collecte de données | 1 heure ou plus | <10s |
| Organisation des données | Les traces et les commentaires des utilisateurs (évaluations) sont extraits dans des tables de catalogue Unity distinctes (request_logs et assessment_logs). |
Toutes vos données liées à l’observabilité, telles que les traces, les commentaires et les évaluations, sont facilement accessibles dans la même expérience. |
| Collecte de commentaires | Peu pris en charge. Utilise l’API de rétroaction expérimentale, qui place les données dans la table d’inférence de charge utile. | MLflow 3 fournit des API simplifiées pour l’exécution de l’évaluation, l’étiquetage humain et la gestion des jeux de données d’évaluation. |
| Supervision | Peu pris en charge. L'assistance est limitée à la surveillance héritée désormais déconseillée, qui était limitée aux juges hérités intégrés et au juge des directives héritées, et n’a pas de support de métrique personnalisé. La surveillance héritée s’exécute sur les journaux de requêtes de charge utile, ce qui signifie que les réponses de votre agent mettent plus d'une heure à être évaluées. |
La supervision est intégrée en mode natif à MLflow 3, prenant en charge n’importe quel scoreur :
Inclut les fonctionnalités de remplissage des métriques pour appliquer rétroactivement de nouvelles métriques aux traces historiques. Les traces sont lues à partir de MLflow pour l’évaluation, ce qui réduit la latence de la surveillance à 15 à 30 minutes. |
MLflow 3 attache des évaluations aux traces, puis consigne les traces sur le serveur de traçage MLflow avec des journaux de la charge utile, de réponse et d’étape intermédiaire. Consultez Étiquette pendant le développement et Concepts et Modèle de données.
Étapes de migration
- Mise à niveau vers MLflow 3 : vérifiez que votre agent utilise MLflow 3.1.3 ou version ultérieure. Le suivi est automatiquement activé lorsque vous déployez des agents avec MLflow 3.
# Install prerequisites
%pip install mlflow>=3.1.3
# Restart Python to make sure the new packages are picked up
dbutils.library.restartPython()
- Journaliser votre agent : journaliser l’agent comme vous le feriez normalement, en vous assurant qu’il nécessite MLflow 3.1.3 ou version ultérieure. Ensuite, inscrivez le modèle auprès de l’UC.
# Log your agent
with mlflow.start_run():
logged_agent_info = mlflow.pyfunc.log_model(
name="my_agent",
pip_requirements=[
"mlflow>=3.1.3",
],
...
)
# Register your model to UC
uc_registered_model_info = mlflow.register_model(
model_uri=logged_agent_info.model_uri, name=UC_MODEL_NAME
)
- Déployez votre agent : Déployez l’agent comme vous le feriez normalement. Si vous le souhaitez, définissez votre expérience MLflow avant le déploiement pour contrôler où les traces sont journalisées. Si ce n’est pas le cas, les traces sont enregistrées dans l’expérience MLflow actuellement active.
import mlflow
from databricks import agents
# Set experiment for trace logging
mlflow.set_experiment("/path/to/your/experiment")
# Deploy with automatic tracing
deployment = agents.deploy(uc_model_name, uc_model_info.version)
# Retrieve the query endpoint URL for making API requests
deployment.query_endpoint
Note
MLflow 3 prend actuellement en charge jusqu’à 100 000 traces par point de terminaison de service. Si vous prévoyez d’avoir besoin de limites plus élevées, contactez votre équipe de compte Databricks.
Pour plus d’informations, consultez les agents trace déployés sur Databricks .
Autres options pour continuer à utiliser MLflow 2
Important
Les méthodes alternatives de MLflow 2 ne prennent pas en charge les points de terminaison lorsque la surveillance de l’agent est activée. Si vous utilisez la supervision, vous devez migrer vers MLflow 3 et recréer vos moniteurs en tant que scorers MLflow 3.
Si vous ne pouvez pas effectuer la mise à niveau vers MLflow 3, Databricks continue de remplir la table brute payload . Toutefois, Databricks ne traite plus ces données dans les tables payload_requests_logs et payload_assessment_logs.
Au lieu de cela, Databricks génère des vues sur vos tables de charge utile qui fournissent les mêmes données mises en forme. Vous avez deux options pour accéder à ces données. Utilisez les vues fournies ou créez des vues matérialisées.
Option 1 : Utiliser les vues fournies
La méthode la plus simple consiste à utiliser les vues payload_request_logs_view générées et payload_assessment_logs_view à la place des tables déconseillées.
Ces vues interrogent la table de charge utile pour fournir les mêmes données mises en forme, et elles fonctionnent immédiatement sans configuration requise.
Si vous le souhaitez, renommez les vues pour qu’elles correspondent aux noms de votre table d’origine afin de réduire les modifications de code.
Option 2 : Créer des vues matérialisées
Les vues fournies (payload_request_logs_view et payload_assessment_logs_view) calculent les données en temps réel en interrogeant la table de charge utile. Pour les scénarios nécessitant des tables Delta physiques, telles que la surveillance en temps réel, créez des vues matérialisées à la place.
Exécutez le bloc-notes suivant pour convertir vos vues en vues matérialisées :
Créer des vues matérialisées pour les journaux d’inférence de l’agent
Obtenir un ordinateur portable
Questions fréquemment posées
Que se passe-t-il pour les données dans mes journaux de demande existants et les journaux d’évaluation ?
Les données existantes dans vos tables d’inférence continueront d’être accessibles. Toutefois, après le 4 décembre 2025, aucune nouvelle donnée ne sera remplie dans les tables request_logs et assessment_logs.
Mon déploiement d’agent s’interrompt-il ?
Non, vos anciens déploiements d’agent continuent de fonctionner, et vos tables d’inférence de charge utile continuent d’être remplies. Toutefois, après les dates de suppression, vous ne recevrez pas de données dans les tables request_logs et assessment_logs. Utilisez les vues fournies ou migrez vers MLflow 3 pour conserver des fonctionnalités équivalentes.
Si vous avez besoin d’aide pour la migration, contactez votre équipe du support technique Databricks.