Dela via


Python-API

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

Anteckning

Från och med version 0.17.0 har databricks-feature-store blivit föråldrad. 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änd paket Använda Python-klienten
Databricks Runtime 14.3 ML och senare Unity-katalog 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-katalog databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.2 ML och lägre Arbetsyta databricks-feature-store FeatureStoreClient

Anteckning

  • databricks-feature-engineering<=0.7.0 är inte kompatibelt med mlflow>=2.18.0. Om du vill använda databricks-feature-engineering med MLflow 2.18.0 och senare uppgraderar du till databricks-feature-engineering version 0.8.0 eller senare.

Versionsinformation

Se release-anteckningar om Databricks funktionsteknik och äldre versioner av Workspace Feature Store.

Python API-referens för Feature Engineering

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

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

Anteckning

  • Från och med version 0.17.0 har databricks-feature-store blivit föråldrad. 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 FeatureStoreClient i Feature Engineering Python API-referens för den senaste referens för arbetsytans funktionslager-API.

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

Utgåva Ladda ned PDF Online API-referens
v0.3.5 till v0.16.3 Referens-PDF för Python API 0.16.3 för Funktionsarkiv Online-API-referens
v0.3.5 och lägre Referens-PDF för Feature Store Python API 0.3.5 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.

Funktionsteknik

Anteckning

  • Från och med version 0.2.0 innehåller databricks-feature-engineering moduler för att arbeta med funktionstabeller i både Unity Catalog och Workspace Feature Store. databricks-feature-engineering under 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

Funktionslager för arbetsyta (avvecklad)

Anteckning

  • Från och med version 0.17.0 har databricks-feature-store blivit föråldrad. Alla befintliga moduler från det här paketet är nu tillgängliga i databricks-feature-engineeringversion 0.2.0 och senare.
  • Se Migrera till databricks-feature-engineering för mer information.

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 for Machine Learning. 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. För att använda Arbetsytans funktionslager behöver du använda FeatureStoreClient.

Stödda scenarier

På Databricks, inklusive Databricks Runtime och Databricks Runtime for Machine Learning, kan du:

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

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 Machine Learning. 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.