Funktionsutveckling och Funktionslager för arbetsyta Python API

Den här sidan innehåller länkar till Python API-dokumentationen för Databricks Feature Engineering och Databricks Workspace Feature Store samt information om klientpaketen databricks-feature-engineering och databricks-feature-store.

Kommentar

Från och med version 0.17.0 databricks-feature-store har inaktuellt. Alla befintliga moduler från det här paketet är nu tillgängliga i databricks-feature-engineering version 0.2.0 och senare. Information om hur du migrerar till databricks-feature-engineeringfinns i Migrera till databricks-feature-engineering.

Kompatibilitetsmatris

Vilket paket och vilken klient du ska använda beror på var dina funktionstabeller finns och vilken Databricks Runtime ML-version du kör, som du ser i följande tabell.

Information om vilken paketversion som är inbyggd i din Databricks Runtime ML-version finns i kompatibilitetsmatrisen för funktionstekniker.

Databricks Runtime-version För funktionstabeller i Använda paket Använda Python-klienten
Databricks Runtime 14.3 ML och senare Unity Catalog databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.3 ML och senare Arbetsyta databricks-feature-engineering FeatureStoreClient
Databricks Runtime 14.2 ML och lägre Unity Catalog databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.2 ML och lägre Arbetsyta databricks-feature-store FeatureStoreClient

Viktig information

Se Viktig information för Databricks funktionsutveckling och äldre funktionsarkiv för arbetsytor.

Referens för Python API för funktionsutveckling

Se referensen för Python API för funktionsutveckling.

Python API-referens för Arbetsytans funktionslager (inaktuell)

Kommentar

  • Från och med version 0.17.0 databricks-feature-store har inaktuellt. Alla befintliga moduler från det här paketet är nu tillgängliga i databricks-feature-engineering version 0.2.0 och senare.

För databricks-feature-store v0.17.0, se Databricks i Funktionsutveckling FeatureStoreClient Python API-referens för den senaste API-referensen för arbetsytans funktionslager.

För v0.16.3 och senare använder du länkarna i tabellen för att ladda ned eller visa Referens för Python API för funktionsarkiv. Information om hur du fastställer den förinstallerade versionen för din Databricks Runtime ML-version finns i kompatibilitetsmatrisen.

Version Ladda ned PDF Api-referens online
v0.3.5 till v0.16.3 Referens-PDF för Python API 0.16.3 för Funktionsarkiv Api-referens online
v0.3.5 och lägre Referens-PDF för Python API 0.3.5 för Funktionsarkiv Online-API-referens är inte tillgänglig

Python-paket

I det här avsnittet beskrivs hur du installerar Python-paketen för att använda Databricks Feature Engineering och Databricks Workspace Feature Store.

Funktionsframställning

Kommentar

  • Från och med version 0.2.0 databricks-feature-engineering innehåller moduler för att arbeta med funktionstabeller i både Unity Catalog och Workspace Feature Store. databricks-feature-engineering nedanstående version 0.2.0 fungerar endast med funktionstabeller i Unity Catalog.

Api:erna för databricks-funktionsutveckling är tillgängliga via Python-klientpaketet databricks-feature-engineering. Klienten är tillgänglig på PyPI och är förinstallerad i Databricks Runtime 13.3 LTS ML och senare.

En referens för vilken klientversion som motsvarar vilken körningsversion finns i kompatibilitetsmatrisen.

Så här installerar du klienten i Databricks Runtime:

%pip install databricks-feature-engineering

Så här installerar du klienten i en lokal Python-miljö:

pip install databricks-feature-engineering

Funktionsarkiv för arbetsyta (inaktuellt)

Kommentar

Api:er för Databricks-funktionslager är tillgängliga via Python-klientpaketet databricks-feature-store. Klienten är tillgänglig på PyPI och är förinstallerad i Databricks Runtime för Mašinsko učenje. En referens för vilken körning som innehåller vilken klientversion finns i kompatibilitetsmatrisen.

Så här installerar du klienten i Databricks Runtime:

%pip install databricks-feature-store

Så här installerar du klienten i en lokal Python-miljö:

pip install databricks-feature-store

Migrera till databricks-feature-engineering

Om du vill installera databricks-feature-engineering paketet använder du pip install databricks-feature-engineering i stället för pip install databricks-feature-store. Alla moduler i databricks-feature-store har flyttats till databricks-feature-engineering, så du behöver inte ändra någon kod. Importinstruktioner som from databricks.feature_store import FeatureStoreClient fortsätter att fungera när du har installerat databricks-feature-engineering.

Om du vill arbeta med funktionstabeller i Unity Catalog använder du FeatureEngineeringClient. Om du vill använda Arbetsytans funktionslager måste du använda FeatureStoreClient.

Stödda scenarier

På Databricks, inklusive Databricks Runtime och Databricks Runtime för Mašinsko učenje, kan du:

  • Skapa, läsa och skriva funktionstabeller.
  • Träna och poängsätta modeller på funktionsdata.
  • Publicera funktionstabeller i onlinebutiker för realtidsservering.

Från en lokal miljö eller en miljö utanför Databricks kan du:

  • Utveckla kod med lokalt IDE-stöd.
  • Enhetstest med hjälp av falska ramverk.
  • Skriv integrationstester som ska köras på Databricks.

Begränsningar

Klientbiblioteket kan bara köras på Databricks, inklusive Databricks Runtime och Databricks Runtime för Mašinsko učenje. Den stöder inte anrop av funktionstekniker i Unity-katalog- eller funktionslager-API:er från en lokal miljö eller från en annan miljö än Databricks.

Använda klienterna för enhetstestning

Du kan installera funktionstekniken i Unity Catalog-klienten eller Funktionsbutiksklienten lokalt för att underlätta körningen av enhetstester.

Om du till exempel vill verifiera att en metod update_customer_features anropar FeatureEngineeringClient.write_table (eller för Workspace Feature Store, FeatureStoreClient.write_table) kan du skriva:

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'
  )

Använda klienterna för integreringstestning

Du kan köra integreringstester med funktionstekniken i Unity Catalog-klienten eller Feature Store-klienten på Databricks. Mer information finns i Utvecklarverktyg och vägledning: Använd CI/CD.