Partager via


Ingénierie de caractéristiques et API Python du Feature Store de l’espace de travail

Cette page fournit des liens vers la documentation de l’API Python Databricks Feature Engineering et Databricks Workspace Feature Store, ainsi que des informations sur les packages clients databricks-feature-engineering et databricks-feature-store.

Remarque

Depuis la version 0.17.0, databricks-feature-store est déconseillé. Tous les modules existants de ce package sont désormais disponibles dans databricks-feature-engineering versions 0.2.0 et ultérieures. Pour plus d’informations sur la migration vers databricks-feature-engineering, consultez Migrer vers databricks-feature-engineering.

Matrice de compatibilité

Le package et le client que vous devez utiliser dépendent de l’emplacement de vos tables de caractéristiques et de la version de Databricks Runtime ML que vous exécutez, comme indiqué dans le tableau suivant.

Pour identifier la version du package intégrée à votre version de Databricks Runtime ML, consultez la matrice de compatibilité de Feature Engineering.

Version de Databricks Runtime Pour les tables de caractéristiques dans Utiliser le package Utiliser le client Python
Databricks Runtime 14.3 ML et versions ultérieures Unity Catalog databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.3 ML et versions ultérieures Espace de travail databricks-feature-engineering FeatureStoreClient
Databricks Runtime 14.2 ML et versions antérieures Unity Catalog databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.2 ML et versions antérieures Espace de travail databricks-feature-store FeatureStoreClient

Notes de publication

Consultez Notes de publication de l’ingénierie de caractéristiques et du magasin de caractéristiques d’espace de travail hérité Databricks.

Informations de référence sur l’API Python Feature Engineering

Consultez les informations de référence sur l’API Python Feature Engineering.

Informations de référence sur l’API Python Workspace Feature Store (déconseillée)

Remarque

  • Depuis la version 0.17.0, databricks-feature-store est déconseillé. Tous les modules existants de ce package sont désormais disponibles dans databricks-feature-engineering versions 0.2.0 et ultérieures.

Pour databricks-feature-store v0.17.0, consultez Databricks FeatureStoreClient dans les informations de référence sur l’API Python Feature Engineering pour obtenir les dernières informations sur l’API Workspace Feature Store.

Pour v0.16.3 et versions antérieures, utilisez les liens du tableau pour télécharger ou afficher les informations de référence sur l’API Python Feature Store. Pour déterminer la version préinstallée de votre version Databricks Runtime ML, consultez la matrice de compatibilité.

Version Télécharger le PDF Référence sur les API en ligne
v0.3.5 vers v0.16.3 Fichier PDF de référence sur l’API Python Feature Store 0.16.3 Référence sur les API en ligne
v0.3.5 et versions antérieures PDF de référence de l’API Python du Magasin de caractéristiques 0.3.5 Référence sur les API en ligne non disponible

Paquet Python

Cette section explique comment installer les packages Python pour utiliser Databricks Feature Engineering et Databricks Workspace Feature Store.

Ingénierie des caractéristiques

Remarque

  • À compter de la version 0.2.0, databricks-feature-engineering contient des modules permettant d’utiliser des tables de caractéristiques dans Unity Catalog et Workspace Feature Store. Les versions de databricks-feature-engineering antérieures à 0.2.0 fonctionnent uniquement avec les tables de caractéristiques dans Unity Catalog.

Les API Databricks Feature Engineering sont disponibles via le package client Python databricks-feature-engineering. Le client est disponible sur PyPI, et il est préinstallé dans Databricks Runtime 13.3 LTS ML et versions ultérieures.

Pour savoir quelle version du client correspond à quelle version du runtime, consultez la matrice de compatibilité.

Pour installer le client dans Databricks Runtime :

%pip install databricks-feature-engineering

Pour installer le client dans un environnement Python local :

pip install databricks-feature-engineering

Workspace Feature Store (déconseillé)

Remarque

  • Depuis la version 0.17.0, databricks-feature-store est déconseillé. Tous les modules existants de ce package sont désormais disponibles dans databricks-feature-engineering versions 0.2.0 et ultérieures.
  • Pour plus d’informations, consultez Migrer vers databricks-feature-engineering.

Les API Databricks Feature Store sont disponibles via le package client Python databricks-feature-store. Le client est disponible sur PyPI et est préinstallé dans Databricks Runtime pour Machine Learning. Pour savoir quel runtime inclut quelle version du client, consultez la matrice de compatibilité.

Pour installer le client dans Databricks Runtime :

%pip install databricks-feature-store

Pour installer le client dans un environnement Python local :

pip install databricks-feature-store

Migrer vers databricks-feature-engineering

Pour installer le package databricks-feature-engineering, utilisez pip install databricks-feature-engineering au lieu de pip install databricks-feature-store. Tous les modules de databricks-feature-store ont été déplacés vers databricks-feature-engineering. Vous n’avez donc pas besoin de modifier le code. Les instructions d’importation telles que from databricks.feature_store import FeatureStoreClient continueront de fonctionner après l’installation de databricks-feature-engineering.

Pour utiliser des tables de caractéristiques dans Unity Catalog, utilisez FeatureEngineeringClient. Pour utiliser Workspace Feature Store, vous devez utiliser FeatureStoreClient.

Scénarios pris en charge

Sur Databricks, notamment Databricks Runtime et Databricks Runtime pour Machine Learning, vous pouvez :

  • Créer, lire et écrire des tables de caractéristiques.
  • Entraîner et noter des modèles sur les données des caractéristiques.
  • Publier des tables de caractéristiques dans des magasins en ligne pour un déploiement en temps réel.

À partir d’un environnement local ou d’un environnement externe à Databricks, vous pouvez :

  • Développer du code avec prise en charge de l’IDE local.
  • Test unitaire à l’aide de frameworks fictifs.
  • Écrire des tests d’intégration à exécuter sur Databricks.

Limites

La bibliothèque cliente ne peut être exécutée que sur Databricks, notamment Databricks Runtime et Databricks Runtime pour Machine Learning. Il ne prend pas en charge l’appel des API Feature Engineering dans Unity Catalog ou Feature Store à partir d’un environnement local ou d’un environnement autre que Databricks.

Utiliser les clients pour les tests unitaires

Vous pouvez installer localement le client Feature Engineering dans Unity Catalog ou le client Feature Store pour faciliter l’exécution de tests unitaires.

Par exemple, pour vérifier qu'une méthode update_customer_features appelle correctement FeatureEngineeringClient.write_table (ou pour Espace de travail Feature Store, FeatureStoreClient.write_table), vous pouvez écrire :

from unittest.mock import MagicMock, patch

from my_feature_update_module import update_customer_features
from databricks.feature_engineering import FeatureEngineeringClient

@patch.object(FeatureEngineeringClient, "write_table")
@patch("my_feature_update_module.compute_customer_features")
def test_something(compute_customer_features, mock_write_table):
  customer_features_df = MagicMock()
  compute_customer_features.return_value = customer_features_df

  update_customer_features()  # Function being tested

  mock_write_table.assert_called_once_with(
    name='ml.recommender_system.customer_features',
    df=customer_features_df,
    mode='merge'
  )

Utiliser les clients pour les tests d'intégration

Vous pouvez exécuter des tests d'intégration avec le client Feature Engineering dans Unity Catalog ou le client Feature Store sur Databricks. Pour plus d’informations, consultez Outils et conseils de développement : utiliser CI/CD.