Associer des tags et des métadonnées personnalisés
Associez des paires clé-valeur aux traces pour l'organisation, la recherche et le filtrage.
Les tags sont modifiables et peuvent être mis à jour après l’enregistrement d’une trace. Utilisez des tags pour les informations dynamiques susceptibles de changer, telles que les commentaires des utilisateurs, l’état de la révision ou les évaluations de la qualité des données.
Les métadonnées sont inscriptibles une seule fois et immuables après l'enregistrement. Utilisez les métadonnées pour les informations fixes capturées pendant l'exécution, telles que la version du modèle, l'environnement ou la configuration du système.
Ce guide vous montre comment définir et gérer les métadonnées et les tags.
API / Méthode | Cas d'usage |
|---|---|
Définir des tags ou des métadonnées sur une trace active lors de l'exécution du code. | |
Définissez ou mettez à jour les tags d'une trace terminée. | |
Interface utilisateur MLflow | Définissez ou mettez à jour les tags d'une trace terminée. |
Prérequis
-
Installer MLflow et les packages requis
Bashpip install --upgrade "mlflow[databricks]>=3.1.0" openai "databricks-connect>=16.1" -
Créez une expérience MLflow en suivant le guide de démarrage rapide de configuration de votre environnement.
Définition des métadonnées sur une trace active
Si vous utilisez le traçage automatique ou les APIs fluides pour créer des traces et que vous souhaitez ajouter des métadonnées à la trace pendant son exécution, vous pouvez utiliser la fonction mlflow.update_current_trace.
Par exemple, l'exemple de code suivant ajoute les métadonnées "model_version": "v1.2.3" à la trace créée pour la fonction my_func :
import mlflow
@mlflow.trace
def my_func(x):
mlflow.update_current_trace(metadata={"model_version": "v1.2.3", "environment": "production"})
return x + 1
my_func(10)
Les métadonnées sont immuables une fois définies. Si vous tentez de mettre à jour les métadonnées avec une clé qui existe déjà, l'opération sera ignorée et la valeur d'origine restera inchangée.
Définir des tags sur une trace active
Si vous utilisez le traçage automatique ou les APIs fluides pour créer des traces et que vous souhaitez ajouter des tags à la trace pendant son exécution, vous pouvez utiliser la fonction mlflow.update_current_trace.
Par exemple, l'exemple de code suivant ajoute l'étiquette "fruit": "apple" à la trace créée pour la fonction my_func :
@mlflow.trace
def my_func(x):
mlflow.update_current_trace(tags={"fruit": "apple"})
return x + 1
my_func(10)
La fonction mlflow.update_current_trace ajoute le(s) tag(s) spécifié(s) à la trace actuelle lorsque la clé n'est pas déjà présente. Si la clé est déjà présente, elle met à jour la clé avec la nouvelle valeur.
Définition des tags sur une trace terminée
Pour définir des tags sur une trace qui a déjà été complétée et journalisée dans le magasin backend, utilisez la méthode mlflow.set_trace_tag pour définir un tag sur une trace,
et la méthode mlflow.delete_trace_tag pour supprimer un tag d'une trace.
import mlflow
# Create and execute a traced function
@mlflow.trace
def process_data(data):
return data.upper()
# Execute the function to create a trace
result = process_data("hello world")
# Get the trace_id from the most recent trace
trace_id = mlflow.get_last_active_trace_id()
# Set a tag on the trace
mlflow.set_trace_tag(trace_id=trace_id, key="review_status", value="approved")
# Set another tag
mlflow.set_trace_tag(trace_id=trace_id, key="data_quality", value="high")
# Delete a tag from the trace
mlflow.delete_trace_tag(trace_id=trace_id, key="data_quality")
Définition des balises à l’aide de l’interface utilisateur MLflow
Alternativement, vous pouvez mettre à jour ou supprimer les tags d'une trace depuis l'interface utilisateur de MLflow. Pour ce faire, accédez à la tab des traces, puis cliquez sur l'icône en forme de crayon à côté de l'étiquette que vous souhaitez mettre à jour.

Ressources supplémentaires
- Ajoutez du contexte aux traces – Suivez les utilisateurs, les sessions, les versions et les environnements dans vos traces
- Rechercher les traces par programme — Filtrer et rechercher les traces à l’aide de balises et de métadonnées