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-engineering
finns 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 idatabricks-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
- 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 idatabricks-feature-engineering
version 0.2.0 och senare. - Mer information finns i Migrera till databricks-feature-engineering .
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
. Om du vill använda Arbetsytans funktionslager måste 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 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 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.