Functie-engineering en werkruimtefunctiearchief Python-API
Deze pagina bevat koppelingen naar de Python API-documentatie van databricks Feature Engineering en databricks legacy Workspace Feature Store, en informatie over de clientpakketten databricks-feature-engineering
en databricks-feature-store
.
Notitie
Vanaf versie 0.17.0 databricks-feature-store
is afgeschaft. Alle bestaande modules van dit pakket zijn nu beschikbaar in databricks-feature-engineering
versie 0.2.0 en hoger. Zie Migreren naar databricks-feature-engineering voor meer informatie over migreren databricks-feature-engineering
naar.
Compatibiliteitsmatrix
Het pakket en de client die u moet gebruiken, zijn afhankelijk van where uw functie tables zich bevinden en welke Databricks Runtime ML-versie u gebruikt, zoals wordt weergegeven in de volgende table.
Zie de compatibiliteitsmatrix voor feature engineering om de pakketversie te identificeren die is ingebouwd in uw Databricks Runtime ML-versie.
Databricks Runtime-versie | Voor functie tables in | Pakket gebruiken | Python-client gebruiken |
---|---|---|---|
Databricks Runtime 14.3 ML en hoger | Unity-Catalog | databricks-feature-engineering |
FeatureEngineeringClient |
Databricks Runtime 14.3 ML en hoger | Werkplek | databricks-feature-engineering |
FeatureStoreClient |
Databricks Runtime 14.2 ML en hieronder | Unity-Catalog | databricks-feature-engineering |
FeatureEngineeringClient |
Databricks Runtime 14.2 ML en hieronder | Werkplek | databricks-feature-store |
FeatureStoreClient |
Notitie
-
databricks-feature-engineering<=0.7.0
is niet compatibel metmlflow>=2.18.0
. Als udatabricks-feature-engineering
wilt gebruiken met MLflow 2.18.0 en hoger, voert u een upgrade uit naardatabricks-feature-engineering
versie 0.8.0 of hoger.
Opmerkingen bij de release
Zie de -releaseopmerkingen voor Databricks-functie-engineering en de verouderde Werkruimte Feature Store.
Naslaginformatie over Python-API voor functie-engineering
Zie de Naslaginformatie over de Python-API voor Feature Engineering.
Python API-verwijzing voor werkruimtefunctiesarchief (afgeschaft)
Notitie
- Vanaf versie 0.17.0
databricks-feature-store
is afgeschaft. Alle bestaande modules van dit pakket zijn nu beschikbaar indatabricks-feature-engineering
versie 0.2.0 en hoger.
Voor databricks-feature-store
v0.17.0 raadpleegt u Databricks FeatureStoreClient
in Python API-naslaginformatie over feature engineering voor de nieuwste api voor werkruimtefunctiesopslag.
Gebruik voor v0.16.3 en hieronder de koppelingen in de table om de Python API-verwijzing voor de Feature Store te downloaden of weer te geven. Zie de compatibiliteitsmatrix om de vooraf geïnstalleerde versie voor uw Databricks Runtime ML-versie te bepalen.
Versie | PDF dowloaden | Naslaginformatie over online-API |
---|---|---|
v0.3.5 tot v0.16.3 | Python API 0.16.3-verwijzings-PDF voor Feature Store | Naslaginformatie over online-API |
v0.3.5 en lager | Python API 0.3.5-referentie-PDF voor Feature Store | Online-API-verwijzing niet beschikbaar |
Python-pakket
In deze sectie wordt beschreven hoe u de Python-pakketten installeert voor het gebruik van Databricks Feature Engineering en Databricks Workspace Feature Store.
Functie-engineering
Notitie
- Vanaf versie 0.2.0 bevat
databricks-feature-engineering
modules voor het werken met functie-tables in zowel Unity Catalog als Workspace Feature Store.databricks-feature-engineering
onder versie 0.2.0 werkt alleen met functie-tables in Unity Catalog.
De Databricks Feature Engineering-API's zijn beschikbaar via het Python-clientpakket databricks-feature-engineering
. De client is beschikbaar op PyPI en is vooraf geïnstalleerd in Databricks Runtime 13.3 LTS ML en hoger.
Zie de compatibiliteitsmatrix voor een verwijzing naar welke clientversie overeenkomt met welke runtimeversie.
De client installeren in Databricks Runtime:
%pip install databricks-feature-engineering
De client installeren in een lokale Python-omgeving:
pip install databricks-feature-engineering
Werkruimtefunctiearchief (afgeschaft)
Notitie
- Vanaf versie 0.17.0
databricks-feature-store
is afgeschaft. Alle bestaande modules van dit pakket zijn nu beschikbaar indatabricks-feature-engineering
versie 0.2.0 en hoger. - Zie Migreren naar databricks-feature-engineering voor meer informatie.
De Databricks Feature Store-API's zijn beschikbaar via het Python-clientpakket databricks-feature-store
. De client is beschikbaar op PyPI en is vooraf geïnstalleerd in Databricks Runtime voor Machine Learning. Zie de compatibiliteitsmatrix voor een verwijzing van welke runtime welke clientversie bevat.
De client installeren in Databricks Runtime:
%pip install databricks-feature-store
De client installeren in een lokale Python-omgeving:
pip install databricks-feature-store
Migreren naar databricks-feature-engineering
Als u het databricks-feature-engineering
pakket wilt installeren, gebruikt pip install databricks-feature-engineering
u in plaats van pip install databricks-feature-store
. Alle modules zijn databricks-feature-store
verplaatst naar databricks-feature-engineering
, dus u hoeft geen code te wijzigen. Importinstructies zoals from databricks.feature_store import FeatureStoreClient
blijven werken nadat u de installatie hebt uitgevoerd databricks-feature-engineering
.
Als u wilt werken met functie-tables in Unity Catalog, gebruikt u FeatureEngineeringClient
. Als u werkruimtefunctiearchief wilt gebruiken, moet u .FeatureStoreClient
Ondersteunde scenario's
Op Databricks, waaronder Databricks Runtime en Databricks Runtime voor Machine Learning, kunt u het volgende doen:
- Functie maken, lezen en schrijven tables.
- Modellen trainen en beoordelen op functiegegevens.
- Publiceer functie tables in online winkels voor realtime levering.
Vanuit een lokale omgeving of een omgeving buiten Databricks kunt u het volgende doen:
- Ontwikkel code met lokale IDE-ondersteuning.
- Eenheidstest met behulp van mockframeworks.
- Schrijf integratietests die moeten worden uitgevoerd op Databricks.
Beperkingen
De clientbibliotheek kan alleen worden uitgevoerd op Databricks, waaronder Databricks Runtime en Databricks Runtime voor Machine Learning. Het biedt geen ondersteuning voor het aanroepen van Feature Engineering in Unity Catalog- of Feature Store-API's vanuit een lokale omgeving of vanuit een andere omgeving dan Databricks.
De clients gebruiken voor eenheidstests
U kunt de Functie-engineering in Unity Catalog-client of de Feature Store-client lokaal installeren om te helpen bij het uitvoeren van eenheidstests.
Als u bijvoorbeeld wilt controleren of een methode update_customer_features
correct aanroept FeatureEngineeringClient.write_table
(of voor werkruimtefunctiearchief), FeatureStoreClient.write_table
kunt u het volgende schrijven:
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'
)
De clients gebruiken voor integratietests
U kunt integratietests uitvoeren met de Functie-engineering in Unity Catalog-client of de Feature Store-client op Databricks. Zie Hulpprogramma's en richtlijnen voor ontwikkelaars voor meer informatie: CI/CD gebruiken.