Magasin de fonctionnalités Databricks
Le magasin de fonctionnalités Databricks est un registre central pour les fonctionnalités utilisées dans vos modèles d'IA et de ML. Lorsque vous enregistrez des tables de fonctionnalités et des modèles dans Unity Catalog, vous obtenez une gouvernance intégrée, une traçabilité, des jointures ponctuelles, ainsi que le partage et la découverte de fonctionnalités entre Workspace.
Avec Databricks, l'ensemble du flux de travail d'entraînement des modèles a lieu sur une seule plateforme, y compris :
- Pipelines de données qui ingèrent des données brutes, créent des tables de fonctionnalités, entraînent des modèles et effectuent l'inférence par batch.
- Endpoints de mise en service de modèles et de Feature Serving qui sont disponibles en un seul clic et qui offrent une latence de l'ordre de la milliseconde.
- Monitoring des données et des modèles.
Lorsque vous utilisez les fonctionnalités du Magasin de fonctionnalités Databricks pour entraîner des modèles, le modèle suit automatiquement la traçabilité jusqu'aux fonctionnalités utilisées lors de l'entraînement. Au moment de l'inférence, le modèle recherche automatiquement les dernières valeurs de fonctionnalités. Le Magasin de fonctionnalités Databricks fournit également un calcul à la demande des fonctionnalités pour les applications en temps réel, gérant toutes les tâches de calcul de fonctionnalités. Cela élimine le décalage entre l'entraînement et le service, garantissant que les calculs de fonctionnalités utilisés lors de l'inférence sont les mêmes que ceux utilisés lors de l'entraînement du modèle. Il simplifie également considérablement le code côté client, car toutes les recherches de fonctionnalités et le calcul sont gérés par le Magasin de fonctionnalités Databricks.
Cette page décrit le Magasin de fonctionnalités Databricks pour les Workspace où Unity Catalog est activé. Si votre workspace n'est pas activé pour Unity Catalog, consultez le Magasin de fonctionnalités du Workspace (obsolète).
Présentation conceptuelle
Pour une présentation du fonctionnement du Magasin de fonctionnalités Databricks et d'un glossaire des termes, consultez Présentation et glossaire du Magasin de fonctionnalités Databricks.
Développer des fonctionnalités
Fonctionnalité | Description |
|---|---|
Créez et travaillez avec des tables de fonctionnalités. | |
Définissez et calculez les fonctionnalités d'agrégation temporelles à l'aide des Feature Views. | |
Matérialiser les vues de fonctionnalités pour l'entraînement hors ligne ou le service en ligne. |
Découvrir et partager des fonctionnalités
Fonctionnalité | Description |
|---|---|
Explorer et gérer les tables de fonctionnalités à l'aide de Catalog Explorer et de l'interface utilisateur des fonctionnalités. | |
Utilisez des étiquettes avec les tables de fonctionnalités et les fonctionnalités dans Unity Catalog | Utilisez de simples paires clé-valeur pour catégoriser et gérer vos tables de fonctionnalités et vos fonctionnalités. |
Parcourez les définitions de la vue des fonctionnalités et l'état de matérialisation dans l'interface utilisateur de Databricks. |
Utiliser des fonctionnalités dans les workflows d'entraînement
Fonctionnalité | Description |
|---|---|
Utilisez les fonctionnalités pour entraîner des modèles. | |
Utilisez la justesse temporelle pour créer un dataset d'entraînement qui reflète les valeurs des caractéristiques au moment où une observation d'étiquette a été enregistrée. | |
Référence de l'API Python |
Servir des fonctionnalités
Fonctionnalité | Description |
|---|---|
Servir des données d'entités aux applications en ligne et aux modèles de machine learning en temps réel. Optimisé par Databricks Lakebase. | |
Recherchez automatiquement les valeurs de caractéristiques à partir d'un magasin en ligne. | |
Servez des fonctionnalités à des modèles et des applications en dehors de Databricks. | |
Calculer les valeurs des fonctionnalités au moment de l'inférence. |
Gouvernance des fonctionnalités et traçabilité
Fonctionnalité | Description |
|---|---|
Utilisez Unity Catalog pour contrôler l'accès aux tables de caractéristiques et afficher la lignée d'une table de caractéristiques, d'un modèle ou d'une fonction. |
Didacticiels
Didacticiel | Description |
|---|---|
Notebook de base . Montre comment créer une table de fonctionnalités, l'utiliser pour entraîner un modèle et exécuter un scoring batch en utilisant la recherche automatique de fonctionnalités. Montre également l'interface utilisateur d'ingénierie des fonctionnalités pour rechercher des fonctionnalités et visualiser la lignée. Exemple de notebook de taxi . Présente le processus de création de fonctionnalités, de leur mise à jour et de leur utilisation pour l'entraînement de modèles et l'inférence par batch. | |
Exemple : déployer et interroger un endpoint de Feature Serving | Tutoriel et notebook d'exemple montrant comment déployer et interroger un endpoint de Feature Serving. |
Exemple : utiliser des fonctionnalités avec des applications RAG structurées | Tutoriel montrant comment utiliser les tables en ligne Databricks et les Feature Serving Endpoints pour les applications RAG (Retrieval Augmented Generation). |
Exigences
Pour utiliser le Magasin de fonctionnalités Databricks, votre workspace doit être activé pour Unity Catalog. Si votre workspace n'est pas activé pour Unity Catalog, consultez le Magasin de fonctionnalités du Workspace (obsolète).
Types de données pris en charge
Databricks Magasin de fonctionnalités et le Workspace Feature Store hérité prennent en charge les types de données PySpark suivants :
IntegerTypeFloatTypeBooleanTypeStringTypeDoubleTypeLongTypeTimestampTypeDateTypeShortTypeArrayTypeBinaryType[1]DecimalType[1]MapType[1]StructType[2]
[1] BinaryType, DecimalType et MapType sont pris en charge dans toutes les versions de Feature Data Engineering dans Unity Catalog et dans Workspace Magasin de fonctionnalités v0.3.5 ou supérieur.
[2] StructType est pris en charge dans Feature Engineering v0.6.0 ou supérieur.
Les types de données listés ci-dessus prennent en charge les types de fonctionnalités courants dans les applications de Machine Learning. Par exemple :
- Vous pouvez stocker des vecteurs denses, des tenseurs et des embeddings en tant que
ArrayType. - Vous pouvez stocker des vecteurs, tenseurs et embeddings épars en tant que
MapType. - Vous pouvez stocker du texte en tant que
StringType.
Lorsqu'elles sont publiées dans des boutiques en ligne, les fonctionnalités ArrayType et MapType sont stockées au format JSON.
L'interface utilisateur du Magasin de fonctionnalités affiche les métadonnées sur les types de données de fonctionnalités :

Plus d’informations
Pour plus d'informations sur les meilleures pratiques, download Le guide complet des magasins de fonctionnalités.