Delen via


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-engineeringnaar.

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 met mlflow>=2.18.0. Als u databricks-feature-engineering wilt gebruiken met MLflow 2.18.0 en hoger, voert u een upgrade uit naar databricks-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 in databricks-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 in databricks-feature-engineeringversie 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_tablekunt 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.