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
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 dansdatabricks-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 dedatabricks-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 dansdatabricks-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.