Afficher la traçabilité du magasin de caractéristiques
Quand vous journalisez un modèle avec FeatureEngineeringClient.log_model
, les caractéristiques utilisées dans le modèle sont automatiquement suivies et présentées sous l’onglet Traçabilité de l’Explorateur de catalogues. En plus des tables de caractéristiques, les fonctions Python définies par l’utilisateur utilisées pour calculer les caractéristiques à la demande sont également suivies.
Comment capturer la traçabilité d’une table de caractéristiques, d’une fonction ou d’un modèle
Les informations de traçabilité qui suivent les tables de caractéristiques et les fonctions utilisées dans les modèles sont automatiquement capturées lorsque vous appelez log_model
. Consultez l’exemple de code suivant.
from databricks.feature_engineering import FeatureEngineeringClient, FeatureLookup, FeatureFunction
fe = FeatureEngineeringClient()
features = [
FeatureLookup(
table_name = "main.on_demand_demo.restaurant_features",
feature_names = ["latitude", "longitude"],
rename_outputs={"latitude": "restaurant_latitude", "longitude": "restaurant_longitude"},
lookup_key = "restaurant_id",
timestamp_lookup_key = "ts"
),
FeatureFunction(
udf_name="main.on_demand_demo.extract_user_latitude",
output_name="user_latitude",
input_bindings={"blob": "json_blob"},
),
FeatureFunction(
udf_name="main.on_demand_demo.extract_user_longitude",
output_name="user_longitude",
input_bindings={"blob": "json_blob"},
),
FeatureFunction(
udf_name="main.on_demand_demo.haversine_distance",
output_name="distance",
input_bindings={"x1": "restaurant_longitude", "y1": "restaurant_latitude", "x2": "user_longitude", "y2": "user_latitude"},
)
]
training_set = fe.create_training_set(
label_df, feature_lookups=features, label="label", exclude_columns=["restaurant_id", "json_blob", "restaurant_latitude", "restaurant_longitude", "user_latitude", "user_longitude", "ts"]
)
class IsClose(mlflow.pyfunc.PythonModel):
def predict(self, ctx, inp):
return (inp['distance'] < 2.5).values
model_name = "fe_packaged_model"
mlflow.set_registry_uri("databricks-uc")
fe.log_model(
IsClose(),
model_name,
flavor=mlflow.pyfunc,
training_set=training_set,
registered_model_name=registered_model_name
)
Afficher la traçabilité d’une table de caractéristiques, d’un modèle ou d’une fonction
Pour afficher la traçabilité d’une table de caractéristiques, d’un modèle ou d’une fonction, effectuez les étapes suivantes :
Accédez à la page de la table, de la version du modèle ou de la fonction dans l’Explorateur de catalogues.
Sélectionnez l’onglet Traçabilité. La barre latérale gauche montre les composants d’Unity Catalog qui ont été journalisés avec cette table, cette version de modèle ou cette fonction.
Cliquez sur Afficher le graphique de traçabilité. Le graphique de traçabilité s’affiche. Pour plus d’informations sur l’exploration du graphique de traçabilité, consultez Capturer et explorer la traçabilité.
Pour fermer le graphique de traçabilité, cliquez sur dans le coin supérieur droit.